我有一个带有quantitatitve变量的数据框和两个分类变量,每个变量有几个因子。当我用这些制作箱线图时,我得到一个图表,其中这些因子与缺失值的组合显示为空。所以,我想在图表中删除这些空白区域。
我正在使用这些公式:
boxplot(anova_propagacion$crecimiento ~ localidad*transgen, las=2)
这些是我的数据:
crecimiento transgen localidad
1 19 N YUCATAN
2 5 N YUCATAN
3 17 N YUCATAN
4 10 N YUCATAN
5 10 N YUCATAN
6 1 N YUCATAN
7 19 N NAYARIT
8 4 N NAYARIT
9 7 N NAYARIT
10 12 N NAYARIT
11 2 N PACIFICO
12 13 N NAYARIT
13 19 N NAYARIT
14 3 N BCS
15 2 N BCS
16 5 N BCS
17 2 N BCS
18 2 N BCS
19 3 N BCS
20 18 N PACIFICO
21 2 N PACIFICO
22 3 N PACIFICO
23 17 N PACIFICO
24 6 N VERACRUZ
25 3 N VERACRUZ
26 3 N VERACRUZ
27 10 N VERACRUZ
28 3 N BCS
29 8 N BCS
30 4 N OAXACA
31 6 N OAXACA
32 3 N BCS
33 NaN N SINALOA
34 NaN N TAMAULIPAS
35 5 N OAXACA
36 17 Y OAXACA
37 18 Y OAXACA
38 3 Y TAMAULIPAS
39 6 Y TAMAULIPAS
40 19 Y NAYARIT
41 19 Y SINALOA
42 4 Y PACIFICO
43 13 Y PACIFICO
44 3 Y PACIFICO
45 19 Y PACIFICO
46 19 Y PACIFICO
47 19 Y PACIFICO
48 17 Y VERACRUZ
49 2 Y BCS
50 18 Y BCS
51 19 Y BCS
52 NaN Y YUCATAN
我得到这张图:
拜托,你可以帮我删除空格吗?
谢谢你的到来。
答案 0 :(得分:1)
以下给出了省略间隙的图:
boxplot(crecimiento ~ interaction(localidad, transgen, drop = TRUE),
data = na.omit(anova_propagacion), las=2)
与您的代码相比,两个主要变化是:
要计算公式中的交互项,我使用interaction(localidad, transgen, drop = TRUE)
。设置drop = TRUE
表示省略了实际未出现在数据中的组合。
仅此一项是不够的,因为某些组合做会出现在数据中,但crecimento
的值为NaN
(例如SINALOA.N
})。因此,它们不会被丢弃,但仍然没有什么可以绘制的。只需使用na.omit()
删除这些行即可解决此问题。