check.names的cbind错误

时间:2013-07-23 12:40:09

标签: r dataframe

以下是设置cbindcheck.names=TRUE因错误而失败的示例。

data(airquality)
airQualityBind = cbind(airquality, airquality, check.names = TRUE)

任何人都可以解释如何让这个工作。我了解cbind是对data.frame的调用以及以下作品:

airQualityBind = data.frame(airquality, airquality, check.names = TRUE)

但我想了解为什么cbind会抛出错误。

1 个答案:

答案 0 :(得分:3)

您的cbind调用失败的原因不是因为您有重复的名称,而是因为check.names不是cbind.data.frame的正式参数。它实际上将您的check.names参数传递给data.frame本身,这会失败,因为它传递check.names=FALSE参数。因此,错误是数据框中data.frame重复列名称的重复形式参数之一。

要使其发挥作用,只需执行cbind(airquality, airquality)(这将导致重复的列名称)或data.frame(airquality, airquality)(将对其进行重复数据删除)。