gpt4 book ai didi

Python - data.to_csv 输出格式

转载 作者:行者123 更新时间:2023-12-01 09:22:53 32 4
gpt4 key购买 nike

来自具有以下格式的 csv 文件:

Date,Data
01-01-01,111
02-02-02,222
03-03-03,333

我使用以下代码计算值的月平均值:

data = pd.read_csv("input.csv")
data['Month'] = pd.DatetimeIndex(data.reset_index()['Date']).month
mean_data = data.groupby('Month').mean()

然后我使用以下命令输出 csv 文件:

mean_data.to_csv("test.csv")

它工作正常并给我以下输出:

Month,Data
01,01
02,02
03,03
04,04
...

但现在我想知道月平均计算中包含了多少数据。为此我改变了:

mean_data = data.groupby('Month').mean()

作者:

mean_data = data.groupby(['Month']).agg(['mean', 'count'])

但是现在问题来了。当我想输出 csv 时,我现在有一个奇怪的格式,如下所示:

      Data,Data,
mean,count,
Month,
01, 01,8,
02, 02,9,
03, 03,7,
04, 04,5,

这并不是很方便。相反,我想要以下输出:

Month,Mean,Count
01,01,8
02,02,9
03,03,7
04,04,5

有人知道如何实现这一目标吗?

最佳答案

需要在groupby之后指定列:

#convert first column to datetime
data = pd.read_csv("input.csv", parse_dates=[0])
<小时/>
df['Month'] = df['Date'].dt.month
mean_data = data.groupby('Month')['Data'].agg(['mean', 'count'])

应该简化:

mean_data = data.groupby(df['Date'].dt.month)['Data'].agg(['mean', 'count'])

关于Python - data.to_csv 输出格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50679638/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com