Python将str强制转化为dict,完成json格式数据转存为Excel
Posted 数据分析师手记
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python将str强制转化为dict,完成json格式数据转存为Excel相关的知识,希望对你有一定的参考价值。
有些程序的结果经常是以json格式保存的,若需要进行数据分析,还是把数据放进DataFrame比较方便。
比如我们拿到一个Txt文档,里面写满了一行行这样的数据:
分析以上数据,可知:
数据存储在Txt文件中,本质是字符串str
该字符串展示形式,形似dict类型
因此,思考采用什么方法可以将Str直接强制转化为dict类型?
经查资料,知eval()方法可以直接将str转化为dict
pandas可以将dataframe直接写入到Excel文件中
dataframe可以将结构统一的Dict追加到数据框新的一行
所以,我们可以通过以下代码实现数据格式的转换:
import pandas as pd
txt = pd.read_table('c:/Users/ami/Documents/WeChat Files/helloMe/Files/mq(3).txt',encoding='utf-8',header=None)
new = pd.DataFrame({},index=[0])
result = new
for key,value in txt[0].items():
new = eval(value)
result = result.append(new, ignore_index=True)
result.to_excel('c:/Users/ami/Desktop/result20180408.xlsx')
print('done!')
有几个注意点需要强调一下:
pandas读入txt文件,使用read_table()方法
read_table()方法,可以通过encoding参数来设置编码方式,设置encoding=’utf-8’,你就不会看到乱码
read_table()方法,可以通过header参数来设置是否有表头
dataframe的append()方法,可以通过ignore_index参数来设置行索引
以上是关于Python将str强制转化为dict,完成json格式数据转存为Excel的主要内容,如果未能解决你的问题,请参考以下文章