首页 > 解决方案 > 如何通过传递参数重新排列数据框中的列

问题描述

我有以下列表

('EmpId', 'EMpName', 'Age', 'SerialNo')

我想将 Age,SerialNo 放在起始位置和其余列中,如下所示

ColumnsToRearrange = ['年龄','序列号']

通过对数据框中的列进行硬编码,我可以实现如下。有没有可能我可以将它作为参数传递

df = df[['Age', 'SerialNo'] + [col for col in df.columns if col not in ['Age', 'SerialNo']]] 

但我想将此作为参数传递

df = df[Header + [col for col in df.columns if col not in Header]] 

我收到以下错误消息

Error:TypeError: can only concatenate tuple (not "list") to tuple

标签: pythonpandasdataframe

解决方案


改变你的元组

('EmpId', 'EMpName', 'Age', 'SerialNo')

到一个列表

['EmpId', 'EMpName', 'Age', 'SerialNo']

推荐阅读