从 NOAA API 获取天气数据
2023-10-30 09:46:37
利用 Power Query 记录从 NOAA API 提取天气数据:分步指南
摘要
作为数据分析领域备受推崇的工具,Power BI 以其强大的数据建模和可视化功能著称。其中,Power Query (PQ) 作为 Power BI 内置的数据清洗工具,可以帮助我们轻松从各种来源获取、转换和清理数据。本文将通过一个详细的分步指南,向您展示如何使用 PQ 记录从美国国家海洋和大气管理局 (NOAA) 提供的天气数据 API 中抓取和处理数据,为进一步的数据分析做好准备。
步骤 1:获取数据
首先,我们需要从 NOAA API 中获取天气数据。为此,我们将使用 Json.Document
和 Web.Contents
函数,如下所示:
来源 = Json.Document(Web.Contents("https://www.ncdc.noaa.gov/cdo-web/api/v2/data?datasetid=GHCND&locationid=FIPS:36047&units=standard&limit=1000"))
步骤 2:转换数据
获取数据后,我们需要对其进行转换以符合我们的需求。
过滤数据: 我们只对特定日期范围内的天气数据感兴趣。因此,我们将使用 Table.Filter
函数过滤数据,如下所示:
已过滤来源 = Table.Filter(来源, each Date.IsInRange(DateTime.FromText([date]), #date(2023, 1, 1), #date(2023, 12, 31)))
选择列: 我们只需要以下列:
已选择列 = Table.SelectColumns(已过滤来源, {"date", "temperature", "precipitation"})
重命名列: 为了提高可读性,我们将为列提供更具说明性的名称:
已重命名列 = Table.RenameColumns(已选择列, {{#"date", "日期"}, {#"temperature", "气温 (华氏)"}, {#"precipitation", "降水 (英寸)"}}})
步骤 3:清理数据
处理缺失值: 天气数据中不可避免地会出现缺失值。我们将使用 Table.FillMissingValues
函数将这些值填充为 0:
已填充缺失值 = Table.FillMissingValues(已重命名列, {"气温 (华氏)", "降水 (英寸)"}, 0)
更改数据类型: 我们将日期和气温列转换为相应的类型:
已更改类型 = Table.TransformColumnTypes(已填充缺失值, {{#"日期", type date}, {#"气温 (华氏)", type number}})
步骤 4:整理数据
添加自定义列: 我们希望添加一个表示降水强度的自定义列:
已添加自定义列 = Table.AddColumn(已更改类型, "降水强度", each if [降水 (英寸)] > 0 then "有降水" else "无降水")
分组和汇总数据: 最后,我们按月份对数据进行分组并汇总气温和降水的平均值:
已分组 = Table.Group(已添加自定义列, {"日期"}, {"平均气温", "平均降水"}, {{"平均气温", Table.Mean, [气温 (华氏)]}, {"平均降水", Table.Mean, [降水 (英寸)]}})
结论
通过利用 Power Query 记录,我们成功地从 NOAA API 中抓取、转换、清理和整理了天气数据。这些数据现在可以用于进一步的数据分析和可视化,以揭示天气模式、趋势和异常情况。通过结合 Power BI 的强大功能,我们可以从复杂的数据中提取有意义的见解,做出明智的决策并优化我们的业务成果。
常见问题解答
-
Power Query 记录有哪些优势?
- 易于使用: 直观的界面和用户友好的功能,让即使是初学者也可以轻松使用。
- 强大的数据转换: 提供丰富的函数和转换,可以执行各种数据操作,包括过滤、排序、分组和聚合。
- 数据清理自动化: 帮助自动化数据清理任务,例如处理缺失值、更改数据类型和删除重复项。
- 可重用性: 创建的查询可以保存和重复使用,从而节省时间和精力。
-
我如何访问 NOAA 天气数据 API?
- 访问 NOAA 官网:https://www.ncdc.noaa.gov/cdo-web/
- 注册一个免费帐户。
- 使用 API 密钥访问 API。
-
Power Query 记录与 Power BI Desktop 有什么关系?
- Power Query 记录是 Power BI Desktop 中内置的数据获取和转换工具。
- 使用 Power Query 记录获取和转换数据后,可以将其加载到 Power BI Desktop 中进行进一步分析和可视化。
-
如何处理大型数据集?
- Power Query 记录具有增量刷新功能,可以逐步处理大型数据集,而不会降低系统性能。
- 可以使用 Power Query 记录中的采样技术来处理更大规模的数据集。
-
我可以将 Power Query 记录与其他工具一起使用吗?
- 是的,Power Query 记录可以与其他工具集成,例如 Excel、Azure Data Factory 和第三方数据源。