我有一个.csv文件,从这个文件中,我按年份对它进行分组,这样它就给出了最大值、最小值和平均值
import pandas as pd
DF = pd.read_csv("PJME_hourly.csv")
for i in range(2002,2019):
neblina = DF[DF.Datetime.str.contains(str(i))]
dateframe = neblina.agg({"PJME_MW" : ['max','min','mean']})
print(i , pd.concat([dateframe],axis=0,sort= False))
他的产出如下:
2002 PJME_MW
max 55934.000000
min 19247.000000
mean 31565.617106
2003 PJME_MW
max 53737.000000
min 19414.000000
mean 31698.758621
2004 PJME_MW
max 51962.000000
min 19543.000000
mean 32270.434867
我想知道如何将所有操作都合并到一个列中(PJME_MW),但每个操作组(max、min、mean)都是由对应的年份确定的
如果转换日期^{} ,可以使用^{} 访问器对其进行分组:
玩具示例:
可以对代码进行优化,但现在如何工作,请更改代码的这一部分:
用这个代替
编辑:连接形式已更改
最终编辑:对不起,我不理解整个问题。您不需要
groupby
函数之后的代码相关问题 更多 >
编程相关推荐