【发布时间】:2021-06-08 01:26:49
【问题描述】:
如果可能的话,我很想知道如何在不使用 for 循环的情况下优化此代码。我要做的是对 df['Состояние'] 系列中的所有值进行分类,逐一查看列表 list_rep 和 list_dem 中的关键词。谢谢!
conditions = ['a','b']
list_rep = ['a1','a2']
list_dem = ['b1','b2']
for i in list_rep:
df['Состояние'] = [conditions[0] if i in str(x).lower() else x for x in df['Состояние']]
for i in list_exp:
df['Состояние'] = [conditions[1] if i in str(x).lower() else x for x in df['Состояние']]
for i in conditions:
df['Состояние'] = [i if i in str(x).lower() else x for x in df['Состояние']]
df['Состояние'] = [x if x in conditions else '-' for x in df['Состояние']]
【问题讨论】:
-
您能否添加一些具有预期输出的数据样本 - 5-6 行?
-
我希望得到一个值为 'a'、'b' 或 '-' 的系列。
-
我的解决方案效果如何?
标签: python python-3.x pandas loops for-loop