如何在R中求列的平均值

如何在R中求列的平均值,r,csv,dataframe,mean,R,Csv,Dataframe,Mean,这是我正在使用的csv文件 my.xldataset <- read.csv('http://www.math.smith.edu/sasr/datasets/help.csv') 我得到的回报是一个“NA”。我到底哪里出了问题?谢谢可能是列中有NA值,所以使用NA.rm=TRUE mean(my.xldataset$mcs1, na.rm=TRUE) 或者可能是该列不是数值。在这种情况下,请检查 str(my.xldataset) 或 通过检查数据集 any(is.na(my.x

这是我正在使用的csv文件

my.xldataset <- read.csv('http://www.math.smith.edu/sasr/datasets/help.csv')

我得到的回报是一个“NA”。我到底哪里出了问题?谢谢

可能是列中有
NA
值,所以使用
NA.rm=TRUE

mean(my.xldataset$mcs1, na.rm=TRUE)
或者可能是该列不是
数值
。在这种情况下,请检查

str(my.xldataset)


通过检查数据集

any(is.na(my.xldataset$mcs1))
#[1] TRUE

NA
元素确实在数据集中。因此,使用@akrun指出的
na.rm=TRUE
,这可能是因为该列数据中的
na
。 您还可以运行:

summary(my.xldataset$mcs1)
其中将报告最小值、最大值、中值、四分位数等。。。以及给你NA的号码:)


正如@akrun所说,您的数据框中有
NA
值,因此需要使用
NA。rm=TRUE
帮助(平均值)
也会引导您找到答案。为什么要将其标记为重复。这是另一个问题@里奇:为什么会有反对票?平均值列在summary()的输出中。输出张贴在上面。它不仅提供了平均值,还提供了NA的平均值,并报告了NAs的数量。这怎么不能回答OP的问题?你是对的<代码>摘要不包括平均值。我取消了我的反对票。
any(is.na(my.xldataset$mcs1))
#[1] TRUE
summary(my.xldataset$mcs1)
   Min. 1st Qu.  Median    Mean 3rd Qu.    Max.    NA's 
  6.677  30.210  42.440  40.980  52.730  69.940     207