Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/19.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python透视表groupby或转置/取消堆栈_Python_Python 3.x_Pandas_Pandas Groupby_Pivot Table - Fatal编程技术网

Python透视表groupby或转置/取消堆栈

Python透视表groupby或转置/取消堆栈,python,python-3.x,pandas,pandas-groupby,pivot-table,Python,Python 3.x,Pandas,Pandas Groupby,Pivot Table,嗨,我有一个数据框在上面,票证到达时间,看起来像这样 Feedback time time hour Shift 0 12/2/20 23:58 2020-12-02 23:58:00 23 Shift 3 1 12/2/20 10:20 2020-12-02 10:20:00 10 Shift 1 2 12/2/20 11:40 2020-12-02 11:40

嗨,我有一个数据框在上面,票证到达时间,看起来像这样

   Feedback time          time               hour       Shift   
0   12/2/20 23:58   2020-12-02 23:58:00      23     Shift 3 
1   12/2/20 10:20   2020-12-02 10:20:00      10     Shift 1 
2   12/2/20 11:40   2020-12-02 11:40:00      11     Shift 1 
....
458 11/18/20 16:01  2020-11-18 16:01:00      16     Shift 2 
最早的日期是2020年11月18日,最晚的日期是2020年12月2日

而“转移”的定义是

conditions = [(df['hour'] >= 7) & (df['hour'] < 15),
    (df['hour'] >= 15) & (df['hour'] < 23),
    (df['hour'] < 7) | (df['hour'] >= 23)]
基本上,列是按周分组的,索引是班次,然后是白天的小时。 对于xx,我想计算上午7点间隔内“小时”的频率,对整个星期求和,然后得到整个星期的平均值(本例中为11/18-11/25),还需要它填充所有空单元格

我试过这个

s = pd.pivot_table(df,index=['Shift',"Hour"],columns =['Time'] ,values = ['hour'],aggfunc=[len])
但我的第一行只显示每天,而不是按周汇总

非常感谢你

s = pd.pivot_table(df,index=['Shift',"Hour"],columns =['Time'] ,values = ['hour'],aggfunc=[len])