如何在 pandas 中选择多列(带有示例)
您可以使用三种基本方法从 pandas DataFrame 中选择多个列:
方法一:按索引选择列
df_new = df. iloc [:,[0,1,3]]
方法2:选择索引范围内的列
df_new = df. iloc [:, 0:3]
方法 3:按名称选择列
df_new = df[[' col1 ', ' col2 ']]
以下示例展示了如何将每种方法与以下 pandas DataFrame 一起使用:
import pandas as pd
#createDataFrame
df = pd. DataFrame ({' points ': [25, 12, 15, 14, 19, 23, 25, 29],
' assists ': [5, 7, 7, 9, 12, 9, 9, 4],
' rebounds ': [11, 8, 10, 6, 6, 5, 9, 12],
' blocks ': [4, 7, 7, 6, 5, 8, 9, 10]})
#view DataFrame
df
points assists rebounds blocks
0 25 5 11 4
1 12 7 8 7
2 15 7 10 7
3 14 9 6 6
4 19 12 6 5
5 23 9 5 8
6 25 9 9 9
7 29 4 12 10
方法一:按索引选择列
以下代码显示如何选择索引位置 0、1 和 3 处的列:
#select columns in index positions 0, 1, and 3
df_new = df. iloc [:,[0,1,3]]
#view new DataFrame
df_new
points assists blocks
0 25 5 4
1 12 7 7
2 15 7 7
3 14 9 6
4 19 12 5
5 23 9 8
6 25 9 9
7 29 4 10
请注意,索引位置 0、1 和 3 处的列已被选中。
注意:pandas DataFrame 的第一列位于位置 0。
方法2:选择索引范围内的列
以下代码显示如何选择索引范围 0 到 3 中的列:
#select columns in index range 0 to 3
df_new = df. iloc [:, 0:3]
#view new DataFrame
df_new
points assists rebounds
0 25 5 11
1 12 7 8
2 15 7 10
3 14 9 6
4 19 12 6
5 23 9 5
6 25 9 9
7 29 4 12
请注意,位于范围 (3) 最后一个值中的列将不会包含在输出中。
方法 3:按名称选择列
以下代码显示了如何按名称选择列:
#select columns called 'points' and 'blocks'
df_new = df[[' points ', ' blocks ']]
#view new DataFrame
df_new
point blocks
0 25 4
1 12 7
2 15 7
3 14 6
4 19 5
5 23 8
6 25 9
7 29 10
其他资源
以下教程解释了如何在 pandas 中执行其他常见操作: