Pandas:选择值出现在任何列中的行
通常,您可能希望选择 pandas DataFrame 中的行,其中某一列中出现某个值。
幸运的是,使用.any pandas 函数可以轻松做到这一点。本教程解释了此功能实际使用的几个示例。
示例 1:查找任意列中的值
假设我们有以下 pandas DataFrame:
import pandas as pd #createDataFrame df = pd.DataFrame({'points': [25, 12, 15, 14, 19], 'assists': [5, 7, 7, 9, 12], 'rebounds': [11, 8, 10, 6, 6]}) #view DataFrame print (df) points assists rebounds 0 25 5 11 1 12 7 8 2 15 7 10 3 14 9 6 4 19 12 6
以下语法显示如何选择 DataFrame 中某一列中包含值25的所有行:
df[df. isin ([ 25 ]). any (axis= 1 )] points assists rebounds 0 25 5 11
以下语法显示了如何选择 DataFrame 中任意列中包含值25、9 或 6 的所有行:
df[df. isin ([ 25,9,6 ]). any (axis= 1 )] points assists rebounds 0 25 5 11 3 14 9 6 4 19 12 6
示例 2:在任意列中查找字符
假设我们有以下 pandas DataFrame:
import pandas as pd #createDataFrame df = pd.DataFrame({'points': [25, 12, 15, 14, 19], 'assists': [5, 7, 7, 9, 12], 'position': ['G', 'G', 'F', 'F', 'C']}) #view DataFrame print (df) position assist points 0 25 5 G 1 12 7 G 2 15 7 F 3 14 9 F 4 19 12 C
以下语法显示如何选择 DataFrame 中任意列中包含字符G的所有行:
df[df. isin ([' G ']). any (axis= 1 )] position assist points 0 25 5 G 1 12 7 G
以下语法显示了如何选择 DataFrame 中任意列中包含值G 或 C 的所有行:
df[df. isin ([' G ',' C ']). any (axis= 1 )] position assist points 0 25 5 G 1 12 7 G 4 19 12 C
其他资源
如何根据多个条件过滤 Pandas DataFrame
如何在Pandas中查找多列中的唯一值
如何获取 Pandas DataFrame 中的行号