使用Pandas更改csv中的确切值

时间:2016-08-22 18:31:16

标签: python pandas

我有一个类似于此的CSV文件:

id | item_name1             | item_name2
--------------------------------------------------
 1 | unclassified           | text
 2 | SantaCruz unclassified | text
 3 | text                   | text
 4 | texttext               | text
 5 | unclassified           | text
 6 | unclassified text      | unclassified
 7 | text                   | unclassified text
 8 | text                   | text
 9 | text                   | text
.. | ..                     | ..
1000 | unclassified text    | text

我试图擦除所有只说“未分类”的细胞;即,诸如“SantaCruz未分类”的细胞应该保持不变。

我发现很多使用replace函数删除特定单词的示例,但没有找到任何只替换完全匹配的单元格的示例。

我正在使用Pandas,并且能够打开csv,打印等,但是我无法解决这个特定的问题。任何帮助将不胜感激!

由于

1 个答案:

答案 0 :(得分:1)

pandas.Series.str.replace可以将regex作为参数。假设字符串中没有前导和尾随空格"未分类"要替换的是,正则表达式应为^unclassified$

df['item_name1'].str.replace('^unclassified$', 'replaced_string')

0           replaced_string
1    SantaCruz unclassified
2                      text
3                  texttext
4           replaced_string
5         unclassified text
6                      text
7                      text
8                      text
9         unclassified text
Name: item_name1, dtype: object