tidyr包extract函数调用报错提示缺失pattern参数问题求助
tidyr extract 函数调用报错解决方案
问题原因
- 报错核心为R环境的函数命名空间冲突:除tidyr外,你当前环境还加载了其他包含同名
extract函数的包(如raster、magrittr、stringi等),且后者命名空间优先级更高,你实际调用的并非tidyr提供的extract函数,才会出现参数不匹配的报错。 - 你可以运行
find("extract")查看当前环境中所有同名函数的加载顺序,排在首位的就是当前实际被调用的版本。
解决方法
最稳妥的方案是调用时明确指定包名,规避命名空间冲突,修改后代码如下:
library(tidyr) df <- data.frame( full_name = c("Peter Paul", "Mike Scott") ) df %>% tidyr::extract(col = full_name, into = c("First_name", "Second_Name"), regex = "(.*)\\s(.*)")
运行上述代码即可正常拆分得到First_name和Second_Name两个字段。
内容的提问来源于stack exchange,提问作者Chris Ruehlemann
相关产品推荐
相关产品推荐

