我是R的新手和统计分析整体。我目前正在处理一个数据集,其中包括年龄和记忆以及特定化合物的浓度。我的数据是使用read.csv从csv文件中获取的。
目前,我可以使用
显示一个年龄组和一个蛋白质的方框图boxplot(data$compound_A[data$Age.Code==3]~q$Memory.Code[q$Age.Code==3])
当我想看两个年龄组时,我遇到了问题。我试过了
boxplot(data$compound_A[data$Age.Code==3]~q$Memory.Code[data$Age.Code==3],
data$compound_A[data$Age.Code==2]~q$Memory.Code[q$Age.Code==2])
以及它的一些排列,例如:
boxplot(data$compound_A[data$Age.Code==3]~q$Memory.Code[data$Age.Code==3],data,
data$compound_A[data$Age.Code==2]~q$Memory.Code[q$Age.Code==2],data)
不幸的是,这些方法都没有奏效。任何帮助将不胜感激!
谢谢!
这里建议使用dput选项
structure(list(ID = c(635L, 637L, 638L, 639L, 641L, 642L, 644L,
646L, 647L, 649L, 652L, 676L, 677L, 678L, 679L, 682L, 684L, 686L,
688L, 692L, 693L, 715L, 716L, 717L, 718L, 719L), Age.Code = c(3L,
3L, 3L, 3L, 3L, 3L, 3L, 3L, 1L, 1L, 1L, 2L, 2L, 2L, 2L, 2L, 2L,
3L, 3L, 3L, 3L, 2L, 2L, 2L, 2L, 2L), Memory.Code = c(2L, 2L,
2L, 1L, 1L, 1L, 1L, 1L, 2L, 2L, 2L, 2L, 2L, 2L, 1L, 1L, 2L, 1L,
1L, 1L, 1L, 1L, 1L, 2L, 2L, 2L), Compound_A = c(NA, 0, 93.25,
42.79, 148.94, 41.98, 38.99, 0, 0, 42.79, 41.98, 0, 27.38, 76.51,
121.6, 0, 153.69, 68.6, 189.15, NA, 210.73, 0, 27.38, 2.12, 76.51,
76.51)), .Names = c("ID", "Age.Code", "Memory.Code", "Compound_A"
), class = "data.frame", row.names = c(NA, -26L))
答案 0 :(得分:1)
这是一个ggplot
解决方案。
library(ggplot2)
ggplot(data, aes(x=factor(Memory.Code),y=Compound_A))+
geom_boxplot(aes(fill=factor(Age.Code)),position=position_dodge(.9))+
scale_fill_discrete(name="Age.Code")+labs(x="Memory.Code")
这是使用基础R的方式。
boxplot(Compound_A~factor(Age.Code)+factor(Memory.Code),data)