当我在dataset上使用colMeans函数时,R将均值输出为行,而不是原始的列格式。下面是一个示例:
Year J F M A M J J A S O N D
1851 4 6 3 6 9 7 1 2 8 9 5 0
1852 3 8 5 5 5 3 2 8 6 7 4 2
1853 5 7 4 8 6 9 4 4 4 2 1 2
当我使用函数时
colMeans(df)
输出返回如下:
Year Mean
J 4
F 7
M 4
A 6
etc...
如何开发脚本以确保输出像原始数据一样按列组织,而不是按行组织?它应该看起来像这样:
J F M A M
我想计算R中某列的平均值。该列写入csv文件,即数据文件,如下所示。
X
12
14
10
...
我按如下方式读取数据。
myData <- read.csv("datafile.csv")
当我想要计算平均值作为mean(myData)时,我得到以下消息:
[1] NA Warning message: In mean.default(myData) : argument is not numeric or logical: returning NA
我想计算数据帧中每一对可能的列的每行数之间的绝对差异。
例如,使用下面的dataframe:
x <- rnorm(1:10)
y <- rnorm(1:10)
z <- rnorm(1:10)
df <- as.data.frame(cbind(x,y,z))
有可能的列组合的x-y,x-z,和y-z。我希望计算每一列对在每一行中的数字的差异。
我想要的输出是这样的:
Variable 1 Variable 2 Difference
x y 1
x y 2
x y 3
x z 4
x z 5
x z 6
x z
我有一个矩阵x,有20行和10列。我需要一次抽样(替换)5行,并计算列的方法。我需要重复这一程序15次,并报告每一次的专栏均值。
例如,我使用R中的重采样库来执行此操作。
# Create a random matrix
library("resample")
set.seed(1234)
x <- matrix( round(rnorm(200, 5)), ncol=10)
## Bootstrap 15 times by re sampling 5 rows at a time.
k <- bootstrap(x,colMeans,B = 15,block
我有一个关于colMeans函数的问题。有没有这样的版本,当它遇到长度为1的列时不会返回错误?例如
temp<-cbind(c(2,2),c(3,4))
colMeans(temp)
[1] 2.0 3.5
但对于这个人来说
temp2<-c(2,2)
colMeans(temp2)
Error in colMeans(temp2) :
'x' must be an array of at least two dimensions
但是,如果我将函数mean应用于每一列,它会正确地得到值2和2。
我写了一个函数来做这件事
testfun<-functio