Python 3.x Erro按时间日期分组
我有一个样本数据集,有两列:日期和评估,如下所示:Python 3.x Erro按时间日期分组,python-3.x,mean,pandas-groupby,Python 3.x,Mean,Pandas Groupby,我有一个样本数据集,有两列:日期和评估,如下所示: eVal Dates 0 3.622833 2015-01-01 1 3.501333 2015-01-01 2 3.469167 2015-01-01 3 3.436333 2015-01-01 4 3.428000 2015-01-01 5 3.400667 2015-01-01 6 3.405667 201
eVal Dates
0 3.622833 2015-01-01
1 3.501333 2015-01-01
2 3.469167 2015-01-01
3 3.436333 2015-01-01
4 3.428000 2015-01-01
5 3.400667 2015-01-01
6 3.405667 2015-01-01
7 3.401500 2015-01-01
8 3.404333 2015-01-01
9 3.424833 2015-01-01
10 3.489500 2015-01-01
11 3.521000 2015-01-01
12 3.527833 2015-01-01
13 3.523500 2015-01-01
14 3.511667 2015-01-01
15 3.602500 2015-01-01
16 3.657667 2015-01-01
17 3.616667 2015-01-01
18 3.534500 2015-01-01
19 3.529167 2015-01-01
20 3.548167 2015-01-01
21 3.565500 2015-01-01
22 3.539833 2015-01-01
23 3.485667 2015-01-01
24 3.493167 2015-01-02
25 3.434667 2015-01-02
26 3.422500 2015-01-02
... ...
3304546 3.166000 2015-01-31
3304547 3.138500 2015-01-31
3304548 3.128000 2015-01-31
3304549 3.078833 2015-01-31
3304550 3.106000 2015-01-31
3304551 3.116167 2015-01-31
3304552 3.087500 2015-01-31
3304553 3.089167 2015-01-31
3304554 3.126667 2015-01-31
3304555 3.191667 2015-01-31
3304556 3.227500 2015-01-31
3304557 3.263833 2015-01-31
3304558 3.263667 2015-01-31
3304559 3.255333 2015-01-31
3304560 3.265500 2015-01-31
3304561 3.234167 2015-01-31
3304562 3.231167 2015-01-31
3304563 3.236333 2015-01-31
3304564 3.274667 2015-01-31
3304565 3.223167 2015-01-31
3304566 3.238333 2015-01-31
3304567 3.235000 2015-01-31
3304568 3.227333 2015-01-31
3304569 3.185333 2015-01-31
我想按天进行汇总,并对每天进行平均(列评估)。我试图使用:
me = time['eVal'].groupby(time['Dates']).mean()
但它返回了错误的值平均数:
me.head(10)
Out[149]:
Dates
2015-01-01 4.014973
2015-01-02 4.006548
2015-01-03 4.010406
2015-01-04 4.034531
2015-01-05 3.988262
2015-01-06 3.972111
2015-01-07 3.989347
2015-01-08 3.959556
2015-01-09 3.995394
2015-01-10 4.048786
Name: eVal, dtype: float64
如果我在groupby上应用了description,groupby group就不正确了。价值观个别天数的最大值和最小值、平均值都是错误的。您可以使用下面的代码行 time.groupby('Dates').mean() 我已经在你的样品上试过了,下面是样品输出
eVal Dates
2015-01-01 3.506160
2015-01-02 3.450111
很抱歉,在我的情况下,这个功能不起作用。我的df的长度
长度(时间)超出[7]:3304570
。似乎我计算了df总数的描述性统计数据(最小值、最大值和平均值),而不是每天。如果我将前24行(第一天)放在另一个df中,函数工作正常。您可以检查您的数据框是否只有“2015-01-01”的24条记录吗?