Pandas选择并写入包含特定文本的行

时间:2015-06-18 20:38:35

标签: python pandas

我想只保留包含"col"列中特定文本的数据框中的行。在此示例中,"WORD1""WORD2"

df = df["col"].str.contains("WORD1|WORD2")
df.to_csv("write.csv")

这会返回TrueFalse。但是如何让它写出与这些critera匹配的整行,而不仅仅是出现布尔值?

1 个答案:

答案 0 :(得分:4)

返回的是一个布尔系列,用于过滤df:

df = df[df["col"].str.contains("WORD1|WORD2")]

然后你可以照常写出来:

df.to_csv("write.csv")

示例:

In [14]:    
df = pd.DataFrame({'col':['word', 'WORD1', 'WORD2', 'WORD3']})
df

Out[14]:
     col
0   word
1  WORD1
2  WORD2
3  WORD3

In [15]:    
df[df['col'].str.contains('WORD1|WORD2')]

Out[15]:
     col
1  WORD1
2  WORD2