如何排除 pandas 中的列(附示例)
您可以使用以下语法来排除 pandas DataFrame 中的列:
#exclude column1 df. loc [:, df. columns !=' column1 '] #exclude column1, column2, ... df. loc [:, ~df. columns . isin ([' column1 ',' column2 ',...])]
以下示例展示了如何在实践中使用此语法。
示例 1:排除列
以下代码演示了如何选择 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 ': [2, 3, 3, 5, 3, 2, 1, 2]}) #view DataFrame df points assists rebounds blocks 0 25 5 11 2 1 12 7 8 3 2 15 7 10 3 3 14 9 6 5 4 19 12 6 3 5 23 9 5 2 6 25 9 9 1 7 29 4 12 2 #select all columns except 'rebounds' df. loc [:, df. columns !=' rebounds '] points assists blocks 0 25 5 2 1 12 7 3 2 15 7 3 3 14 9 5 4 19 12 3 5 23 9 2 6 25 9 1 7 29 4 2
示例 2:排除多列
以下代码显示了如何选择 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 ': [2, 3, 3, 5, 3, 2, 1, 2]}) #view DataFrame df points assists rebounds blocks 0 25 5 11 2 1 12 7 8 3 2 15 7 10 3 3 14 9 6 5 4 19 12 6 3 5 23 9 5 2 6 25 9 9 1 7 29 4 12 2 #select all columns except 'rebounds' and 'assists' df. loc [:, ~df. columns . isin ([' rebounds ', ' assists '])] point blocks 0 25 2 1 12 3 2 15 3 3 14 5 4 19 3 5 23 2 6 25 1 7 29 2
使用此语法,您可以按名称排除任意数量的列。
其他资源
如何向 Pandas DataFrame 添加行
如何将 Numpy 数组添加到 Pandas DataFrame
如何计算 Pandas DataFrame 中的行数