章节主张
一旦面对真实数据文件,编程能力就会从语法练习升级为数据理解、清洗和结构转换能力。
中文释读
模拟数据和教材例子总归很干净,真正世界的数据却常常格式不统一、字段不完整、需要预处理。作者让你在这一章开始接触这种现实摩擦,是非常关键的训练。你会发现,所谓数据分析,前半程往往不是画图,而是把数据收拾到能画图、能比较、能解释的状态。
关键论点
- 外部数据处理会暴露格式和质量问题。
- 数据清洗是可视化与分析的前置步骤。
- 代码让数据处理过程可复现。
行动清单
- 读数据前先看字段结构和缺失情况。
- 把清洗逻辑写成显式步骤。
- 清洗后再谈图表与结论。
源章节深读
第 16 章 下载数据 本章将从⽹上下载数据,并对其进⾏可视化。⽹上的数据多得令⼈难 以置信,其中⼤多未被仔细研究过。如果能够对这些数据进⾏分析, 就能发现别⼈没有发现的规律和关联。 我们将接触以两种常⻅格式( CSV 和 JSON )存储的数据并将其可视化。⾸ 先使⽤ Python 模块 csv 来处理以 CSV 格式存储的天⽓数据,找出两个截 然不同的地区在⼀段时间内的最⾼温度和最低温度。然后使⽤ Matplotlib 根 据下载的数据创建图形,展⽰这两个地区的温度变化。最后使⽤ json 模 块访问以 GeoJSON 格式存储的地震数据,并使⽤ Plotly 绘制⼀幅散点图, 展⽰这些地震的位置和强度。 阅读本章后,你将能够处理各种类型和格式的数据集,并对如何创建复杂 的图形有更深⼊的认识。要处理各种真实的数据集,必须能够访问并可视 化⽹络数据。 16.1 CSV ⽂件格式 要在⽂本⽂件中存储数据,最简单的⽅式是将数据组织为⼀系列以逗号分 隔的值( comma-separated values , CSV )并写⼊⽂件。这样的⽂件称为 CSV ⽂件。
16.1 CSV 文件格式
16.1 CSV ⽂件格式 要在⽂本⽂件中存储数据,最简单的⽅式是将数据组织为⼀系列以逗号分 隔的值( comma-separated values , CSV )并写⼊⽂件。这样的⽂件称为 CSV ⽂件。例如,下⾯是⼀⾏ CSV 格式的天⽓数据: "USW00025333","SITKA AIRPORT, AK US","2021-01-01",,"44","40" 这是美国阿拉斯加州锡特卡 2021 年 1 ⽉ 1 ⽇的天⽓数据,其中包含当天的 最⾼温度和最低温度,等等。
这节解决什么:这一节主要解决《第 16 章 下载数据》里一个更具体的子问题:16.1 CSV 文件格式 该怎样落到实际代码或项目动作上。
怎么用到自己的系统:不要只把它当书中的小节标题,最好把它改写成一个你能亲手运行、修改或调试的微练习。
提醒:常见误区是只看懂例子表面流程,却没有把这一节抽成自己能迁移的规则。
16.2 制作全球地震散点图:GeoJSON 格式
16.2 制作全球地震散点图: GeoJSON 格式 本节将⾸先下载⼀个数据集,其中记录了⼀个⽉内全球发⽣的所有地震, 然后制作⼀幅散点图,展⽰这些地震的位置和震级。这些数据是以 GeoJSON 格式(基于 JSON 的地理空间信息数据交换格式)存储的,因此 要使⽤ json 模块来处理。我们将使⽤ Plotly 来创建图形,清楚地指出全球 的地震分布情况。
这节解决什么:这一节主要解决《第 16 章 下载数据》里一个更具体的子问题:16.2 制作全球地震散点图:GeoJSON 格式 该怎样落到实际代码或项目动作上。
怎么用到自己的系统:不要只把它当书中的小节标题,最好把它改写成一个你能亲手运行、修改或调试的微练习。
提醒:常见误区是只看懂例子表面流程,却没有把这一节抽成自己能迁移的规则。
16.3 小结
16.3 ⼩结 在本章中,你学习了如何使⽤现实世界中的数据集,包括如何处理 CSV 和 GeoJSON ⽂件,以及如何提取感兴趣的数据。利⽤以往的天⽓数据,你更 深⼊地学习了如何使⽤ Matplotlib ,包括如何使⽤ datetime 模块,以及如 何在同⼀个图形中绘制多个数据系列。你还学习了如何使⽤ Plotly 绘制呈 现地震数据的散点图,以及如何定制散点图的样式。 有了使⽤ CSV 和 JSON ⽂件的经验后,你就⼏乎能够处理要分析的任何数 据了。
这节解决什么:这一节主要解决《第 16 章 下载数据》里一个更具体的子问题:16.3 小结 该怎样落到实际代码或项目动作上。
怎么用到自己的系统:不要只把它当书中的小节标题,最好把它改写成一个你能亲手运行、修改或调试的微练习。
提醒:常见误区是只看懂例子表面流程,却没有把这一节抽成自己能迁移的规则。
辨析题
为什么很多数据项目最花时间的不是分析,而是前处理?
因为真实数据很少是直接可用的,结构混乱和质量问题必须先被整理。