R语言【taxlist】——dissect_name():将科学名的各个组分解析出来

Package taxlist version 0.2.4


Description

根据命名法的解析程度和特定角色,包含分类单元用法名称(学名)的字符串由不同部分组成。

因此,带有名称的字符串可以分解成这些部分,同时部分的数量可能表明了分类等级。

该方法是 strsplit() 的包装器,如果在参数【repaste】中指明的话,还可以重新粘贴名称组分。


Usage

R 复制代码
dissect_name(x, split = " ", fixed = TRUE, repaste, ...)

Arguments

参数【x】:一个包含分类名称的字符向量。

参数【split,fixed,...】:传递给 strsplit() 的参数。

参数【repaste】:一个整数向量,指示输出的名称的组分。


Value

一个字符矩阵,在输入向量中具有与名称相同数量的行。如果指定了reaste,那么输出将是一个字符向量。


Examples

++预备:十个变种名称:++

R 复制代码
sp_list <- subset(x = Easplist, subset = Level == "variety", slot = "relations")
sp_list <- accepted_name(sp_list)[c(1:10), "TaxonName"]

++直接解析名称:++

R 复制代码
dissect_name(sp_list)
复制代码
      [,1]          [,2]            [,3]   [,4]               
 [1,] "Euphorbia"   "inaequilatera" "var." "dentata"          
 [2,] "Oldenlandia" "corymbosa"     "var." "caespitosa"       
 [3,] "Pilea"       "usambarensis"  "var." "veronicifolia"    
 [4,] "Trifolium"   "semipilosum"   "var." "glabrescens"      
 [5,] "Pentas"      "lanceolata"    "var." "nemorosa"         
 [6,] "Stachys"     "aculeolata"    "var." "aculeolata"       
 [7,] "Pimpinella"  "oreophila"     "var." "kilimandscharica" 
 [8,] "Cyperus"     "denudatus"     "var." "lucenti-nigricans"
 [9,] "Achyranthes" "aspera"        "var." "sicula"           
[10,] "Digitaria"   "diagonalis"    "var." "uniglumis"

++解析名称,输出前两个组分:++

R 复制代码
dissect_name(sp_list, repaste = c(1:2))
复制代码
 [1] "Euphorbia inaequilatera" "Oldenlandia corymbosa"   "Pilea usambarensis"     
 [4] "Trifolium semipilosum"   "Pentas lanceolata"       "Stachys aculeolata"     
 [7] "Pimpinella oreophila"    "Cyperus denudatus"       "Achyranthes aspera"     
[10] "Digitaria diagonalis" 
相关推荐
啟明起鸣5 分钟前
【网络编程】从与 TCP 服务器的对比中探讨出 UDP 协议服务器的并发方案(C 语言)
服务器·c语言·开发语言·网络·tcp/ip·udp
007php00713 分钟前
Redis高级面试题解析:深入理解Redis的工作原理与优化策略
java·开发语言·redis·nginx·缓存·面试·职场和发展
九章云极AladdinEdu26 分钟前
深度学习优化器进化史:从SGD到AdamW的原理与选择
linux·服务器·开发语言·网络·人工智能·深度学习·gpu算力
axban28 分钟前
QT M/V架构开发实战:QStandardItemModel介绍
开发语言·数据库·qt
猿究院-赵晨鹤42 分钟前
String、StringBuffer 和 StringBuilder 的区别
java·开发语言
I'm a winner1 小时前
第五章:Python 数据结构:列表、元组与字典(一)
开发语言·数据结构·python
葵野寺1 小时前
【RelayMQ】基于 Java 实现轻量级消息队列(九)
java·开发语言·rabbitmq·java-rabbitmq
大白同学4211 小时前
【C++】C++11介绍(Ⅱ)
开发语言·c++
你怎么知道我是队长2 小时前
C语言---存储类
c语言·开发语言
XIAOYU6720132 小时前
金融数学专业需要学哪些数学和编程内容?
开发语言·matlab·金融