检查pandas df中的列值是否在列表中

泰勒

我已经初始化了一个包含以下值的列表:

list = ['Umbrella', 'Umbrella'].

我也有一个4列的数据框。我想启动一个条件IF / else语句,如果列A的值在列表中,那么我希望它执行求和运算。

df = pd.DataFrame({'Date':['10/2/2011', '11/2/2011', '12/2/2011', '13/2/2011'], 
               'Product':['Umbrella', 'Umbrella', 'Badminton', 'Shuttle'], 
               'Last Price':[1200, 1500, 1600, 352], 
               'Updated Price':[1250, 1450, 1550, 400], 
               'Discount':[10, 10, 10, 10]}) 

''''但是我尝试了以下代码,但是没有用:

if df['Product'].isin(list):
    Cumulative_Spend = df.groupby('Product')['Last Price'].sum()  
else:
    Calibrated = df.groupby('Product')['Last Price'].sum()

如果条件满足(在初始化的列表中),我想汇总每个项目的“最后价格”的总和,如果条件不满足,那么我想获取该项目的“最后价格”值并将其存储在其他列表中称为校准。

千千

您快到这里了,有两件事:您需要过滤而不是if,并且在第二个中需要tail而不是sum,这里是:

import pandas as pd

l = ['Umbrella', 'Umbrella']

df = pd.DataFrame({'Date':['10/2/2011', '11/2/2011', '12/2/2011', '13/2/2011'], 
           'Product':['Umbrella', 'Umbrella', 'Badminton', 'Shuttle'], 
           'Last Price':[1200, 1500, 1600, 352], 
           'Updated Price':[1250, 1450, 1550, 400], 
           'Discount':[10, 10, 10, 10]}) 

Cumulative_Spend = df[df['Product'].isin(l)].groupby('Product')['Last Price'].sum() 
Calibrated = df[~df['Product'].isin(l)].groupby('Product')['Last Price'].tail(1)

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

检查pandas中的元组列是否包含列表中的某些值

检查df2中的datetime列的值是否在R中的df1的datateime值之内

Pandas Dataframe检查列值是否在列列表中

检查Pandas列值是否不在列表中

检查列值是否存在于字典[pandas]中

如何从字符串列表中检查Pandas列是否具有值?

熊猫:从列列表中检查df中是否存在列

Python-检查df2列中是否存在df1列中的值

检查两个不同列中df中的两个值是否存在于不同df中?

检查pandas dataframe列中的值是否为整数,如果不是,则将其写入列表

Python Pandas DataFrame检查一列的值是否在另一列表中

如何检查列表中是否存在日期以更改列的值?

如何检查pandas数据框中的列的值是否大于上述值。如果该列的值作为列表

pandas:从一个df中搜索包含列表的另一个df列中的列值

检查pandas df中的值是否在第二个df列的列表内

Pandas:检查 A 列中的值是否在 B 列中的值列表中的有效方法

在 Python/Pandas 中,检查逗号分隔的字符串是否包含列表中的任何值

检查pandas df中列表中任何列名对之间的差异是否大于3

检查二维列表(列表列表)的特定列中是否存在值

如何检查列表值是否存在于也是列表的列值中

如何检查pandas df中的单个值

如何在 Pandas (Python) 中检查列是否包含列表?

如何根据另一列中的值检查 pandas df 列值是否存在?

Python Pandas:检查列表中的项目是否在 df 索引中,其中 df 是多索引 df

需要拆分并检查列表元素在pandas df 中是否可用

迭代每个 Pandas df 行并确定行值是否在列表中,如果是,则将该值拉入 df

迭代df的行并检查行中是否有任何值具有“列表”类型

检查来自不同列表的元素是否在 df 列中并附加到另一列

检查字符串子集是否在列表中的列值中,并在 pandas 的新列中分配值