我有一系列数据框。
ind = [78, 87, 677, 900]
df = pd.Series(data = [pd.DataFrame(np.arange(12).reshape(3, 4), index = [0, 1, 2], columns = ['a', 'b', 'c', 'd']) for _ in range(4)],
index = ind)
该系列中的每个df如下:
df[78]:
a b c d
0 0 1 2 3
1 4 5 6 7
2 8 9 10 11
我想在本系列的b列和索引0以及c列和索引2中获得前3个df的总和,并制作一个新的df 所以预期的输出将是
sum:
a b c d
0 0 3 2 3
1 4 5 6 7
2 8 9 30 11
我还想获得另一个df,它是df中所有值的序列中前三个df的总和。
sum_full:
a b c d
0 0 3 6 9
1 12 15 18 21
2 24 27 30 33
我不确定如何基于索引对系列进行子集化,并且仅获得两个值的总和。
答案 0 :(得分:0)
尝试一下:
pd.concat(df.head(3).tolist()).sum(level=0)
输出:
a b c d
0 0 3 6 9
1 12 15 18 21
2 24 27 30 33