||
完整文档请参考 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提出的一个解决方案, 举例如下:
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"
2. 用UTF编码的转义字符。
未能查到从GB2312或者GB18030转换为UTF8字符的算法。 但是有一种方式可以实现的。 那就是使用 openxlsx程序包先将字符以xlsx格式保存在Excel文件中, 保存后用read.xlsx读取, 生成了UTF8转义字符串。 经过转换后的字符串可以在R程序包中正常处理了。
Archiver|手机版|科学网 ( 京ICP备07017567号-12 )
GMT+8, 2024-12-22 00:46
Powered by ScienceNet.cn
Copyright © 2007- 中国科学报社