为了账号安全,请及时绑定邮箱和手机立即绑定

计算R中矩阵的每列的平均值

计算R中矩阵的每列的平均值

开心每一天1111 2019-09-03 17:09:26
我在R工作室的R工作。我需要计算数据帧每列的平均值。 cluster1  // 5 by 4 data frame mean(cluster1) // 我有 :  Warning message:  In mean.default(cluster1) :  argument is not numeric or logical: returning NA但我可以使用  mean(cluster1[[1]])得到第一列的平均值。如何获得所有列的方法?任何帮助,将不胜感激。
查看完整描述

3 回答

?
慕盖茨4494581

TA贡献1850条经验 获得超11个赞

你可以使用colMeans:


### Sample data

set.seed(1)

m <- data.frame(matrix(sample(100, 20, replace = TRUE), ncol = 4))


### Your error

mean(m)

# [1] NA

# Warning message:

# In mean.default(m) : argument is not numeric or logical: returning NA


### The result using `colMeans`

colMeans(m)

#   X1   X2   X3   X4 

# 47.0 64.4 44.8 67.8 


查看完整回答
反对 回复 2019-09-03
?
慕的地6264312

TA贡献1817条经验 获得超6个赞

您可以使用'apply'来运行函数或矩阵或数值数据框的行或列:


cluster1 <- data.frame(a=1:5, b=11:15, c=21:25, d=31:35)


apply(cluster1,2,mean)  # applies function 'mean' to 2nd dimension (columns)


apply(cluster1,1,mean)  # applies function to 1st dimension (rows)


sapply(cluster1, mean)  # also takes mean of columns, treating data frame like list of vectors



查看完整回答
反对 回复 2019-09-03
  • 3 回答
  • 0 关注
  • 14420 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信