如何删除 pandas 中的列(4 个示例)


您可以使用drop()函数从 pandas DataFrame 中删除一列或多列:

 #drop one column by name
df. drop (' column_name ', axis= 1 , inplace= True )

#drop multiple columns by name
df. drop ([' column_name1 ', ' column_name2 '], axis= 1 , inplace= True )

#drop one column by index
df. drop ( df.columns [[0]], axis= 1 , inplace= True )

#drop multiple columns by index
df. drop (df.columns[[0,2,5]], axis= 1 , inplace= True )

请注意以下事项:

  • axis参数指定是删除行 (0) 还是列 (1)。
  • inplace参数指定在不重新分配 DataFrame 的情况下就地删除列。

以下示例展示了如何在实践中通过以下 pandas DataFrame 使用此函数:

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' A ': [25, 12, 15, 14, 19, 23, 25, 29],
                   ' B ': [5, 7, 7, 9, 12, 9, 9, 4],
                   ' C ': [11, 8, 10, 6, 6, 5, 9, 12]})

#view DataFrame
df

	A B C
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

示例 1:按名称删除列

以下代码显示了如何按名称从 DataFrame 中删除列:

 #drop column named 'B' from DataFrame
df. drop (' B ', axis= 1 , inplace= True ) 

#view DataFrame
df

	A C
0 25 11
1 12 8
2 15 10
3 14 6
4 19 6
5 23 5
6 25 9
7 29 12

示例2:按名称删除多列

以下代码展示了如何按名称删除多列:

 #drop columns 'A' and 'C' from DataFrame
df. drop ([' A ', ' C '], axis= 1 , inplace= True ) 

#view DataFrame
df

        B
0 5
1 7
2 7
3 9
4 12
5 9
6 9
7 4

示例3:通过索引删除列

以下代码显示了如何按索引删除列:

 #drop first column from DataFrame
df. drop ( df.columns [[0]], axis= 1 , inplace= True ) 

#view DataFrame
df

        B C
0 5 11
1 7 8
2 7 10
3 9 6
4 12 6
5 9 5
6 9 9
7 4 12

示例 4:按索引删除多列

以下代码显示了如何按索引删除多列:

 #drop multiple columns from DataFrame
df. drop (df. columns [[0, 1]], axis= 1 , inplace= True ) 

#view DataFrame
df

        VS
0 11
1 8
2 10
3 6
4 6
5 5
6 9
7 12

其他资源

如何向 Pandas DataFrame 添加行
如何将 Numpy 数组添加到 Pandas DataFrame
如何计算 Pandas DataFrame 中的行数

添加评论

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