这是一个例子,当设置了 check.names=TRUE
时,cbind
失败并出现错误。
data(airquality)
airQualityBind = cbind(airquality, airquality, check.names = TRUE)
谁能解释一下如何让它工作。我知道 cbind
是对 data.frame
的调用以及以下工作:
airQualityBind = data.frame(airquality, airquality, check.names = TRUE)
但我想了解为什么 cbind
会抛出错误。
最佳答案
您的 cbind
调用失败不是因为您有重复的名称,而是因为 check.names
不是 cbind.data.frame的正式参数
。它实际上将你的 check.names
参数传递给 data.frame
本身,这失败了,因为它也传递了一个 check .names=FALSE
参数。因此,该错误是 data.frame
的重复形式参数之一,不是数据框中的重复列名。
要使其正常工作,只需执行 cbind(airquality, airquality)
(这将导致列名称重复)或 data.frame(airquality, airquality)
(这将对它们进行重复数据删除)。
关于r - check.names 的 cbind 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17810470/