python - lambda函数中的“isin”不起作用吗?
问题描述
我不能isin
在 lambda 函数中使用 a 吗?例如
mylist = ["A", "B", "C"]
df["Col2"] = df["Col1"].apply(lambda x: 1 if x.isin(mylist) else 0)
我得到了一个,AttributeError: 'str' object has no attribute 'isin'
但以下过滤器有效:
df[df["Col1"].isin(mylist)]
解决方案
使用in
运算符。
替换x.isin(mylist)
为x in mylist
如下:
df["Col2"] = df["Col1"].apply(lambda x: 1 if x in mylist else 0)
推荐阅读
- python - 如何使用 bs4 获取 html 的内容
- javascript - 选择物理单选按钮时,警报提示中不会显示任何值
- encryption - 端到端加密静态网站内容
- python - Python lowriter 调用获得与终端不同的结果
- lammps - Windows 10 AMMPS 更改 DocumentRoot
- google-apps-script - 谷歌表格自动过滤器
- c - 给定时间戳,批量混合音频。多个偏移,只有两个声音。如何有效地做到这一点?
- plsql-psp - 带有大小写条件的 pl/sql 日期过滤器
- javascript - 无法按整数值对对象数组进行排序
- python - 在文件中看不到 csv 文件(从 df 转换而来)