将字符串转换为Pandas数据框

3

我正在使用以下代码在AWS Lambda中从AWS S3导入csv文件:

file = s3.get_object(Bucket = bucket, Key = key)
rows = file['Body'].read().decode('utf-8').splitlines(False)

我得到的输入格式如下:

data = "a,b,c,d,\"x,y\",e,f"

我想要的输出格式如下:

>>>`>>> df
   0  1  2  3    4  5  6
0  a  b  c  d  x,y  e  f`

我需要基于','拆分数据,但是如果某些内容在" "之间,则应该保持不变。 如果您有其他导入S3中的CSV文件到Lambda并将其转换为数据框的解决方案,请提出建议。
1个回答

7

使用csv模块

试试这个:

from csv import reader
import pandas as pd
data=["a,b,c,d,\"x,y\",e,f"]
df=pd.DataFrame( list(reader(data)))
print df

输出:

   0  1  2  3    4  5  6
0  a  b  c  d  x,y  e  f

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接