我想我需要一些特定于R的统计数据帮助。 下面是我的“实验设计表”。 我想测试在FamilyF vs all和FamilyG与所有条件的条件下,类型X与type_norm的基因的'得分'分布是否不同。
这是我的'实验设计':
FamilyF FamilyF FamilyG FamilyG
gene_type gene conditionA conditionB conditionC conditionD
typeX gene1 1 2 3 4
typeX gene2 0.1 0.2 0.3 0.4
typeX gene3 -1 -2 -3 -4
norm gene4 10 20 30 40
norm gene5 1 2 3 4
norm gene6 0.1 0.2 0.3 0.4
在使用kruskal测试等方法测试不同条件下基因之间的分布差异之前,我之前没有进行过分析。
将数据重新排列为:
gene gene1 gene2 gene3 gene4 gene5 gene6 Family
conditionA 1 0.1 -1 10 1 0.1 F
conditionB 2 0.2 -2 20 2 0.2 F
conditionC 3 0.3 -3 30 3 0.3 G
conditionD 4 0.4 -4 40 4 0.4 G
然后我为列gene1-gene6和条件的不同元数据列做了一个循环,并进行了kruskal测试,如下所示。
kt<-kruskal.test(df.plsMD[,"gene1"]~df.plsMD[,"Family"])
但我不确定如何使用行和列来执行类似的操作。
任何帮助都将不胜感激。
谢谢,
答案 0 :(得分:0)
如果我理解正确,你不能在一次分析中这样做。您必须为不同的基因分配数据框,如下所示:
df.gene1 <- subset(df, gene = "gene1")
df.gene2 <- subset(df, gene = "gene2")
....
之后,您可以使用Kruskal测试:
kruskal.test(conditionA ~ gene_type, data = df.gene1)
如果这给出了显着的结果,您可以检查出现差异的位置:
df.gene1$Ranks.gene_type <- rank(sophdata$conditionA)
by(df.gene1$Ranks.gene_type, df.gene1$gene_type, mean)
kruskalmc(conditionA ~ gene_type, data = df.gene1)