r boxplot中的丢弃因子组合

时间:2016-03-07 19:42:13

标签: r boxplot

我有一个带有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

我得到这张图:

enter image description here

拜托,你可以帮我删除空格吗?

谢谢你的到来。

1 个答案:

答案 0 :(得分:1)

以下给出了省略间隙的图:

boxplot(crecimiento ~ interaction(localidad, transgen, drop = TRUE),
        data = na.omit(anova_propagacion), las=2)

enter image description here

与您的代码相比,两个主要变化是:

  • 要计算公式中的交互项,我使用interaction(localidad, transgen, drop = TRUE)。设置drop = TRUE表示省略了实际未出现在数据中的组合。

  • 仅此一项是不够的,因为某些组合会出现在数据中,但crecimento的值为NaN(例如SINALOA.N })。因此,它们不会被丢弃,但仍然没有什么可以绘制的。只需使用na.omit()删除这些行即可解决此问题。