【发布时间】:2021-12-07 07:07:19
【问题描述】:
我想通过按字母顺序和数字顺序对数据框的列进行排序来重新索引它们。
在我的数据框 df 中,我的列被命名为:
第 1 轮位置,第 2 轮位置,第 1 轮得分,第 2 轮得分,第 1 轮价格,第 2 轮价格,...,第 10 轮位置,第 10 轮得分,第 10 轮价格
我希望它们按如下顺序排列:
第 1 轮位置,第 1 轮价格,第 1 轮得分,第 2 轮位置,第 2 轮价格,第 2 轮得分,第 3 轮位置,第 3 轮价格,第 3 轮得分,...,第 10 轮位置,第 10 轮价格, 第 10 轮得分
我尝试了以下方法:
df.reindex(sorted(df.columns, key=lambda x: float(x[1:])), axis=1)
但没有运气,因为列名是一个字符串。
感谢您花时间阅读我的问题并帮助我。非常感谢!
【问题讨论】:
标签: python pandas sorting reindex