概述
我希望创建一个新列,以防某个字符串是另一列的子字符串.假设我有一个带有一列df [‘A’]的DataFrame:
A
0 bbh AA chd
1 d10 DKL BB
2 kj AAdbl 5
3 kBB d7d dl
和一份清单:
check = ['AA', 'BB']
现在我想创建列df [‘B’],如果在df [‘A’]中找到它们,它将接管列表中的值:
A B
0 bbh AA chd AA
1 d10 DKL BB BB
2 kj AAdbl 5 AA
3 kBB d7d dl BB
如何在循环列表(实际上变得比两个项目更大)或应用函数时完成此任务?
解决方法:
尝试使用iterrows遍历行并检查行是否包含检查列表中的任何元素,然后将其放入新列中.
for idx, row in df.iterrows():
for c in check:
if c in row['A']:
df.ix[idx, 'B'] = c
输出:
df
Out[16]:
A B
0 bbh AA chd AA
1 d10 DKL BB BB
2 kj AAdbl 5 AA
3 kBB d7d dl BB
只有一点点困惑:如果df包含AA和BB怎么办?在这种情况下,我可能需要根据您希望如何定义输出行为来修改我的代码.
标签:python,loops,vectorization,pandas
最后
以上就是耍酷彩虹为你收集整理的python怎么用pandas查找指定字符串_python – pandas:找到部分字符串并在新列中使用它...的全部内容,希望文章能够帮你解决python怎么用pandas查找指定字符串_python – pandas:找到部分字符串并在新列中使用它...所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复