python - 使用 for 循环重命名多个列(python)
问题描述
下面的数据框有许多列,但列名是随机数。
每天1=
0 1 2 3 4 5 6 7 8 9 ... 11 12 13 14 15 16 17 18 19 20
0 0 0 0 0 0 0 4 0 0 0 ... 640 777 674 842 786 865 809 674 679 852
1 0 0 0 0 0 0 0 0 0 0 ... 108 29 74 102 82 62 83 68 30 61
2 rows × 244 columns
我想按数字顺序组织列名(从 0 到 243)
我试过
for i, n in zip(daily1.columns, range(244)):
asd=daily1.rename(columns={i:n})
asd
但输出没有显示...
理想的输出是
0 1 2 3 4 5 6 7 8 9 ... 234 235 236 237 238 239 240 241 242 243
0 0 0 0 0 0 0 4 0 0 0 ... 640 777 674 842 786 865 809 674 679 852
1 0 0 0 0 0 0 0 0 0 0 ... 108 29 74 102 82 62 83 68 30 61
我能得到一些建议吗?谢谢
解决方案
如果您想重新排序列,您可以尝试
columns = sorted(list(df.columns), reverse=False)
df = df[columns]
如果您只想重命名列,那么您可以尝试
df.columns = [i for i in range(df.shape[1])]
推荐阅读
- r - 如何在 if 语句 r 中使用 str_detect 为 FALSE 来附加一个值
- python - 字符串替换为单词匹配
- string - 具有相同内容但比较总是返回 false 的字符串
- laravel - 如何在 eloquent 中对 OrderBy 值进行语法分析
- node.js - nodemon 在 Docker 上停留在“[nodemon] 由于更改而重新启动...”
- python - 强制pyplot直方图的x轴(python,pandas)
- javascript - 为什么此代码仅在变量位于函数内部时才有效?
- sql - sql合并两个选择查询结果,如果一列的值发生冲突,则保留查询A的结果
- python - 将来自另一个 df 的列作为列插入到另一个 df 中。卡了几个小时!与不同的列合并(加入)
- flutter - 颤动底片改变背景高度