您可以通过指定列的顺序直接重新排列列:
df = df[['a', 'y', 'b', 'x']]
如果列标题是动态的较大数据框,则可以使用列表推导选择不在目标集中的每个列,然后将目标集附加到末尾。
>>> df[[c for c in df if c not in ['b', 'x']] + ['b', 'x']] a y b x0 1 -1 2 31 2 -2 4 62 3 -3 6 93 4 -4 8 12
为了使其更加安全,可以确保目标列确实在数据框中:
cols_at_end = ['b', 'x']df = df[[c for c in df if c not in cols_at_end] + [c for c in cols_at_end if c in df]]
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)