如何删除 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 中的行数