- 1、本文档共3页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Python分析csv⽂件及可视化绘图
简介
项 ⽬中经常需要对 ⽇志⽂件进⾏分析,之前使⽤Sh ll,常⽤的是gr p, awk, s d等。
使⽤Sh ll有⼀个缺点,就是可视化不友好,经常需要把分析后的⽂件导出,再⽤Python/Exc l可视化⼀下。
本⽂直接使⽤Python对 ⽇志⽂件进⾏分析,并使⽤matplotlib进⾏可视化。
数据
这⾥的数据⽂件选⽤⼀个天⽓数据⽂件,它存储了某地⼀个时间段的最⾼温度、最低温度等数据。
⽬的是把不同时间点最⾼温度和最低温度数据进⾏可视化,⽤折线图的形式绘制出来。
数据头如图所⽰ :
读取⽂件
使⽤Python读取⽂件的⽅式⼀般如下 :
def read_file() :
with open(pi.txt) as file_object :
lines = file_object.readlines()
Python标准库中包含csv模块,可直接分析csv⽂件⾏ :
import csv
from datetime import datetime
filename = sit a_weather_2014.csv
with open(filename) as f :
reader = csv.reader(f) # 把⽂件对象关联到阅读器reader对象
header_ row = next(reader) # 得到⽂件第 ⼀⾏
打印⽂件头及索引的⽅式如下 :
for index, column_ header in enumerate(header_ row) :
print(index, column_ header)
获取想要的数据 :
dates, highs, lows = [], [], []
for row in reader:
# 异常检查,忽略数据残缺⽂件
try :
current_date = datetime.strptime(row[0], %Y-%m-%d) # 转化为指定格式的⽇期格式
high = int(row[1])
low = int(row[3])
except ValueError:
print(current_date, missing date)
else:
dates.append(current_date)
highs.append(high)
lows.append(low)
⾄此,已经得到了最⾼温度和最低温度,下⾯开始可视化。
matplotlib可视化
matplotlib库是功能强⼤的Python绘图库。
直接上代码 :
# 指定分辨率和⼤⼩
fig = plt.figure(dpi = 128, figsize = (10, 6))
# 最⾼温度,红⾊
plt.plot(dates, highs, c = red)
# 最低温度,蓝⾊
plt.plot(dates, lows, c = blue)
# 最⾼最低温度之间填充浅蓝⾊,alpha表⽰透明度
plt.fill_ between(dates, highs, lows, facecolor = blue, alpha = 0.1)
# 图表标题
plt.title(Daily high and low temperatures, 2014, fontsize = 24)
# x轴,不指定,后续填 ⽇期
plt.xlabel(, fontsize = 16)
# ⾃动绘制 ⽇期标签,x轴,避免重叠
fig.autofmt_xdate()
# y轴
plt.ylabel(F, fontsize = 16)
# 轴上标签⼤⼩
plt.tic _ params(axis = both, which = major, labelsize = 16)
plt.show()
绘制和效果图如下 :
⼩结
借助Python强⼤的数据分析包,可以轻松明了地实现数据分析与可视化。
⽽且,从语法、简洁的⾓度来看,上⼿与维护都优于使⽤Sh ll编程。
参考资料
《Python编程——从⼊门到实践》
您可能关注的文档
- python信用卡违约预测分析-Python数据分析及可视化实例之银行信用卡违约预测(24)....pdf
- python信用卡违约预测分析-Python机器学习实战:信用卡欺诈检测.pdf
- python共享单车数据分析-共享单车数据可视化分析(PythonSeaborn).pdf
- python关联分析如何可视化-Python共享单车数据可视化分析.pdf
- python写股票指标-用Python做股票指标RSI分析.pdf
- python函数可视化心得-最近关于数据可视化方面交流的心得感悟.pdf
- python分析两组数据的差异-3步搞懂Python数据分析关键点.pdf
- python分析两组数据的差异-十分钟搞懂“Python数据分析”.pdf
- python分析数据的变化趋势及前景-Python数据分析三板斧.pdf
- python分析每月销售数据-如何用Python分析销售数据.pdf
- Python分析股票数据可视化.pdf
- Python分析近2000条“数据分析”相关岗位招聘信息.pdf
- python分析鸢尾花数据-iris鸢尾花数据集最全数据分析.pdf
- python医疗系统设计-使用Python抓取、分析、可视化—万家医疗诊所信息.pdf
- Python可以用来干什么.docx
- Python可以这样学(第四季:数据分析与科学计算可视化)PPT模板.pptx
文档评论(0)