python实习作业三

#作业三   
import pandas as pd                         #加载包,简写pd
#读取数据
path1=r'C:\Users\Administrator\Desktop\作业\作业2\prec.csv'      #python里面反斜杠是转义字符,前面加r负责报错不认为是路径
path2=r'C:\Users\Administrator\Desktop\作业\作业2\Temp.txt'
path3=r'C:\Users\Administrator\Desktop\作业\作业2\excel作业2.xlsx'      #存储路径
f1=pd.read_csv(path1,index_col=0)            #csv以,为分隔符   #以站号(第0列)作为行标签
f2=pd.read_csv(path2,sep='\s+',index_col=0)      #txt一般以空格为分隔符,但不一定是一个空格,改成‘\s+’表示多个空格或一个空格

#删除重复数据行!!!!!!!!!!!!!
newDF = f1.drop_duplicates()    
newDF = f2.drop_duplicates()

#groupby根据列站点和日期,对数据重新分组聚合,简便计算。但此时为series类型,用.to_frame()转换为dataframe
#日降水量 
dayrain=f1.groupby(['Station_Id_C','Day'])['PRE_1h'].sum().to_frame()   #日降水对于小时来说是求和sum不是平均mean
#日最高温
daymaxT=f2.groupby(['Station_Id_C','Day'])['TEM_Max'].max()
#日最低温
dayminT=f2.groupby(['Station_Id_C','Day'])['TEM_Min'].min()
#日平均温(日最高与最低的平均值)
daymeanT=(daymaxT+dayminT)/2
daymeanT=daymeanT.to_frame()
#series计算后再转换,df不能计算
daymaxT=daymaxT.to_frame()
dayminT=dayminT.to_frame()
#数据合并
f3=pd.concat([daymaxT,dayminT,daymeanT,dayrain, ],axis=1, ignore_index=False)
f3.columns=['Tmax','Tmin','Tmean','Psum']    #.name是列的属性名,不是每列名字
#数据写入
f3.to_excel(path3) 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值