3

这是一个在设置cbind时失败并出现错误的示例check.names=TRUE

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

谁能解释如何让它发挥作用。我知道这cbinddata.frame对以下工作的调用:

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

但我想了解为什么cbind会引发错误。

4

1 回答 1

3

你的cbind调用失败不是因为你有重复check.names的名字,而是因为不是cbind.data.frame. 它实际上将您的check.names论点向下传递给data.frame它自己,这失败了,因为它传递了一个check.names=FALSE论点。因此,错误是重复的形式参数之一data.frame而不是数据框中重复的列名。

要让它工作,只需执行cbind(airquality, airquality)(这将导致重复的列名)或data.frame(airquality, airquality)(这将重复它们)。

于 2013-07-23T12:58:57.223 回答