Python3 From Zero——{最初的意识:006~数据编码与处理}
一、读写CSV数据:
#!/usr/bin/env python3 #-*- coding=utf8 -*- import csv with open('kxtx.csv', 'rt') as f: f_csv = csv.DictReader(f) for x in f_csv: print(x) if x['货物名称'] == '电机': break
f@z ~/py_script $ python3 csv_test.py {'开单网点组织编号': 'C050220002', '运单号': 'yt050806', '公司类型': '项目客户', '首家承接网点': '厚德天津站点', '所属枢纽': '天津卡行天下供应链管理有限公司', '货物名称': 'xm食品', '开单公司': 'XM天津茂绎运通物流有限公司', '件数': '500', '首家承接公司类型': '线路公司', '开单网点': 'XM天津茂绎运通物流有限公司', '首家承接公司': '滨江厚德物流(天津)有限公司', '客户编号': 'k020220197', '托运日期': '2016-05-08', '外包合计(元)': '9189.18', '开单日期': '2016-05-08', '体积(m3)': '102', '重量(KG)': '3562', '交易类型': '自主交易', '运费合计(元)': '9189.18', '当前状态': '客户已签收'} {'开单网点组织编号': 'C050100014', '运单号': 'C0501000140000615', '公司类型': '项目客户', '首家承接网点': '北京大陆桥精准北京站点', '所属枢纽': '北京卡行天下有限公司', '货物名称': '电机', '开单公司': '北京和顺通达物流有限公司', '件数': '43', '首家承接公司类型': '线路公司', '开单网点': '北京和顺通达物流有限公司', '首家承接公司': '北京大陆桥物流有限公司(精准)', '客户编号': 'K020100048', '托运日期': '2016-05-10', '外包合计(元)': '1173.6', '开单日期': '2016-05-10', '体积(m3)': '4.51', '重量(KG)': '1956', '交易类型': '自主交易', '运费合计(元)': '1173.6', '当前状态': '客户已签收'}
#!/usr/bin/env python3 #-*- coding=utf8 -*- import csv headers = ['姓名', '年龄', '性别'] rows = [('张三', 27, '男'), ('李四', 24, '女')] with open('testfile.csv', 'wt') as f: f_csv = csv.writer(f) f_csv.writerow(headers) f_csv.writerows(rows)
f@z ~/py_script $ cat testfile.csv 姓名,年龄,性别 张三,27,男 李四,24,女
二、数据汇总和统计:pandas(大型数据集分析、数据归组、统计分析等)
>>> import pandas >>> test = pandas.read_csv('kxtx.csv') >>> test 所属枢纽 开单日期 托运日期 开单公司 \ 0 天津卡行天下供应链管理有限公司 2016-05-08 2016-05-08 XM天津茂绎运通物流有限公司 1 北京卡行天下有限公司 2016-05-10 2016-05-10 北京和顺通达物流有限公司 2 天津卡行天下供应链管理有限公司 2016-05-07 2016-05-07 XM天津茂绎运通物流有限公司 3 石家庄卡行供应链管理有限公司 2016-05-07 2016-05-07 xm河北安跃商贸有限公司
>>> type(test) <class 'pandas.core.frame.DataFrame'>
HADEX_ FROM HELL.