如何在 pandas 中仅选择数字列


您可以使用以下基本语法仅选择 pandas DataFrame 中的数字列:

 import pandas as pd
import numpy as np

df. select_dtypes (include= np.number )

下面的例子展示了如何在实际中使用这个功能。

示例:仅选择 Pandas 中的数字列

假设我们有以下 pandas DataFrame,其中包含有关各种篮球运动员的信息:

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' team ': ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H'],
                   ' points ': [18, 22, 19, 14, 14, 11, 20, 28],
                   ' assists ': [5, 7, 7, 9, 12, 9, 9, 4],
                   ' rebounds ': [11, 8, 10, 6, 6, 5, 9, 12]})

#view DataFrame
print (df)

  team points assists rebounds
0 A 18 5 11
1 B 22 7 8
2 C 19 7 10
3 D 14 9 6
4 E 14 12 6
5 F 11 9 5
6 G 20 9 9
7:28 4 12

我们可以使用以下语法从 DataFrame 中仅选择数字列:

 import numpy as np

#select only the numeric columns in the DataFrame
df. select_dtypes (include= np.number )

        points assists rebounds
0 18 5 11
1 22 7 8
2 19 7 10
3 14 9 6
4 14 12 6
5 11 9 5
6 20 9 9
7 28 4 12

请注意,仅选择了三个数值列:得分助攻篮板

我们可以通过使用dtypes()函数显示 DataFrame 中每个变量的数据类型来验证这些列是否为数字:

 #display data type of each variable in DataFrame
df. dtypes

team object
int64 dots
assists int64
rebounds int64
dtype:object

从结果中我们可以看出,球队是一个对象(即字符串),而得分助攻篮板都是数字。

请注意,我们还可以使用以下代码来获取 DataFrame 的数字列的列表:

 #display list of numeric variables in DataFrame
df. select_dtypes (include=np. number ). columns . tolist ()

['points', 'assists', 'rebounds']

这使我们能够快速查看 DataFrame 中数字变量的名称,而无需查看它们的实际值。

其他资源

以下教程解释了如何在 pandas 中执行其他常见任务:

如何在 Pandas 中按名称选择列
如何在 Pandas 中按索引选择列
如何在 Pandas 中选择包含特定字符串的列

添加评论

您的电子邮箱地址不会被公开。 必填项已用*标注