如何在R中找到列的平均值

时间:2016-06-19 15:40:52

标签: r csv dataframe mean

这是我正在使用的csv文件。

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

这是我尝试找到“mcs1”列的平均值。

mean(my.xldataset$mcs1)

我得到的回报是“NA”。我到底哪里错了?谢谢

2 个答案:

答案 0 :(得分:1)

可能是列中有NA个值,因此请使用na.rm=TRUE

mean(my.xldataset$mcs1, na.rm=TRUE)

或者列可能不是numeric。在这种情况下,请检查

str(my.xldataset)

class(my.xldataset$mcs1)

通过检查数据集,

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

NA元素确实位于数据集中。因此,请使用na.rm=TRUE

答案 1 :(得分:1)

正如@akrun所说,这可能是因为该列数据中的NA。 您也可以运行:

summary(my.xldataset$mcs1)

将报告最小值,最大值,中位数,四分位数等...以及给出NA的数量:)

   Min. 1st Qu.  Median    Mean 3rd Qu.    Max.    NA's 
  6.677  30.210  42.440  40.980  52.730  69.940     207