我有一个包含35列的DataFrame,我想创建一个包含其中6列的新DataFrame。相关列分布在整个DataFrame的不同位置。什么是最恐怖的方式呢?
答案 0 :(得分:3)
假设您有一个包含多列的dataframe
:
df = pd.DataFrame({'col1':[1,2,3], 'col2':[4,5,6],'col3':[7,8,9],
'col4':[1,2,3],'col5':[1,2,3],'col6':[1,2,3],
'col7':[1,2,3],'col8':[1,2,3],'col9':[1,2,3],
'col91':[1,2,3]})
print(df)
输出:
col1 col2 col3 col4 col5 col6 col7 col8 col9 col91
0 1 4 7 1 1 1 1 1 1 1
1 2 5 8 2 2 2 2 2 2 2
2 3 6 9 3 3 3 3 3 3 3
现在要创建包含所选列的新dataframe
,您只需将列的名称列表传递给选定的['col1', 'col2', 'col5']
:
tmp_df = df[['col1', 'col2', 'col5']]
print(tmp_df)
输出:
col1 col2 col5
0 1 4 1
1 2 5 2
2 3 6 3
还可以参考my other answer