📚 Big Data Programming

There are 6 BDP homeworks.

第一次作业: 数据处理基础操作一

Due: 2025-06-20 active

Exercise Requirements

  1. 创建数组[0 1 2 3 4 5 6 7 8 9],并将该数组中的奇数全部都替换成-1。
  2. 创建一个4行4列的随机数组,并取出该数组的对角线上所有的元素形成一个一维数组。
  3. 取出数组[1 2 3 4 5 6 7 8 9 10 11 12 13 14 15]中大于等于5并小于等于10的元素作为一维数组返回。
  4. 将数组 a = np.random.rand(3,5)b = np.random.rand(6,4) 叠加在一起,其中ab的上面,并且在b的第2列(下标从0开始)新增一列,用0来填充。
  5. 创建一个4行6列的随机数组,并取出该数组第1,2,4列上的所有元素。
  6. 创建一个8行9列的随机数组,并取出该数组第1-5行(包括第5行)的第8列内大于的所有大于3的元素。
  7. 创建一个8行9列的随机数组,按如下要求分别取出该数组中的元素:
    • 取出第1行和第3行的数据
    • 取出第1行到第3行的数据
    • 取出前4列的数据
    • 取出该数组的(0, 0)、(1, 2)、(3, 5)位置上的元素值

第二次作业:数据处理基础二

Due: 2025-06-20 active

Exercise Requirements

  1. 创建一个所有值都是False的布尔型数组(shape自定义)。
  2. 对数组data1 = np.arange (10)进行形状转换(转换后的shape自定义)。
  3. 将数组data2 = np.random.randint(0, 10 , size=(4, 5))中所有偶数都替换成0(改变原来数组和不改变原来数组两种方式实现)。
  4. 将二维数组data3 = np.arange(24).reshape(4, 6)的行和列分别进行逆向(即,反转行,反转列)。
  5. 求数组data4 = np.arange(16)中大于等于5并且小于等于10的元素。
  6. 获取数组data5 = np.random.randint(0, 20, size=(4, 5))中每个元素值出现的次数的排行。
  7. 找到数组data6 = np.random.randint(0, 20, size=(4, 5))中每行的最大值。
  8. 求数组data7 = np.random.randint(0, 20, size=(4, 5))中每行最小值与最大值相除的结果。
  9. 判断下面两个数组是否完全相等。
    • 数组1: data8 = np.random.randint(0, 20, size=(4, 5))
    • 数组2: data9 = np.random.randint(0, 20, size=(4, 5))
  10. 创建一个包含10个元素的1维数组,元素值是0到1之间的随机数(不包含0和1)。
  11. 完成下列关于Series的练习
    1. 用下表中数据创建Series对象(对象名为“score”,索引名为class)
    2. 查看1-5班的数据
    3. 查看哪个班级的平均成绩还没有录入
    4. 获取全年级的平均成绩(空值做0分处理)
    5. 由于参考答案有误,现在要给每位同学的成绩加上2分
    6. 找出平均成绩在90分以上的班级
  1 2 3 4 5 6 7 8 9 10 11 12
class 90 95 85 78 NAN 96 97 NAN 80 87 86 83
  1. 完成下列关于DataFrame的练习
    1. 根据下表创建DataFrame对象(列表和字典各用一种实现)
    2. 对创建的DataFrame进行转置
    3. 由于体育老师生病,导致大家的体育成绩没有录入,请删除改列数据
    4. 学校发现遗漏了“科学”课的成绩,请为学生添加“科学”成绩。学生的成绩为(97,87,78,76,84,88,91)
  姓名 语文 数学 英语 体育
1 张三 89 59 84 0
2 李四 78 83 97 0
3 王五 79 85 88 0
4 小明 89 92 83 0
5 小红 90 67 67 0
6 小刚 87 81 73 0
7 小亮 83 77 71 0
  1. 用pandas读取lianjia.csv,完成下列操作
    1. 观察结构,调整列索引顺序(Region, Garden, Layout, Floor, ID, Year, Size, Elevator, Direction, Renovation, Price)
    2. 增加一列关于目前状况(状况:state,可以使用1代表售出,0代表未售出)
    3. 删除ID这一列无用的数据
    4. 查找楼层(floor)小于7的所有房屋
    5. 修改楼层小于7的房源的电梯状态,统一改成无电梯,反之就设为有电梯

第三次作业: 数据可视化练习

Due: 2025-06-20 active

Exercise Requirements

  1. 折线图练习
    1. 读取长沙市某年5月份的气温数据(changsha.csv),按照时间顺序绘制成折线图
    2. “highest”为当天最高气温,”lowest”为当天最低气温
    3. 使用圆点表示数据点
    4. x轴是是时间,y轴是温度,要求图中有具体刻度
    5. x轴的标题是”时间(天)”,y轴的标题是”气温(摄氏度)“
    6. 图标题是”长沙5月份气温走势“图
  2. 柱状图练习
    1. 读取三类学校(普通本科、中等职业教育、普通高中)2014-2018年间的招生数据(enrollment.csv),绘制柱状图。
    2. x轴是年份,y轴是当年的招生人数(万人)。
    3. 按年份进行分组绘制,同一年份的放在一个组。
    4. 要求绘制图例,图例横向排列(提示:使用legend的ncol参数,具体用法自行查Matplotlib官网)
    5. 图标题是”2014-2018普通本科、中等职业教育、普通高中招生人数“
  3. 直方图练习
    1. 读取scores.csv,绘制直方图。
    2. 读取csv文件之后生成DataFrame对象。
    3. 绘制其中历史成绩(“history”)的直方图。
    4. 标记x轴的坐标。
    5. 每个柱面上方显示处于该区间内成绩数量。
    6. 图标题是”x班历史成绩直方图“。
  4. 散点图练习
    1. 分别读取4个城市的二手车数据(bj.csvsh.csvgz.csvsz.csv),将其归档到同一个DataFrame中。
    2. 计算车辆的使用年份和保值率,并在DataFrame新增对应的字段存储数据。
    3. 使用年份=当前时间-购买时间
    4. 保值率=二手车价格 / 新车价格
    5. 绘制使用年份与保值率的散点图,观察并简单分析其分布特征。
    6. 绘制行驶距离与保值率的散点图,观察并简单分析其分布特征。
  5. 饼图练习
    1. 将下边的数据绘制成饼图。
    2. 设置阴影效果
    3. 将Chrome对应分块从饼图中分离出来,距离设为0.05。
    4. 设置显示分块占比信息,保留两位小数。
    5. 占比信息以白色文字显示,分块名以黑色文字显示。
    6. 将Edge和Safari的占比的字体大小设置为10,其余为12.
Chrome Internet Explorer FireFox Edge Safari 其他浏览器
0.6098 0.1218 0.1147 0.0415 0.0372 0.075
  1. 箱线图练习
    1. 读取“scores.csv”中的数据绘制成箱线图。
    2. 同一张图上每个科成绩对应一个箱线。
    3. 观察所绘制的箱线图,简单分析一下。

第四次作业: 综合实战一

Due: 2025-06-20 active

Exercise Requirements

  1. 综合实战一:airbnb挖掘
    • 数据类型转换
    • 分别针对“定价数据”、“评论数据”、“空间数据”、“入住数据”进行相关统计
    • 异常数据处理
    • 特征抽取、预处理、选择
    • 对“评论数”、“价格”、“评论数”预测
    • 相关结果可视化

第五次作业: 集成学习练习

Due: 2025-06-20 active
  1. 用集成学习方法检测信用卡欺诈

第六次作业: 综合实战练习二

Due: 2025-06-20 active

Exercise Requirements

  1. 综合实战一:科学吃鸡
    • 查看并处理缺失值
    • 数据集内存压缩
    • 异常数据处理
    • 计算是否具有吃鸡特性
    • 寻找吃鸡概率最高的队友
    • 射击距离与抢的选择
    • 移动距离与吃鸡的分布
  2. 综合实战二:理性消费
    • 查看并处理缺失值
    • 数据集内存压缩
    • 异常数据处理
    • 分析每个人的消费情况
    • 性别与婚姻状况的分布与购买
    • 年龄和产品购买信息挖掘
    • 产品销售情况分析
    • 城市与购买力之间的分析
    • 相同产品在不同城市的购买力分析