创建tibble时调用c()函数出现未使用参数错误,求解决方案
解决R语言创建tibble时
c(4,5,6)报错的问题 错误原因
这个错误的核心是当前环境中的c()函数不是base包默认的向量合并函数——大概率是你之前不小心定义了名为c的变量,或者加载的某个包覆盖了c函数,导致调用c(4,5,6)时,被篡改的c不支持多参数输入。
验证方法
在控制台输入以下代码,检查c的类型:
c
如果输出不是类似function (..., recursive = FALSE) .Primitive("c")的内容,而是数值、字符或其他自定义函数,就说明c被覆盖了。
解决步骤
方法1:删除覆盖
c的变量/函数
如果是定义了变量c(比如c <- 10),直接执行以下命令删除:rm(c)之后重新运行你的tibble创建代码即可。
方法2:明确调用base包的
c函数
若不想修改环境变量,也可以在代码中直接指定使用base包的c函数,修改后的代码如下:my_tibble_1 <- tibble( nums = base::c(4, 5, 6), chars = base::c("hej", " 你好", " こんにちは"), cplxnums = base::c("4+8i", "3+5i", "3+4i") )
额外提示
后续尽量避免用c作为变量名,它是R的内置函数名,用它当变量名极易引发这类冲突。
内容的提问来源于stack exchange,提问作者fibby
相关产品推荐
相关产品推荐

