3 回答

TA贡献1797条经验 获得超4个赞
与其删除包含其他字母的行,不如应用一个函数来获取包含' GA' 的行:
new = df[df['Campaign'].apply(lambda x: 'GA' in x)]

TA贡献1810条经验 获得超4个赞
这里的假设是对于所有相关行,GA
是在句子的开头。Pandas str startswith可以在这里提供帮助:
df.loc[df.Campaign.str.startswith("GA")]
Date Campaign
0 3/24/20 GA Shoes Search Campaign
1 3/24/20 GA Shoes Display Campaign
2 3/24/20 GA Bag Search Campaign
3 3/24/20 GA Bag Display Campaign
但是,如果GA可能嵌入在句子中而不是在最开头,那么如果您提供与此类似的数据将会很有帮助。这样,就可以确定它GA是在单词中,还是单独存在,或者其他什么,并希望找到适合的解决方案

TA贡献1775条经验 获得超8个赞
设置示例数据框
如果你有一个数据框:
df = pd.DataFrame({'x': ['A0', 'A1', 'B2', 'A3'],
'y': ['B0', 'B1', 'B2', 'B3'],
'z': ['A0', 'C1', 'C2', 'C3'],
'w': ['D0', 'D1', 'D2', 'D3']},
index=[0, 1, 2, 3])
看起来像:
假设您要创建包含A
在 column 中的那些行x
。
方法
str.contains
:
你可以做:
df[df['x'].str.contains('A')]
列表理解
df[['A' in each for each in df['x']]]
就足够了。
apply()
:
如果你喜欢apply()
,可以这样做:
df[df['x'].apply(lambda x: 'A' in x)]
结果
所有这些方法都会给你:
最后说明 更一般地说:
方法
str.contains
:
df[df[name_of_column_which_should_contain_something].str.contains(what_should_it_contain)]
列表理解方法:
df[[what_to_search_for in each for each in df[whichcolumn]]]
方法
apply()
:df[df[which_column_to_search_in].apply(lambda x: what_to_search_for in x)]
添加回答
举报