我要删除列Copy 1
中包含copy_nb
的每一行:
我像这样尝试了熊猫Series.str.contains
的简单功能:
df=df[~df.copy_nb.str.contains("Copy 1", na=False)]
不幸的是,它正在删除包含Copy 1
以及Copy 10
,Copy 11
等的列。
这是我要清除的数据框的示例:
答案 0 :(得分:0)
您可以选择行copy_nb不等于值“ Copy 1”的行,如下例所示:
import numpy as np
import pandas as pd
df = pd.DataFrame({
"copy_nb": [np.nan, np.nan, "Copy 1", "Copy 2"],
"other_column": [1, 2, 3, 4]
})
print(df)
df_copy1_removed = df.loc[df.copy_nb != "Copy 1", :] # Here the selection happens
print(df_copy1_removed)
答案 1 :(得分:0)
尝试以下操作:
df[~df['copy_nb'].fillna('').str.contains('Copy 1')]