特定字符串前面的熊猫过滤

时间:2018-07-27 06:20:29

标签: python string pandas filter

enter image description here

您在黄色栏中看到的(col name ='식품이름') 有些有@,有些没有。 我想删除~~ @,仅保留最后的单词。 所以,我的编码就像

import pandas as pd 
pr1 = pd.read_csv('D:\\py_project\\.vscode\\wdata.csv', encoding='utf-8')

for i in pr1['식품이름']:
        if '@' in i:
            i = i.split('@')[-1]

但是问题是我该如何编辑和应用真实文件。 如果我打印,效果很好,但是没有保存在原始文件中。 我该怎么解决?

1 个答案:

答案 0 :(得分:0)

我认为条件不是必需的,请通过索引将str.split与选择的最后一个字符串一起使用:

pr1 = pd.DataFrame({'식품이름':[' ~~@text','ssds','wew@efs']})

print (pr1)
       식품이름
0   ~~@text
1      ssds
2   wew@efs

pr1['new'] =  pr1['식품이름'].str.split("@").str[-1]
print (pr1)
       식품이름   new
0   ~~@text  text
1      ssds  ssds
2   wew@efs   efs