从字符串转换为熊猫数据框

时间:2018-11-13 09:58:19

标签: python pandas dataframe amazon-s3 aws-lambda

我正在使用以下代码从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`

我必须基于'分割数据,但是如果在“”之间有一些皮带,它们应该保持原样。

或者,如果您还有其他解决方案,可以将csv文件从s3导入到lambda并在数据帧中进行转换,请建议

1 个答案:

答案 0 :(得分:2)

使用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