index date miles
0 7/8/2015 14:00:00 10
1 7/8/2015 15:00:01 2
2 7/8/2015 16:00:01 5
3 7/9/2015 09:00:02 12
4 7/10/2015 12:00:00 4
5 7/11/2015 11:00:00 25
6 7/12/2015 04:34:33 10
7 7/12/2015 05:35:35 22
8 7/12/2015 23:11:11 14
9 7/13/2015 01:00:23 10
10 7/13/2015 03:00:03 2
我要将此表放在后面;
7/8/2015 17
7/9/2015 12
7/10/2015 4
7/11/2015 25
7/12/2015 46
7/13/2015 12
我如何在python中制作类似的东西?按日期分组以获取每天的里程数
答案 0 :(得分:0)
@Valentino提到:
data = {
'date': ['7/8/2015 14:00:00', '7/8/2015 14:00:00', '7/8/2015 14:00:00', '7/9/2015 14:00:00'],
'miles': [10, 2, 5, 12]
}
df = pandas.DataFrame(data)
df['date'] = pandas.to_datetime(df.date)
df['date'] = df['date'].dt.strftime('%m/%d/%Y')
print(df)
Out:
date miles
0 7/8/2015 10
1 7/8/2015 2
2 7/8/2015 5
3 7/9/2015 12
print(df.groupby('date').sum())
Out:
date miles
7/8/2015 17
7/9/2015 12
答案 1 :(得分:0)
如果您询问在一行中添加同一天的里程的解决方案,一种方法是使用(for循环)遍历所有日期,然后将等于或基本相同的所有日期添加到变量,然后打印每一行
答案 2 :(得分:0)
使用resample:
df.set_index('date', inplace=True)
ddf = df.resample('1D').sum()
resample
需要一个日期时间索引,因此您需要先将索引设置为'date'
。
如果您输入的示例是df
,则ddf
将显示为:
miles
date
2015-07-08 17
2015-07-09 12
2015-07-10 4
2015-07-11 25
2015-07-12 46
2015-07-13 12