gpt4 book ai didi

python - 如何仅将 'Unnamed:' 列重命名为数字索引

转载 作者:行者123 更新时间:2023-11-28 19:53:15 26 4
gpt4 key购买 nike

我正在读取 excel 文件作为数据框。但是,我的前三列有标题,其余的只需要一个数字索引。当我读取文件时,我得到下面的输出。

        a         b         c    Unnamed: 4  Unnamed: 5  Unnamed: 6
0 0.109066 -1.112704 -0.545209 0.109066 -1.112704 -0.545209
1 0.447114 1.525341 0.317252 0.109066 -1.112704 -0.545209
2 0.507495 0.137863 0.886283 1.452867 1.888363 1.168101
3 1.452867 1.888363 1.168101 0.901371 -0.704805 0.088335
4 0.901371 -0.704805 0.088335 0.901371 -0.704805 0.088335

我希望数据框看起来像这样,请记住未命名列的数量可能会有所不同。

        a         b         c        1           2           3
0 0.109066 -1.112704 -0.545209 0.109066 -1.112704 -0.545209
1 0.447114 1.525341 0.317252 0.109066 -1.112704 -0.545209
2 0.507495 0.137863 0.886283 1.452867 1.888363 1.168101
3 1.452867 1.888363 1.168101 0.901371 -0.704805 0.088335
4 0.901371 -0.704805 0.088335 0.901371 -0.704805 0.088335

如何重命名所有 Unnamed: # 列并为它们分配数字索引?

最佳答案

我认为您不应该对映射进行硬编码。使用列表理解。

In [550]: i = iter(range(1, len(df.columns) + 1))

In [551]: df.columns = [x if not x.startswith('Unnamed') else next(i) for x in df.columns]

In [552]: df
Out[552]:
a b c 1 2 3
0 0.109066 -1.112704 -0.545209 0.109066 -1.112704 -0.545209
1 0.447114 1.525341 0.317252 0.109066 -1.112704 -0.545209
2 0.507495 0.137863 0.886283 1.452867 1.888363 1.168101
3 1.452867 1.888363 1.168101 0.901371 -0.704805 0.088335
4 0.901371 -0.704805 0.088335 0.901371 -0.704805 0.088335

关于python - 如何仅将 'Unnamed:' 列重命名为数字索引,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45731061/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com