在 R 中使用现有输出添加重要的星星行
Adding significant stars' row with existing output in R
我从我的数据中得到了列均值和范围(最小值、最大值)。
df=matrix(c(3, 5, 2, 3, 6, 3,4, 4, 4, 5, 4, 3,5, 5, 5),ncol=3,byrow=TRUE)
colnames(df)<-paste0("ch", 1:ncol(df))
rownames(df)<-paste0("G", 1:nrow(df))
mean<- colMeans(df, na.rm = FALSE, dims = 1)
range<-apply(df, 2, range)
rownames(range) <- c("min","max")
res<-rbind(mean,range)
我有一个标准平均值(4)。现在我想在现有输出中添加显示显着标记 (**) 的附加行。小于 4 的平均值被认为是显着的。不知何故,我得到了显着的分数,但我未能将其添加到现有结果中。
f<-res[1,] <4
test <- factor(f, labels=c("Ns", "**"))
result<-rbind(mean,range,test)
result
ch1 ch2 ch3
mean 4 4.8 3.4
min 3 4.0 2.0
max 5 6.0 5.0
test 1 1.0 2.0
我想要这个就像关注一个
ch1 ch2 ch3
mean 4 4.8 3.4
min 3 4.0 2.0
max 5 6.0 5.0
test Ns Ns **
我需要你的帮助来解决这个问题。
我认为,Matrix只能存储相同类型的数据。在这里,前三行是数字。但是,test
是 factor
,它被强制转换为数字,即 Ns
和 **
映射到 1
和 2
。
我建议你应该使用 data.frame
来做。
res<-rbind(mean,range)
res<-data.frame(t(res))
f<-res[1,] <4
test <- factor(f, labels=c("Ns", "**"))
res<-cbind(res,test)
希望这个回答能帮到你!
rbind.data.frame(mean = mean, range, test = as.character(test))
# ch1 ch2 ch3
# mean 4 4.8 3.4
# min 3 4 2
# max 5 6 5
# test Ns Ns **
有关详细信息,请参阅 ?rbind.data.frame
。
我从我的数据中得到了列均值和范围(最小值、最大值)。
df=matrix(c(3, 5, 2, 3, 6, 3,4, 4, 4, 5, 4, 3,5, 5, 5),ncol=3,byrow=TRUE)
colnames(df)<-paste0("ch", 1:ncol(df))
rownames(df)<-paste0("G", 1:nrow(df))
mean<- colMeans(df, na.rm = FALSE, dims = 1)
range<-apply(df, 2, range)
rownames(range) <- c("min","max")
res<-rbind(mean,range)
我有一个标准平均值(4)。现在我想在现有输出中添加显示显着标记 (**) 的附加行。小于 4 的平均值被认为是显着的。不知何故,我得到了显着的分数,但我未能将其添加到现有结果中。
f<-res[1,] <4
test <- factor(f, labels=c("Ns", "**"))
result<-rbind(mean,range,test)
result
ch1 ch2 ch3
mean 4 4.8 3.4
min 3 4.0 2.0
max 5 6.0 5.0
test 1 1.0 2.0
我想要这个就像关注一个
ch1 ch2 ch3
mean 4 4.8 3.4
min 3 4.0 2.0
max 5 6.0 5.0
test Ns Ns **
我需要你的帮助来解决这个问题。
我认为,Matrix只能存储相同类型的数据。在这里,前三行是数字。但是,test
是 factor
,它被强制转换为数字,即 Ns
和 **
映射到 1
和 2
。
我建议你应该使用 data.frame
来做。
res<-rbind(mean,range)
res<-data.frame(t(res))
f<-res[1,] <4
test <- factor(f, labels=c("Ns", "**"))
res<-cbind(res,test)
希望这个回答能帮到你!
rbind.data.frame(mean = mean, range, test = as.character(test))
# ch1 ch2 ch3
# mean 4 4.8 3.4
# min 3 4 2
# max 5 6 5
# test Ns Ns **
有关详细信息,请参阅 ?rbind.data.frame
。