plantlist程序包已经恢复从Rforge下载或安装

完整文档请参考 http://blog.sciencenet.cn/blog-255662-846673.html

R程序包plantlist可以批量查询高等植物的APG科属、科编号以及学名在ThePlantList网站数据库中的接受状态及对应接受名等。速度快过taxize等同类程序包10倍左右,函数参数便于理解,简单易用。除了从github/helixcn安装外,现在已恢复从Rforge安装。plantlist是本人在2014年1月在中科院昆明植物研究所主讲R语言课程时编写的,主要用来辅助进行系统发育多样性研究以及方便标本馆管理。

随着R软件的不断升级, plantlist程序包旧版本中的一些编码问题逐渐暴露。 特别是内置接受名和异名数据库中,命名人中出现的非ASCII字符在转换过程中会出错, 这个错误甚至导致Rforge上 (https://r-forge.r-project.org/R/?group_id=2052)plantlist程序包不能成功编译为windows版本。

正巧北京大学池秀莲老师咨询如何安装plantlist的问题,于是决定解决这一问题。

非ASCII字符不能成功转换, 目前似乎只有两种方法:

  1. 去掉非ASCII字符,或者用近似的字母代替原来的字母。 

StackOverFlow上Wickham提出的一个解决方案, 举例如下: 

1
2
3
4
5
6
x <- c("Ekstru00f8m", "Ju00f6reskog", "biu00dfchen Zu00fcrcher")
x
#> [1] "Ekstrøm"         "Jöreskog"        "bißchen Zürcher"

stringi::stri_trans_general(x, "latin-ascii")
#> [1] "Ekstrom"          "Joreskog"         "bisschen Zurcher"
  1. 用UTF编码的转义字符。
    未能查到从GB2312或者GB18030转换为UTF8字符的算法。 但是有一种方式可以实现的。 那就是使用 openxlsx程序包先将字符以xlsx格式保存在Excel文件中, 保存后用read.xlsx读取, 生成了UTF8转义字符串。 经过转换后的字符串可以在R程序包中正常处理了。

img