Python 对嵌套数据框中的列表元素进行垂直求和
我有一个名为dailyHistogram的数据帧,定义如下:Python 对嵌套数据框中的列表元素进行垂直求和,python,pandas,Python,Pandas,我有一个名为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 )
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 x 180),保存180天内某些活动的直方图。道琼斯指数只是一个列,用来记录一周中的某一天。此数据框中的索引是活动发生的日期
我的问题是在dailyHistogram[“NumVisits”]上执行任何操作
以下是dailyHistogram[“NumVisits”]的外观:
每日直方图[“NumVisits”]
Out[193]:2016-01-01 [5, 0, 0, 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,0,0 2016-01-03[6,0,0,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,0,0 2016-06-26[3,0,0,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,1,1 2016-06-28[7,0,0,1,1,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,0,0 2016-06-30[4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 频率:D,名称:NumVisits,数据类型:object 我想对dailyHistogram[“NumVisits”]的每个元素进行垂直汇总,得出一个包含1440个成员的列表。试试以下方法:
In [84]: dailyHistogram
Out[84]:
NumVisits DoF
0 [1, 0, 1, 1, 1, 1, 0, 1, 1, 1] NaN
1 [1, 1, 0, 1, 0, 1, 0, 0, 1, 0] NaN
2 [1, 0, 0, 0, 0, 1, 1, 0, 1, 0] NaN
3 [0, 1, 0, 0, 0, 0, 0, 0, 1, 1] NaN
4 [1, 1, 0, 0, 1, 1, 1, 1, 1, 0] NaN
In [85]: dailyHistogram.NumVisits.apply(pd.Series).sum().tolist()
Out[85]: [4, 3, 1, 2, 2, 4, 2, 2, 5, 2]
设置:
dailyHistogram = pd.DataFrame({'NumVisits':[[np.random.choice([0,1]) for x in range(10)]
for y in range (5)],
'DoW': [0]*5}
,columns=['NumVisits','DoF'])
试试这个:
In [84]: dailyHistogram
Out[84]:
NumVisits DoF
0 [1, 0, 1, 1, 1, 1, 0, 1, 1, 1] NaN
1 [1, 1, 0, 1, 0, 1, 0, 0, 1, 0] NaN
2 [1, 0, 0, 0, 0, 1, 1, 0, 1, 0] NaN
3 [0, 1, 0, 0, 0, 0, 0, 0, 1, 1] NaN
4 [1, 1, 0, 0, 1, 1, 1, 1, 1, 0] NaN
In [85]: dailyHistogram.NumVisits.apply(pd.Series).sum().tolist()
Out[85]: [4, 3, 1, 2, 2, 4, 2, 2, 5, 2]
设置:
dailyHistogram = pd.DataFrame({'NumVisits':[[np.random.choice([0,1]) for x in range(10)]
for y in range (5)],
'DoW': [0]*5}
,columns=['NumVisits','DoF'])
我在你的上一个问题中回答了这个问题。这是的副本。我在你的上一个问题中回答了这个问题。这是的副本。