R语言【rgbif】——如何从GBIF网站上获取大量数据?

2024-02-27 16:28

本文主要是介绍R语言【rgbif】——如何从GBIF网站上获取大量数据?,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Package rgbif version 3.7.9


Description

GBIF提供了两种获取分布数据的方法:通过/occurrence/search路径(参见occ_search()),或者通过/occurrence/download(参见下面的许多函数)。

occ_search()更适合较小的数据,而occ_download*()函数更适合较大的数据请求。


Settings

您将使用occ_download()启动下载。您需要从您的GBIF配置文件中提供该功能设置:您的用户名、密码和电子邮件。使用该功能需要设置这三项。您可以通过以下三种方式之一指定它们:

  • 将它们作为参数传递给 occ_download 

  • 使用R选项:在当前R会话中使用options()函数作为选项,或者在.Rprofile文件中设置它们,之后它们将被自动读入

  • 使用环境变量:在当前R会话中使用Sys.setenv()函数作为环境变量,或者在. Renviron /.bash_profile或类似的文件中设置它们,之后它们将自动读入


Beware

你不能执行那么多下载,所以要明智地计划。请参阅下面的速率限制。


Rate limiting

如果你试图启动太多的下载,你会收到420 "Enhance Your Calm"回应。如果所有GBIF用户的总数少于100个,那么一次可以运行3个。如果有更多,那么每个用户只能被限制为1个。这些数字可能会有变化。


Functions

occ_download():开始下载

occ_download_prep():准备下载请求

occ_download_queue():在队列中启动多个下载

occ_download_cached():检查GBIF帐户中已经下载的文件

occ_download_wait():重新运行occ download meta(),直到准备好

occ_download_meta():获取单次下载的元数据进度

occ_download_list():列出你的下载

occ_download_cancel():取消一个下载

occ_download_cancel_staged():取消状态为RUNNING或PREPARING的作业

occ_download_get():检索下载

occ_download_import():从本地文件系统导入下载文件

occ_download_datasets():列出可供下载的数据集

occ_download_datasets_activity():列出数据集的下载活动


Query length

GBIF对下载查询的限制为12,000个字符。这意味着你可以有一个相当长的查询,但在某些时候,它可能会导致GBIF方面的错误,你将不得不把你的查询分成几个。


Download status

以下状态可以在任何下载中找到:

  • PREPARING:刚刚由用户提交并等待处理(通常只有几秒钟)
  • RUNNING:创建过程(通常需要1-15分钟)
  • FAILED:发生了意想不到的事情
  • KILLED:用户决定在作业处于准备或运行阶段时中止作业
  • SUCCEEDED:已创建下载并通知用户
  • FILE_EARSED:根据保留策略删除下载,参见https://www.gbif.org/faq?question=for-how-long-will-does-gbif-store-downloads

这篇关于R语言【rgbif】——如何从GBIF网站上获取大量数据?的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/752987

相关文章

从基础到高级详解Go语言中错误处理的实践指南

《从基础到高级详解Go语言中错误处理的实践指南》Go语言采用了一种独特而明确的错误处理哲学,与其他主流编程语言形成鲜明对比,本文将为大家详细介绍Go语言中错误处理详细方法,希望对大家有所帮助... 目录1 Go 错误处理哲学与核心机制1.1 错误接口设计1.2 错误与异常的区别2 错误创建与检查2.1 基础

Python版本信息获取方法详解与实战

《Python版本信息获取方法详解与实战》在Python开发中,获取Python版本号是调试、兼容性检查和版本控制的重要基础操作,本文详细介绍了如何使用sys和platform模块获取Python的主... 目录1. python版本号获取基础2. 使用sys模块获取版本信息2.1 sys模块概述2.1.1

Linux下利用select实现串口数据读取过程

《Linux下利用select实现串口数据读取过程》文章介绍Linux中使用select、poll或epoll实现串口数据读取,通过I/O多路复用机制在数据到达时触发读取,避免持续轮询,示例代码展示设... 目录示例代码(使用select实现)代码解释总结在 linux 系统里,我们可以借助 select、

Java发送SNMP至交换机获取交换机状态实现方式

《Java发送SNMP至交换机获取交换机状态实现方式》文章介绍使用SNMP4J库(2.7.0)通过RCF1213-MIB协议获取交换机单/多路状态,需开启SNMP支持,重点对比SNMPv1、v2c、v... 目录交换机协议SNMP库获取交换机单路状态获取交换机多路状态总结交换机协议这里使用的交换机协议为常

Go语言中json操作的实现

《Go语言中json操作的实现》本文主要介绍了Go语言中的json操作的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧... 目录 一、jsOChina编程N 与 Go 类型对应关系️ 二、基本操作:编码与解码 三、结构体标签(Struc

MyBatis/MyBatis-Plus同事务循环调用存储过程获取主键重复问题分析及解决

《MyBatis/MyBatis-Plus同事务循环调用存储过程获取主键重复问题分析及解决》MyBatis默认开启一级缓存,同一事务中循环调用查询方法时会重复使用缓存数据,导致获取的序列主键值均为1,... 目录问题原因解决办法如果是存储过程总结问题myBATis有如下代码获取序列作为主键IdMappe

C#使用iText获取PDF的trailer数据的代码示例

《C#使用iText获取PDF的trailer数据的代码示例》开发程序debug的时候,看到了PDF有个trailer数据,挺有意思,于是考虑用代码把它读出来,那么就用到我们常用的iText框架了,所... 目录引言iText 核心概念C# 代码示例步骤 1: 确保已安装 iText步骤 2: C# 代码程

Pandas处理缺失数据的方式汇总

《Pandas处理缺失数据的方式汇总》许多教程中的数据与现实世界中的数据有很大不同,现实世界中的数据很少是干净且同质的,本文我们将讨论处理缺失数据的一些常规注意事项,了解Pandas如何表示缺失数据,... 目录缺失数据约定的权衡Pandas 中的缺失数据None 作为哨兵值NaN:缺失的数值数据Panda

C++中处理文本数据char与string的终极对比指南

《C++中处理文本数据char与string的终极对比指南》在C++编程中char和string是两种用于处理字符数据的类型,但它们在使用方式和功能上有显著的不同,:本文主要介绍C++中处理文本数... 目录1. 基本定义与本质2. 内存管理3. 操作与功能4. 性能特点5. 使用场景6. 相互转换核心区别

python语言中的常用容器(集合)示例详解

《python语言中的常用容器(集合)示例详解》Python集合是一种无序且不重复的数据容器,它可以存储任意类型的对象,包括数字、字符串、元组等,下面:本文主要介绍python语言中常用容器(集合... 目录1.核心内置容器1. 列表2. 元组3. 集合4. 冻结集合5. 字典2.collections模块