我正在尝试删除pandas数据框中的所有列,除了少数列之外,但是当我运行此代码时,所有列均被删除。数据集是如此之大,以至于将它们全部列出,有什么想法吗?:
for columns in df:
if not columns == 'Carbohydrates' or columns == 'Description' or columns == '1st Household Weight' or columns == 'Sugar Total' or columns == 'Kilocalories':
df = df.drop(columns, axis = 1)
答案 0 :(得分:1)
只需选择要保留的列:
df = df[['Carbohydrates','Description','1st Household Weight','Sugar Total','Kilocalories']]
答案 1 :(得分:0)
我认为您应该以这种方式使用括号:
if not (columns == 'Carbohydrates' or columns == 'Description' or columns == '1st Household Weight' or columns == 'Sugar Total' or columns == 'Kilocalories'):