我有一个数据框,我想在所有列中搜索文本“ Apple”的值。我知道如何使用一个列,但是如何将其应用于所有列?我想使其成为一个函数,以便下次可以直接使用它来搜索其他日期框架中的其他值。
谢谢。
答案 0 :(得分:0)
采用单一方法所具有的功能,并将其包含在for循环中。
for column in df:
#your code here
答案 1 :(得分:0)
类似这样的东西:
In [1188]: df
Out[1188]:
id name n1
0 1 Zeke may
1 2 Apple maya
2 3 a Apple
3 4 Maya a
4 5 Derek Mayank
5 6 an is
6 7 the the
只需检查一下即可:
In [1190]: df[df == 'Apple']
Out[1190]:
id name n1
0 NaN NaN NaN
1 NaN Apple NaN
2 NaN NaN Apple
3 NaN NaN NaN
4 NaN NaN NaN
5 NaN NaN NaN
6 NaN NaN NaN
OR
In [1191]: df.where(df == 'Apple')
Out[1191]:
id name n1
0 NaN NaN NaN
1 NaN Apple NaN
2 NaN NaN Apple
3 NaN NaN NaN
4 NaN NaN NaN
5 NaN NaN NaN
6 NaN NaN NaN
这使您可以搜索数据框的所有列。
答案 2 :(得分:0)
import pandas as pd
raw_data = {'first_name': ['Mihir', 'Mihir', 'Raju', 'Johan', 'Johan'],
'last_name': ['Patel', 'Patel', 'Ali', 'Khan', 'Khan'],
'age': [42, 42, 36, 24, 53]}
df = pd.DataFrame(raw_data, columns = ['first_name', 'last_name', 'age'])
df.loc[df['first_name']=='Mihir']
答案 3 :(得分:0)
您可以尝试使用以下代码搜索整个数据框
df[df.eq("Apple").any(1)]
使用numpy
比较
df[(df.values.ravel() == "Apple").reshape(df.shape).any(1)]
两者都是较小的记录,但不确定大型数据集。