Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/74.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
计算R中的行平均值_R_Mean - Fatal编程技术网

计算R中的行平均值

计算R中的行平均值,r,mean,R,Mean,对不起,如果这个问题是重复的,我一直在到处搜索,似乎找不到答案。 这是我的代码: datos=read_delim("~/Downloads/estaciones.csv",";",trim_ws = TRUE) mensual <- datos %>% group_by(X1) %>% arrange((X1)) names(mensual)[2:33]<-"1":"32" mensual [83,2:33]=0 mensual [123,2:33]=0 mensual

对不起,如果这个问题是重复的,我一直在到处搜索,似乎找不到答案。 这是我的代码:

datos=read_delim("~/Downloads/estaciones.csv",";",trim_ws = TRUE)
mensual <- datos %>% group_by(X1) %>% arrange((X1))
names(mensual)[2:33]<-"1":"32"
mensual [83,2:33]=0
mensual [123,2:33]=0
mensual [135,2:33]=0
mensual [137:138,2:33]=0
mensual [140,2:33]=0
mensual [149:155,2:33]=0
mensual [166:172,2:33]=0
mensual [103:105,2:33]=0
mensual [223:224,2:33]=0
mensual [295,2:33]=0
mensual [191,2:33]=0
mensual$mean <- rowMeans(mensual, na.rm=TRUE)
但当我运行它时,它会说: 行平均数错误,na.rm=TRUE:'x'debe ser num'erico

你能帮我吗?我需要添加最后一列,其中包含行值的平均值,并考虑NA值。我的意思是,如果我有33个值和21个NA,当它计算意味着它应该考虑33个值和21,这些值是零。
很难确定,但也许您没有从rowMeans参数中删除X1?我会尝试:

 mensual$myRmean <- rowMeans( mensual[-1], na.rm=TRUE)

将数据对象或列命名为与重要的R函数同名确实是一种不明智的策略。

您可以使用is.na函数帮助将na转换为0。Daniel,谢谢你的回答,刚刚添加了一个链接。问题是这是降雨数据,所以零和na是不同的,第一个表示没有降雨,第二个表示没有数据。对于mean建议,没有数据就像有零一样,但我不想全部替换它们。还有别的办法吗?如果没有,我就这么做。非常感谢你!完全理解0与无数据问题。您似乎在问题的许多行上用0覆盖了一些数据,即mensual[135,2:33]=0。我的评论是基于假设你试图掩饰NA为零,并给出你的陈述:我的意思是,如果我有33个值和21个NA,当它计算意味着它应该考虑33个值和21的那些值是零。这听起来像是为了求平均值而希望将NA转换为零,而不是放弃,也不是将其分解为平均值。仍然存在上述相同的错误:rowMeansmensual中的错误[,-1],NA.rm=TRUE:'x'debe ser num'erico。将na更改为零和无运气:Flor-在您的帖子中包含strmensual的输出将有助于我们查看数据集中是否存在其他字符串或非数字数据类型。很可能您的数据集除了第一列之外还有其他非数字列。谢谢您的建议。刚刚试过你所说的,结果是一样的:mensual$myRmean我认为@42-是对的,但mensual[,-1]mensual$myRmean中可能有一个,缺失了,谢谢你们,还是同样的错误:rowMeansmensual中的错误[,-1],na.rm=TRUE:'x'debe ser num'erico。你需要至少发布strmensual的结果。您发布的图片表明,其余列是数字列,但可能存在不明显的数据输入错误。