python-3.x - 将由多字符分隔符分隔并用单引号括起来的文本数据读取到数据框中
问题描述
这是样本数据,
'id'|@|'name'|@|'sal'
'123'|@|'abvc'|@|'10000'
'234'|@|'dfgb'|@|'20000'
我需要在没有单引号的情况下将这些数据读入数据框
id name sal
123 abvc 10000
234 dfgb 20000
但是我在阅读熊猫时用单引号获取数据。
import pandas as pd
df=pd.read_csv(r"C:\test.txt",sep='\\|\@\\|',engine='python')
'id' 'name' 'sal'
'123' 'abvc' '10000'
'234' 'dfgb' '20000'
有人可以帮帮我吗
解决方案
一种方法是这样的:
dfw = pd.read_csv(r"c:/users/k_sego/weird.csv",sep="\|@\|")
dfw = dfw.replace(r"\'", '', regex=True)
df = dfw.rename(columns={"'id'": "id", "'name'": "name", "'sal'":"sal"})
这使
id name sal
0 123 abvc 10000
1 234 dfgb 20000
推荐阅读
- python - 图像的Python灰度转换
- c++ - 在派生类到基类的转换中移动语义
- asp.net-core - 用户总是需要在 20 - 30 分钟后登录
- ubuntu-18.04 - 如何在 ubuntu-18.04 上安装 nexus
- google-sheets - 如何从其他工作表中导入具有值的数据
- android - Ionic 4:如何修复登录页面设计
- android - 自定义通知布局提供了不必要的边距
- java - JavaBean 上的 Oracle 文档会出错吗?
- sql-server - 如何设置 SQL Server 连接?
- r - 字符串问题:去掉字符串末尾的模式,"//, "///, "////