gpt4 book ai didi

python-3.x - Pandas 数据框列名 : remove special character

转载 作者:行者123 更新时间:2023-12-04 10:35:42 25 4
gpt4 key购买 nike

一些 clown 制作了一个 Lotus 数据库/小程序,用于跟踪我们公司的工程问题。笑话是关键信息是用一个特殊字符命名的……一个数字符号(井号、井号、\u0023)。

缩略样本:

KA#         Issue Date      Current Position
27144 1/9/2014 Accounting
27194 12/20/2012 Engineering
32474 4/21/2008 Engineering
32623-HOLD 4/25/2016 Engineering
32745 11/13/2012 SEPE
32812 10/30/2013 Engineering
32817 12/7/2012 Purchasing
32839 1/8/2013 SEPE

我将此表(4K 行,15 列)输出到一个 csv 文件并在 python3 中作为 Pandas 数据帧进行处理。

我生成各种输出。如果我使用类似的东西:
df.iloc[:,[0,3,1,8,9,10]]

我得到适当的输出,关键列显示为 "KA#" . (当我说“关键列”时,我的意思是“最重要的”......不是“索引”。我保留一个序列索引)

不幸的是,人们有时会在我导出到 csv 之间弄乱 Lotus 中的列顺序,所以我不能保证 "KA#"将是任何特定的列号。我想使用列名:
df.loc[:,["KA#","Issue Date","Current Position"]]

但是 "KA#"列填充了 NaN。

谢谢你的尽心帮助。

最后,如果我尝试重命名 "KA#"简单地 "KA" :
df['KA#'].name = 'KA'

抛出一个 KeyError 和
df = df.rename(columns={"KA#": "ka"})

完全被忽略。该列显示为 "KA#" .

任何人都可以想出一种方法来摆脱或处理该符号吗?在这一点上,我什至满足于使用正则表达式。

最佳答案

使用 str.replace :df.columns=df.columns.str.replace('#','')
您可以在 documentation 中查看此信息.

关于python-3.x - Pandas 数据框列名 : remove special character,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37952797/

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