首页 > 解决方案 > 从熊猫df中的特定值返回系列

问题描述

我正在尝试返回一个系列,其中包含来自 pandas 中特定值的一些添加df。具体来说,df如下。我想X's用所有的Y's. 但是,这些没有任何特定的顺序。

import pandas as pd

d = ({
    'Item' : ['X','Y','Z','X','Z','Y','Z'],                                     
    'Value' : [10,11,20,21,10,30,31],                                     
     })

df = pd.DataFrame(data=d)

Xs = df.loc[df['Item'] == 'X', 'Value']
Ys = df.loc[df['Item'] == 'Y', 'Value']

Out = Xs + Ys

预期输出:

21
51

标签: pythonpandasdataframe

解决方案


我更喜欢@jezrael 的答案,但我想分享我的想法。

Xs = df.loc[df['Item'] == 'X', 'Value'].tolist()
Ys = df.loc[df['Item'] == 'Y', 'Value'].tolist()

Out = pd.Series(list(map(sum, zip(Xs, Ys))))

print(Out)

推荐阅读