如何保留 pandas 中的某些列(附示例)
您可以使用以下方法仅保留 pandas DataFrame 中的某些列:
方法 1:指定要保留的列
#only keep columns 'col1' and 'col2' df[[' col1 ', ' col2 ']]
方法2:指定要删除的列
#drop columns 'col3' and 'col4' df[df. columns [~df. columns . isin ([' col3 ',' col4 '])]]
以下示例展示了如何将每种方法与以下 pandas DataFrame 一起使用:
import pandas as pd #createDataFrame df = pd. DataFrame ({' team ': ['A', 'A', 'A', 'B', 'B', 'B'], ' points ': [11, 7, 8, 10, 13, 13], ' assists ': [5, 7, 7, 9, 12, 9], ' rebounds ': [11, 8, 10, 6, 6, 5]}) #view DataFrame df team points assists rebounds 0 A 11 5 11 1 To 7 7 8 2 to 8 7 10 3 B 10 9 6 4 B 13 12 6 5 B 13 9 5
方法 1:指定要保留的列
下面的代码展示了如何定义一个只保留“team”和“points”列的新DataFrame:
#create new DataFrame and only keep 'team' and 'points' columns
df2 = df[[' team ', ' points ']]
#view new DataFrame
df2
team points
0 to 11
1 to 7
2 to 8
3 B 10
4 B 13
5 B 13
请注意,生成的 DataFrame 仅保留我们指定的两列。
方法2:指定要删除的列
以下代码显示如何定义一个新的 DataFrame,从原始 DataFrame 中删除“attends”和“bounces”列:
#create new DataFrame and that drops 'assists' and 'rebounds'
df2 = df[df. columns [~df. columns . isin ([' assists ', ' rebounds '])]]
#view new DataFrame
df2
team points
0 to 11
1 to 7
2 to 8
3 B 10
4 B 13
5 B 13
请注意,生成的 DataFrame 会从原始 DataFrame 中删除“assists”和“bounces”列,并保留剩余的列。
其他资源
以下教程解释了如何在 pandas 中执行其他常见操作:
如何删除 Pandas DataFrame 中的第一列
如何删除 Pandas 中的重复列
如何在 Pandas 中按索引删除列