api数据接口是什么(免费数据恢复软件推荐)
2022-01-12 18:56:05

许多研究人员都对直接从网站获取新的数据很感兴趣。但是从网站上收集大量数据可能是不切实际的。当手动收集数据后,很容易出现人为错误。当自动收集数据时时,它可能会违反网站的服务条款。

每天使用API获取数据的你,真的了解API吗?它可不简单

所以,研究人员通常依赖一个被称为API的工具,该工具代表应用程序编程接口。Web API根据规则提供了网站和用户之间的通信方式。特别是,它们允许用户通过从特定网站下的数据库请求数据,从而快速获得明确定义的数据类型。(这不是唯一的API。例如,智能手机应用程序经常使用API在你的设备和应用程序的数据库之间来回传送数据,但是在这篇文章中,我们关注的是从网站向用户提供数据的API。)

许多大公司以及政府机构都创建了公共API。这些组织的数据可以很容易的访问,以鼓励开发人员使用他们的平台。在Pew研究中心,作者经常使用API为研究收集信息。常见的有我们在社交媒体中的机器人、关于枪支的Google搜索、Facebook上的科学页面以及关于政府政策的公开评论中(都使用了API)。

API如何提供数据

API提供各种形式的数据,但JSON是其中最受欢迎的。JSON是用于构造数据的有用文件格式,因为它保存了与制表符或逗号分隔文件(如.tsv和.csv文件)相关的更多层次结构和关于数据集的元信息。根据你用于数据分析时使用的编程语言,有些库可以使JSON数据操作变得直观。例如,在R统计语言中,可以使用jsonlite库将API中的数据转换为熟悉的R对象和类。

API可以用于不同的编程语言

为了在各种用不同语言编写的计算机程序(如Java、Python、R等)上有效地与API进行交互,研究人员依赖于API”封装器”。这些工具(存在于大多数流行的API中)允许研究人员在使用他们自己选择的编程语言的同时直接从API请求数据。下面,我们以世界银行的API为例,使用R访问数据。

示例:如何与世界银行的API进行交互

世界银行API为研究人员提供了数百个关于世界各国健康、财富和文化的变量。为了展示如何使用这个API,我们可以编写一个脚本来获取一些变量并绘制它们。在这种情况下,我们将使用世界银行提供的识别码搜索变量,然后将变量提取到R的内存中。

下面的代码使用WDI包,这是一个包含世界银行API封装的R包。 (如上所述,封装器是一个函数或一组函数,用于执行对API的调用,并将结果转换为比API本身更有用的内容。)要执行此代码,首先必须安装WDI软件包以及devtools、ggplot2、gganimate、data.table和dplyr。你可以使用以下命令为R安装这些函数:

每天使用API获取数据的你,真的了解API吗?它可不简单

我们还将为动画安装gganimate附加软件包:

每天使用API获取数据的你,真的了解API吗?它可不简单

现在安装了这些软件包,让我们将它们加载到工作内存中:

每天使用API获取数据的你,真的了解API吗?它可不简单

WDI包提供了一种便捷的方式来搜索世界银行API以寻找可能值得研究变量。下面,我们在”string”字段之后指定要搜索的单词,以及查找它的位置”name”字段。这样,我们可以看到所有与道路基础设施、免疫率和任何其他变量有关的变量与人均衡量。

每天使用API获取数据的你,真的了解API吗?它可不简单

搜索返回变量列表及其相应的代码。现在我们已经知道了我们感兴趣的变量的代码,我们可以从API调用数据。我们用WDI函数来做到这一点。在这个函数调用中,我们提供了我们想要的国家的参数、变量代码、第一年的数据、最后一年的数据以及可选的”extra”字段集。”extra”字段集是国家元数据——尝试关闭此选项,看看会发生什么。

每天使用API获取数据的你,真的了解API吗?它可不简单

数据以data.table的形式加载到内存中,这是一种矩形数据框架,可以轻松进行交互和分析。 存在的一个问题是变量名称不容易解释,所以让我们将它们转换为更直观的东西。我们使用dplyr软件包来实现这一点,该软件包提供了一组用于处理数据的工具。它有一个方便可读的语法。我们将使用”rename”命令来重命名变量。

每天使用API获取数据的你,真的了解API吗?它可不简单

接下来,让我们删除缺少的观测值,以便我们可以绘制数据。当然,你应该仔细考虑缺失的国家以及原因。

每天使用API获取数据的你,真的了解API吗?它可不简单
每天使用API获取数据的你,真的了解API吗?它可不简单

我们可以创建一个特定年份的收入和免疫率之间关系的可视化表示。我们将为每个国家绘制一个点,按照该国人口的对数大小来确定。我们也会绘制一般关系的黄线。

下图是一个使用ggplot2的静态图:

每天使用API获取数据的你,真的了解API吗?它可不简单
每天使用API获取数据的你,真的了解API吗?它可不简单

最后,我们将创建一个在一段时间内具有相同关系的动画。为此,请首先安装ImageMagick。 然后创建一个包含数据中所有年份的图表:

每天使用API获取数据的你,真的了解API吗?它可不简单

许多研究人员都对直接从网站获取新的数据很感兴趣。但是从网站上收集大量数据可能是不切实际的。当手动收集数据后,很容易出现人为错误。当自动收集数据时时,它可能会违反网站的服务条款。

每天使用API获取数据的你,真的了解API吗?它可不简单

所以,研究人员通常依赖一个被称为API的工具,该工具代表应用程序编程接口。Web API根据规则提供了网站和用户之间的通信方式。特别是,它们允许用户通过从特定网站下的数据库请求数据,从而快速获得明确定义的数据类型。(这不是唯一的API。例如,智能手机应用程序经常使用API在你的设备和应用程序的数据库之间来回传送数据,但是在这篇文章中,我们关注的是从网站向用户提供数据的API。)

许多大公司以及政府机构都创建了公共API。这些组织的数据可以很容易的访问,以鼓励开发人员使用他们的平台。在Pew研究中心,作者经常使用API为研究收集信息。常见的有我们在社交媒体中的机器人、关于枪支的Google搜索、Facebook上的科学页面以及关于政府政策的公开评论中(都使用了API)。

API如何提供数据

API提供各种形式的数据,但JSON是其中最受欢迎的。JSON是用于构造数据的有用文件格式,因为它保存了与制表符或逗号分隔文件(如.tsv和.csv文件)相关的更多层次结构和关于数据集的元信息。根据你用于数据分析时使用的编程语言,有些库可以使JSON数据操作变得直观。例如,在R统计语言中,可以使用jsonlite库将API中的数据转换为熟悉的R对象和类。

API可以用于不同的编程语言

为了在各种用不同语言编写的计算机程序(如Java、Python、R等)上有效地与API进行交互,研究人员依赖于API”封装器”。这些工具(存在于大多数流行的API中)允许研究人员在使用他们自己选择的编程语言的同时直接从API请求数据。下面,我们以世界银行的API为例,使用R访问数据。

示例:如何与世界银行的API进行交互

世界银行API为研究人员提供了数百个关于世界各国健康、财富和文化的变量。为了展示如何使用这个API,我们可以编写一个脚本来获取一些变量并绘制它们。在这种情况下,我们将使用世界银行提供的识别码搜索变量,然后将变量提取到R的内存中。

下面的代码使用WDI包,这是一个包含世界银行API封装的R包。 (如上所述,封装器是一个函数或一组函数,用于执行对API的调用,并将结果转换为比API本身更有用的内容。)要执行此代码,首先必须安装WDI软件包以及devtools、ggplot2、gganimate、data.table和dplyr。你可以使用以下命令为R安装这些函数:

每天使用API获取数据的你,真的了解API吗?它可不简单

我们还将为动画安装gganimate附加软件包:

每天使用API获取数据的你,真的了解API吗?它可不简单

现在安装了这些软件包,让我们将它们加载到工作内存中:

每天使用API获取数据的你,真的了解API吗?它可不简单

WDI包提供了一种便捷的方式来搜索世界银行API以寻找可能值得研究变量。下面,我们在”string”字段之后指定要搜索的单词,以及查找它的位置”name”字段。这样,我们可以看到所有与道路基础设施、免疫率和任何其他变量有关的变量与人均衡量。

每天使用API获取数据的你,真的了解API吗?它可不简单

搜索返回变量列表及其相应的代码。现在我们已经知道了我们感兴趣的变量的代码,我们可以从API调用数据。我们用WDI函数来做到这一点。在这个函数调用中,我们提供了我们想要的国家的参数、变量代码、第一年的数据、最后一年的数据以及可选的”extra”字段集。”extra”字段集是国家元数据——尝试关闭此选项,看看会发生什么。

每天使用API获取数据的你,真的了解API吗?它可不简单

数据以data.table的形式加载到内存中,这是一种矩形数据框架,可以轻松进行交互和分析。 存在的一个问题是变量名称不容易解释,所以让我们将它们转换为更直观的东西。我们使用dplyr软件包来实现这一点,该软件包提供了一组用于处理数据的工具。它有一个方便可读的语法。我们将使用”rename”命令来重命名变量。

每天使用API获取数据的你,真的了解API吗?它可不简单

接下来,让我们删除缺少的观测值,以便我们可以绘制数据。当然,你应该仔细考虑缺失的国家以及原因。

每天使用API获取数据的你,真的了解API吗?它可不简单
每天使用API获取数据的你,真的了解API吗?它可不简单

我们可以创建一个特定年份的收入和免疫率之间关系的可视化表示。我们将为每个国家绘制一个点,按照该国人口的对数大小来确定。我们也会绘制一般关系的黄线。

下图是一个使用ggplot2的静态图:

每天使用API获取数据的你,真的了解API吗?它可不简单
每天使用API获取数据的你,真的了解API吗?它可不简单

最后,我们将创建一个在一段时间内具有相同关系的动画。为此,请首先安装ImageMagick。 然后创建一个包含数据中所有年份的图表:

每天使用API获取数据的你,真的了解API吗?它可不简单
未解决
您可能还需要
天天领红包,单单有红包
api管理系统php源码(Api国内PHP开源接口框架)
api接口是什么意思,盘点SDK和API的区别
钉钉文档内的语音速记文件可以下载吗?
没有绑定支付宝能发起群收款吗?
5G泡沫严重,5G用户数竟然比5G手机累计销量多近1.5亿
组织构架内的外部联系人能使用钉钉F1视频会议设备发起会议吗
50岁的人手里只有三千元,现在能做哪些小生意,收入比上班强
我邀请员工加入对方并未开启需要验证,为什么需要对方同意才可以加入呢?
PC端消息链接如何在侧边栏打开?(开放平台)
51岁的人没文化没技术,三千元想在农村搞养殖,养什么回本快
app初期推广怎么做,品牌初期推广的几个妙招
app初期怎么推广有效,推广app的方法及经验分享
app初期上线该怎么做,谷歌应用商店刷排名方法
app创业要考虑的因素有哪些,最热创业app平台推荐
app创业步骤有哪些,最热创业app软件推荐
app内容运营是做什么的,内容运营岗位职责
app内容营销模式有哪些,做好营销推广的9大手段
app关键词排名怎么优化(分享app关键词优化方)
app关键词排名怎么优化(4种优化方法及注意事项)
app做广告怎么收费(app打广告的收费及3大流程)
app优化的内容及策略(最值推荐的5大策略)
app优化方案,快速提高app应用市场排名的五个方法
app付费推广渠道有哪些(常用的7种推广渠道)
app付费推广有哪些形式,五种app付费推广方法
app产品运营模式有哪些(附淘客app的4种运营模式)
app产品运营模式有哪些(浅谈这5大运营模式)
app产品设计的思路和方法(全面了解app产品设计)
app产品设计包括哪些方面(app产品设计最核心的5大方面)
app产品经理需要的技能(必须掌握的5项技能)
app产品经理做什么(必须具备的13个基本职责)
正在加载...