【发布时间】:2022-01-25 01:50:33
【问题描述】:
我有以下信息。
假设我有以下列表。
my_list = [2,3,4,5]
我的数据框如下:
df
Col1 Value
[2,3,6] Hot
[7] Mild
[10,11] Cool
[5,9] Cool
[2,5,6] Mild
我想检查列表 my_list 中的一个值是否存在于列 Col1 中。如果存在,则将相应行的Value列中的值更改为Mild。但如果值为Hot,请保持原样。
我希望看到类似下面的内容。
Col1 Value
[2,3,6] Hot
[7] Mild
[10,11] Cool
[5,9] Mild
[2,5,6] Mild
我只是在寻找一个简单的脚本,它可以迭代并检查每一行,并在对应行的另一列中更改一个值。
我试过了。
df["Value"] =(d["Value"].apply(lambda x: "Mild" if len(set(x["Col1"]).intersection(my_list)) >0
and (x["Value"] != 'Hot') else x["Value"],axis=1) )
有人可以帮忙吗?
【问题讨论】:
标签: pandas