我正在尝试从数据框中删除列,但是问题是,每当删除该列(有效)时,我的列总是以不同的顺序重新排列。有谁知道为什么会这样吗?这是我现在的代码:
df=df.drop('column_name', axis=1)
答案 0 :(得分:0)
一种方法是:
df = df[[col1,col2,col4]] #if col3 is what you want to drop
这在列数较少时很有用。
答案 1 :(得分:0)
我无法重现您的问题。但是我相信以下代码可以保持顺序。这与肖小志的答案相同,但是没有键入其余所有列。
df = pd.DataFrame({
'col1': [1, 2, 3, 4],
'col2': ['a', 'e', 'i', 'o'],
'col3': ['a', 'e', 'i', 'o'],
'col4': [0.1, 0.2, 1, 2],
})
cols_to_drop = ['col2']
new_columns = df.columns.drop(cols_to_drop).to_list()
df[new_columns]
col1 col3 col4
0 1 a 0.1
1 2 e 0.2
2 3 i 1.0
3 4 o 2.0