排序不适用于python中数据框的长列列表

Posted

技术标签:

【中文标题】排序不适用于python中数据框的长列列表【英文标题】:Sorting is not working for long list of columns for a dataframe in python 【发布时间】:2021-02-25 09:21:03 【问题描述】:

我有一个数据框,共有 3000 列,标题名称为数字,但第一列是字符串。所有都是具有相似值的重复列。当前订单i是:

   First, 0, 1, 2, 3,....3000, 0, 1, 2, 3,....,3000, 0, 1, 2, 3,...,3000, 0, 1, 2, 3,....,3000

我希望它们按如下排序:

 First, 0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3,....,3000, 3000, 3000, 3000

这些重复列的所有值都相同。我在轴 1 上尝试了 df = df.sort_index() 和类似的 df[sorted(df.columns)] 但它们给出了不同的排序顺序,而不是我需要的。

有什么帮助吗?

【问题讨论】:

【参考方案1】:

First 转换为索引,将所有其他列转换为整数,排序并最后将First 转换为列:

df = df.set_index('First').rename(columns=int).sort_index(axis=1).reset_index()

【讨论】:

以上是关于排序不适用于python中数据框的长列列表的主要内容,如果未能解决你的问题,请参考以下文章

查找功能不适用于未排序的列表

Jquery可排序水平列表不适用于固定项目

禁用列排序不适用于多个 angularjs 数据表

分页列表不适用于具有多个模型的视图

如何使用 DataTables.net 修复破坏容器外部表格的长列值问题?

具有服务器端分页/排序的 DevExtreme 数据网格不适用于过滤