根据索引子集一系列熊猫df

时间:2019-11-19 16:00:14

标签: python pandas dataframe

我有一系列数据框。

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

我不确定如何基于索引对系列进行子集化,并且仅获得两个值的总和。

1 个答案:

答案 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