我有一个名为dailyHistogram的数据框定义如下:
dailyHistogram = pd.DataFrame({'NumVisits':[[0 for x in range(1440)] for y in range (180)], 'DoW': [0]*ReportingDateRange.size } ,columns=['NumVisits','DoF'], index=ReportingDateRange)
其中NumVisits是一个二维数组(1440乘180),并在180天内保存一些活动的直方图。 DoW只是一个包含星期几的专栏。 此数据框中的索引是活动发生的日期。
我的问题是在dailyHistogram [“NumVisits”]上执行任何操作。
这就是dailyHistogram [“NumVisits”]的样子:
> dailyHistogram["NumVisits"]
> Out[193]:
> 2016-01-01 [5, 0, 0, 0, 0,
> 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, ...
>
> 2016-01-02 [2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, ...
>
> 2016-01-03 [6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, ...
>
> 2016-01-04 [8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, ...
>
> 2016-06-26 [3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, ...
>
> 2016-06-27 [4, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, ...
>
> 2016-06-28 [7, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, ...
>
> 2016-06-29 [7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, ...
>
> 2016-06-30 [4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, ...
>
> Freq: D, Name: NumVisits, dtype: object
我想在一周中的特定日期总结“NumVisits”中的所有向量,但是在dailyHistogram [“NumVisits”]
上似乎没有可能的算术运算答案 0 :(得分:2)
这是因为NumVisits
是一个列表,并且要对列表的内容执行算术运算,您需要显式应用您的函数。例如:
df['NumVisits'].apply(sum)
对于每行中的元素和:
import numpy as np
df['NumVisits'].apply(np.cumsum)
对于所有行的总和,对于行中的每个元素:
np.array(dailyHistogram['NumVisits'].tolist()).sum(axis=0)