pandas - 如何重命名包含特殊(希腊)字符的列
问题描述
我有一个数据框,在我的脚本的早期,我使用以下方法命名我的列:
beta = 1.17
names =np.arange((beta-0.05),(beta+0.05),.01)
dfs.columns = [r'$\beta$'+str(i) for i in names]
稍后在脚本中我想r'$\beta$'
用ats
.
我尝试了以下方法:
dfs.columns = dfs.columns.str.replace("[(r'$\beta$')]", "ats")
但是,它没有按预期工作。任何建议表示赞赏。
谢谢。
解决方案
您需要转义特殊的正则表达式字符$
:
beta = 1.17
names =np.arange((beta-0.05),(beta+0.05),.01)
dfs = pd.DataFrame(0, columns=names, index=[0])
dfs.columns = [r'$\beta$'+str(i) for i in names]
dfs.columns = dfs.columns.str.replace(r'\$\\beta\$', "ats")
print (dfs)
ats1.1199999999999999 ats1.13 ats1.14 ats1.15 ats1.16 ats1.17 \
0 0 0 0 0 0 0
ats1.18 ats1.19 ats1.2 ats1.21 ats1.22
0 0 0 0 0 0
推荐阅读
- asp.net-mvc - 换行符 /r/n 来自哪里,我可以摆脱它吗?
- java - 获取电子邮件中附件的大小
- python - 页面不会在点击时重定向,但其他按钮可以正常工作/重定向?
- javascript - HTML输入文件按用户选择顺序多重排序
- firebase - 如何将数据从函数内部传递到flutter中的不同类
- android - 发送短信并等待回复,然后再发送另一条短信
- python - 基于 Selenium 的代码在 Chrome 更新后没有表现
- arrays - 一项任务中的 Ansible 数组
- jupyter-notebook - 我在 Anaconda3 上打开 jupyter 并出现内核错误,我该怎么办?
- json - 如何使用 Jira REST API 创建子组件