Pandas:如何使用 loc 选择多列


您可以使用 pandas 中的loc函数按标签选择 DataFrame 中的多个列。

以下是最常见的方法:

方法一:按名称选择多列

 df. loc [:,[' col2 ',' col4 ']]

方法2:选择范围内的所有列

 df. loc [:, ' col2 ':' col4 ']

以下示例展示了如何在实践中使用以下 pandas DataFrame 的每种方法:

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' team ': ['A', 'A', 'A', 'A', 'B', 'B', 'B', 'B'],
                   ' points ': [5, 7, 7, 9, 12, 9, 9, 4],
                   ' assists ': [11, 8, 10, 6, 6, 5, 9, 12],
                   ' rebounds ': [6, 7, 7, 6, 10, 12, 10, 9]})

#view DataFrame
print (df)

  team points assists rebounds
0 A 5 11 6
1 To 7 8 7
2 To 7 10 7
3 to 9 6 6
4 B 12 6 10
5 B 9 5 12
6 B 9 9 10
7 B 4 12 9

示例 1:按名称选择多列

以下代码展示了如何使用loc函数选择 DataFrame 的“points”和“bounces”列:

 #select points and rebounds columns
df. loc [:,[' points ',' rebounds ']]

        rebound points
0 5 6
1 7 7
2 7 7
3 9 6
4 12 10
5 9 12
6 9 10
7 4 9

请注意,返回“得分”和“篮板”列中的每一行。

另请注意,您在loc函数中指定列的顺序就是它们返回的顺序。

例如,我们可以先返回“篮板”列,然后返回“得分”列:

 #select rebounds and points columns
df. loc [:, [' rebounds ', ' points ']]

	rebound points
0 6 5
1 7 7
2 7 7
3 6 9
4 10 12
5 12 9
6 10 9
7 9 4

示例 2:选择范围内的所有列

以下代码演示了如何使用loc函数选择 DataFrame 中“points”和“bounces”列之间的所有列:

 #select all columns between points and rebounds columns
df. loc [:, ' points ': ' rebounds ']

	points assists rebounds
0 5 11 6
1 7 8 7
2 7 10 7
3 9 6 6
4 12 6 10
5 9 5 12
6 9 9 10
7 4 12 9

请注意,将返回 DataFrame 中“points”和“bounces”列之间的所有列。

注意:要按索引位置选择列,请改用iloc函数。

其他资源

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

如何使用 Pandas Loc 根据多个条件选择行
如何在 Pandas 中根据列值选择行
如何在 Pandas 中按索引选择行

添加评论

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