dhu 数据科学与技术 第4次作业

9 篇文章 5 订阅

一. 简答题(共2题,100分)

  1. (简答题)
    数据清洗和填充

    1)从studentsInfo.xlsx 文件的“Group1”表单中读取数据;

    2)将“案例教学”列数据值全改为NaN;

    3)滤除每行数据中缺失3项以上(包括3项)的行;

    4)滤除值全部为NaN的列;

    5)使用列的平均值填充“体重”和“成绩”列的NaN数据;

    6)使用上一行数据填充“年龄”列的NaN数据;

    7)使用“中位数”填充“生活费用”NaN数据。

studentsInfo.xlsx

import numpy as np
import pandas as pd
from pandas import Series,DataFrame

# 1)
dT = pd.read_excel('C:\\python\\studentsInfo.xlsx','Group1',index_col=0)
print(dT)

# 2)
dT['案例教学'] = np.nan
print(dT)

# 3)
dT=dT.dropna(thresh=7)
print(dT)

# 4)
dT=dT.dropna(axis=1,how='all')
print(dT)

# 5)
dT.fillna({'体重': dT['体重'].mean(),'成绩': dT['成绩'].mean() },inplace=True)
print(dT)

# 6)
dT['年龄'].fillna(method='ffill',inplace=True)
print(dT)

# 7)
dT.fillna({'年龄':dT['年龄'].median()},inplace=True)
print(dT)
  1. (简答题)
    数据合并与排序

1)从studentsInfo.xlsx的“Group3”页读取数据,将序号、性别、年龄项保存到data1对象;

2)从studentsInfo.xlsx的“Group3”页读取数据,将序号、身高、体重、成绩项保存到data2对象;

3)将data2合并到data1中,连接方式为内连接。

4)按月生活费对数据升序排序;

5)按身高对数据降序排名,并列取值方式设置为min。

import numpy as np
import pandas as pd
from pandas import Series,DataFrame

# 1)
data = pd.read_excel('C:\\python\\studentsInfo.xlsx','Group3',index_col=None)
data1 = data.loc[:,['序号','性别','年龄']]
print(data1)

# 2)
data2 = data.loc[:,['序号','身高','体重','成绩']]
print(data2)

# 3)
data1=pd.merge(data1,data2,how='inner')
print(data1)

# 4)
data3=data.sort_values(by='月生活费',ascending=True)
print(data3)

# 5)
data['身高并列']=data['身高'].rank(ascending=True,method='min')
data4=data.sort_values(by='身高并列',ascending=False)
data4=data4.drop('身高并列',axis=1)
print(data4)
  • 0
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值