R

时间:2017-07-17 14:07:05

标签: r function

当我尝试运行以下代码时,我收到错误:

  

表中的错误(GD_DATA $ Area.x,GD_DATA $ Input):
    所有参数必须具有相同的长度

当我自己运行它(即不是函数的一部分)时它工作正常但我希望能够在函数中运行它以使代码更有效/可读。

谁能看到我出错的地方?

当我在函数外部运行代码时,它会生成一个子表量作为列,表格作为行的表格,单元格中的值表示每个区域中具有一定数量子项的家庭数量。

错误的代码:

 Frequencies<- function(column, df){
 df = as.data.frame.matrix(table(GD_DATA$Area.x, GD_DATA$column))
 }
Frequencies(No.Of.Children, No_Child)

下一个代码运行正常并提供正确的输出:

No_Child<-as.data.frame.matrix(table(GD_DATA$Area.x, GD_DATA$No.Of.Children))

1 个答案:

答案 0 :(得分:0)

尝试

Frequencies<- function(Input){
 output = as.data.frame.matrix(table(GD_DATA$Area.x, GD_DATA[[Input]])
 }
Frequencies("No.Of.Children")
  • 您的函数似乎没有使用No_child参数。
  • 当您使用GD_DATA $ Input时,您试图从数据帧中获取列输入,而不是输入的值。 (希望解释清楚)