错误:在RStudio中运行代码时未找到对象

错误:在RStudio中运行代码时未找到对象,r,rstudio,R,Rstudio,我对R非常陌生,刚刚开始编写smalls函数。在这里,我编写了一个函数,它将数据帧作为参数,并返回每列的平均值 代码: n = c(12,13,14,16,16) m = c(11,2,23,45,67) a = c(34,343,5,2,1) b = c(88,33,2,1,44) db = data.frame (n,m,a,b ) db n m a b 1 12 11 34 88 2 13 2 343 33 3 14 23 5 2 4 16 45 2 1

我对R非常陌生,刚刚开始编写smalls函数。在这里,我编写了一个函数,它将数据帧作为参数,并返回每列的平均值

代码:

n = c(12,13,14,16,16)
m = c(11,2,23,45,67)
a = c(34,343,5,2,1)
b = c(88,33,2,1,44)

db = data.frame (n,m,a,b )

db
   n  m   a  b
1 12 11  34 88
2 13  2 343 33
3 14 23   5  2
4 16 45   2  1
5 16 67   1 44

mean.dataframe = function (df)
{
    for (i in 1:ncol(df))
    {
        j[i]= mean(df[[i]])
    }

    print (j)
}


avgcol = mean.dataframe(db)
j[i]=平均值(df[[i]])中的错误:未找到对象“j”


我不明白这个错误。当我在Rstudio中运行此命令时,会出现此错误。但是,在R中它不起作用。

此代码不起作用,与RStudio无关。当您键入
j[i]
时,R将考虑
j
i
第th个元素,但未定义
j
。在以下情况之前定义它:

mean.dataframe = function (df)
{
    j = rep(NA,ncol(df))
    for (i in 1:ncol(df))
    {
        j[i]= mean(df[[i]])
    }

    print (j)
}

你为什么不直接用colMeans

colMeans (x)

你也可以看看
colMeans
。的确,但问题是:为什么这个代码不起作用?@StéphaneLauren,
colMeans
没有回答这个问题。这是一个不同的解决方案,已经在comments@DavidArenburg这并不重要,但问题的重点不是:如何计算列的意思?而是:为什么这段代码不起作用。所以这根本不能回答这个问题。我这么说是因为我已经尝试过对我的一些问题给出这样的答案。