讲通用语言——数据转换
数据转换时可以作为公共标准的数据类型:JSON、CSV
利用工具的快速转换
针对少量或者中量数据
电子表格->CSV:“另存为”。注意,一个EXCEL文件中的多个表格要分别保存。
电子表格->JSON:方法不太使用
使用phpMyadmin从SQL语句中生成CSV、JSON或者直接使用MySQL命令行
select concat (firstName, " ", lastName) as name, email_id
into outfile 'enronEmployees.csv'
fields terminated by ',' optionally enclosed by '"'
#设置字段分割符,可以是,或者"
lines terminated by '\n'
#设置行分隔符
from employeelist;
使用Python实现数据转换
数据量过大时
CSV->JSON
#csv->json
import json
import csv
#读取CSV文件
with open('F:/data/clean_data/data04.csv') as file:
file_csv = csv.DictReader(file)
output = '['
#处理每一个目录
for row in file_csv:
#两个实体之间加入逗号
output += json.dumps(row) + ','#dumps
output = output.rstrip(',') + ']'
#把文件写入磁盘中去
f = open('F:/data/clean_data/data04.json','w')
f.write(output)
f.close()
或者直接使用csvkit
JSON->CSV
#json->csv
import json
import csv
with open('F:/data/clean_data/data04.json','r') as f:
dicts = json.load(f)#json.loads()用于将字符串形式的数据转化为字典
#print(dicts)
out = open('F:/data/clean_data/data04_2.csv','w',newline='')#一个newline参数将使生成的csv文件不包含多余的空行!
writer = csv.DictWriter(out, dicts[0].keys())#以字典的形式写入到csv文件中,第二个参数定义了fileheader是以列表形式定义的文件头(每一列的标识)
writer.writeheader()
writer.writerows(dicts)
out.close()
来源:CSDN
作者:Seal_Wings
链接:https://blog.csdn.net/Seal_Wings/article/details/103448590