在python中,如果一列作为无传递,如何对数据帧中的列求和
将两列(品牌和国家)相加以获得KPi值在python中,如果一列作为无传递,如何对数据帧中的列求和,python,python-3.x,pandas,Python,Python 3.x,Pandas,将两列(品牌和国家)相加以获得KPi值 data['kpi'][(data.brand=='ABC')&(data.country为无)].sum()这给了我0 我希望上面的一行等于下面的一行,而下面的一行又给出了答案 data['kpi'][(data.brand=='ABC')].sum() 表达式data.country为None只生成一个boolFalse值,而不是所需的逻辑向量。可以预期表达式data.country==None可以工作,但由于某些原因(我不知道),它不适用于pand
data['kpi'][(data.brand=='ABC')&(data.country为无)].sum()
这给了我0
我希望上面的一行等于下面的一行,而下面的一行又给出了答案
data['kpi'][(data.brand=='ABC')].sum()
表达式
data.country为None
只生成一个bool
False
值,而不是所需的逻辑向量。可以预期表达式data.country==None
可以工作,但由于某些原因(我不知道),它不适用于pandas.DataFrame
列(它生成所有False
值的向量,而不管None
项)。我发现有效的是表达式
data.country.isnull()
,I。e、 :
data['kpi'][(data.brand=='ABC') & data.country.isnull()].sum()
建议的解决方案不等于data['kpi'][(data.brand=='ABC')].sum()。因为目标是基于品牌“ABC”的kpi值总和,不包括国家/地区values@athiq-对不起,我不明白你的意思。您应该指定一些示例数据。