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 中按索引选择行