将R中的数据重新排列为某些列内容,而不是2列1

时间:2019-02-28 06:53:30

标签: r

您好,我是刚开始使用R的人,我们有多变量数据可以进行分析,原始数据在excel中,我想重新排列列或使用R中的数据。目前,性别(B,S)和繁殖(R, W)是他们自己的列,但我想几乎将品种和性别行合并,然后将具有相同品种和性别的数据分组。可能的品种和性别组合在一起(RB,RS,WB,WS),根据这些联合因素而不是单独地分离数据,以执行ANOVA。对不起,如果这没有道理!甚至可能的话。谢谢您的帮助。

这是数据的样本,我不知道如何正确格式化它,在这里抱歉。但只有12500个样本量中只有10个

性交妊娠期110公斤p1_plus_p3_fat_depth_mm

R B 112 169.56 31.418

W B 118 175.4 27.24

W B 118 188.84 28.784

WB 118 168.68 29.968

WB 118 177.64 27.664

WB 118 174.28 32.028

R S 114 184.94 23.876

R B 114 188.84 22.952

R S 114 183.75 26.65

致电: aov(公式= p1_plus_p3_fat_depth_mm〜繁殖+性别+繁殖:性别,     数据=猪)

残差:     最小值1Q中位数3Q最大值 -16.521 -2.904 -0.393 2.485 19.880

系数:             估计标准误差t值Pr(> | t |)
(拦截)24.69350 0.08129 303.772 <2e-16 * 品种0.60700 0.10887 5.576 2.52e-08 * 性别2.41582 0.10470 23.073 <2e-16 ***

breedW:sexS 0.17186 0.15003 1.145 0.252

签名。代码:0‘ ” 0.001‘ ‘0.01’’0.05。’0.1‘

残差标准误差:12800自由度上为4.187 多个R平方:0.08123,调整后的R平方:0.08102 F统计量:37.2和12800 DF时为377.2,p值:<2.2e-16

1 个答案:

答案 0 :(得分:0)

如果您只是想要做的方差分析,则可以跳过分组部分。

#Reading in the data:
breed <- read.table(text ="
breed sex gestation_period days_to_110kg p1_plus_p3_fat_depth_mm

R B 112 169.56 31.418

W B 118 175.4 27.24

W B 118 188.84 28.784

W B 118 168.68 29.968

W B 118 177.64 27.664

W B 118 174.28 32.028

R S 114 184.94 23.876

R B 114 188.84 22.952

R S 114 183.75 26.65", stringsAsFactors = FALSE, header = TRUE)

#Performing ANOVA:
sexbreed_aov <- aov(p1_plus_p3_fat_depth_mm ~ breed + sex + breed:sex, data = breed)

summary()检查结果。注意:对于您感兴趣的交互,样本数据太小。但是您可以按原样应用此代码。

> anova(sexbreed_aov)
Analysis of Variance Table

Response: days_to_110kg
          Df Sum Sq Mean Sq F value Pr(>F)
breed      1  51.30  51.296  0.7574 0.4176
sex        1  26.47  26.471  0.3909 0.5549
Residuals  6 406.34  67.723  

更新(必须纠正某些问题)

您不应该像我第一次使用summary.lm()进行两因素方差分析。这仅对单向方差分析有用。您可以使用summary(sexbreed_aov)anova(sexbreed_aov)。因此,请忘记breedW:sexS。如果您想检查所有特定的交互,则仍然可以执行:TukeyHSD(sexbreed_aov)