Python中文
首页
教程
问答
标签
搜索
登录
注册
重新按字母数字顺序排列df.columns
回答此问题可获得
20
贡献值,回答如果被采纳可获得
50
分。
<p>我有一个df如下:</p> <pre><code> Store Spend_1 Spend_2 Spend_3 Spend_4 Variance_1 Variance_2 Variance_3 Variance_4 0 1 200 230 189 200 -14 16 -6 18 1 2 224 104 240 203 -17 -11 17 -18 2 3 220 168 131 210 10 -9 12 19 3 4 143 187 139 188 -1 -17 -20 -9 4 5 179 121 162 131 6 -25 5 20 5 6 208 158 140 191 16 -14 -22 -6 </code></pre> <p>我正在尝试对列名应用自定义排序,以便对其进行排序:</p> <pre><code> Store Spend_1 Variance_1 Spend_2 Variance_2 Spend_3 Variance_3 Spend_4 Variance_4 0 1 200 -14 230 16 189 -6 200 18 1 2 224 -17 104 -11 240 17 203 -18 2 3 220 10 168 -9 131 12 210 19 3 4 143 -1 187 -17 139 -20 188 -9 4 5 179 6 121 -25 162 5 131 20 5 6 208 16 158 -14 140 -22 191 -6 </code></pre> <p>我尝试过简单的<code>sorted</code>,但显然这是按字母顺序应用的,忽略了末尾的整数。你知道吗</p> <p>我把<code>enumerating</code>当作<code>number</code>,<code>cols</code>把字符串改成int,应用排序,然后使用<code>iloc</code>中的数字,但我不确定如何用这种方式应用自定义排序。你知道吗</p> <p>有人能帮忙吗?你知道吗</p>
0 条评论
分类:
Python问答
请先
登录
后评论
默认排序
时间排序
1 个回答
匿名
1天前
擅长:python、mysql、java
<p>我能想到的最简单的方法就是定义自己的排序键</p> <pre><code>df = df.reindex(sorted(df.columns, key=lambda x: int(x.split("_")[1]) if "_" in x else 0), axis=1) </code></pre>
请先
登录
后评论
针对此问题:
更多的回答
关注
89
关注
收藏
1
收藏,
216
浏览
网友 提问于 2天前
相关Python问题
在python3中使用Scipy pearsonr函数
8 回答
在Python3中使用scipy对多个lorentzian进行数据拟合
7 回答
在Python3中使用Script=argv
7 回答
在python3中使用selenium webdriver进行未解析的回溯
4 回答
在python3中使用selenium和phantomjs的网页截图之前如何等待?
5 回答
在Python3中使用Selenium和Requests模块从网页获取文件
5 回答
在python3中使用SIGINT终止函数
3 回答
在Python3中使用SIGTERM时,允许进程完成而不是中断
7 回答
在python3中使用smtplib发送XML内容
6 回答
在python3中使用socket库(RFCOMM模式)重新连接蓝牙设备?
8 回答
在python3中使用sounddevice和numpy编写wav文件
5 回答
在python3中使用Sqlalchemy插入MySQL查找类型错误的原因
8 回答
在python3中使用sqlite、pandas和sqlalchemy很难让rollback工作
5 回答
在python3中使用SQLite的FTS3/4
8 回答
在Python3中使用struct.calcsize()和len()有区别吗?
1 回答
在python3中使用substring函数时发生TypeError
6 回答
在Python3中使用Tkinter entry小部件写入串行设备
6 回答
在python3中使用tkinter时,如何在每次按下函数时获得运行该函数的按钮?
1 回答
在python3中使用tkinter的子帧
3 回答
在Python3中使用tryexcept块时,如何避免使用未初始化的变量?
6 回答