Python 带频率的数据帧
我有一个数据框,我计划用它来构建柱状图 数据框包含以下值Python 带频率的数据帧,python,pandas,Python,Pandas,我有一个数据框,我计划用它来构建柱状图 数据框包含以下值 starttime hour 1 7/01/2015 0 2 7/01/2015 0 3 7/01/2015 3 4 7/01/2015 3 5 7/01/2015 12 我想要得到结果数据帧 starttime hour frequency 1 7/01/2015 0 2 2 7/01/2015 3
starttime hour
1 7/01/2015 0
2 7/01/2015 0
3 7/01/2015 3
4 7/01/2015 3
5 7/01/2015 12
我想要得到结果数据帧
starttime hour frequency
1 7/01/2015 0 2
2 7/01/2015 3 2
3 7/01/2015 12 1
我到目前为止所做的事情
df_values = Df[['starttime','hour']]
values = df_values.groupby(['starttime'])
grouped = values.aggregate(np.sum)
我得到的输出
hour
starttime
6/01/2015 0000000000000000000000000000000000000000000000...
6/02/2015 0000000000000000000000000000000000000000000000...
6/03/2015 0000000000000000000000000000000000000000000000...
6/04/2015 NaN
6/05/2015 435211
非常感谢您的帮助。谢谢。df['freq']=1
df.groupby(['starttime','hour',as_index=False]).count()
df['freq']=1
df.groupby(['starttime','hour',as_index=False]).count()
使用groupby
+size
/count
-
c = df.columns.tolist() # c = ['starttime', 'hour']
df.groupby(c).size().reset_index(name='frequency')
或者
使用
groupby
+size
/count
-
c = df.columns.tolist() # c = ['starttime', 'hour']
df.groupby(c).size().reset_index(name='frequency')
或者
如果要绘制直方图,请使用
df.groupby(['starttime','hour']).size().reset_index(name='freq')
,可能重复。pandas还具有.hist()
函数。我认为您需要首先导入matplotlib
,然后它类似于df['hour'].hist()
使用df.groupby(['starttime','hour']).size().reset_index(name='freq')
,可能是重复的。如果您想绘制直方图,熊猫还有一个.hist()
函数。我认为您需要首先导入matplotlib,然后类似于df['hour'].hist()
您的答案不起作用。你至少在发布之前运行过这个吗?你是对的,谢谢@cᴏʟᴅsᴘᴇᴇᴅ! 我从来没有考虑过没有额外的列来计数或应用另一个聚合函数,看起来非常直截了当!现在更新。是的,我看到了。很好,保持最低限度!不需要工作(我只是指出了你最初的错误,那就是“提供反馈”,没有工作。享受投票吧;)我很感激!让我了解了如何按数据帧的所有列进行分组。嘿,我需要投票人!我只有1K,要达到65K还有很长的路要走你的答案不起作用。你至少在发布之前运行过这个吗?你是对的,谢谢@cᴏʟᴅsᴘᴇᴇᴅ! 我从来没有考虑过没有额外的列来计数或应用另一个聚合函数,看起来非常直截了当!现在更新。是的,我看到了。很好,保持最低限度!不需要工作(我只是指出了你最初的错误,那就是“提供反馈”,没有工作。享受投票吧;)我很感激!让我了解了如何按数据帧的所有列进行分组。嘿,我需要投票人!我只在1K,到65K还有很长的路要走
starttime hour frequency
0 7/01/2015 0 2
1 7/01/2015 3 2
2 7/01/2015 12 1