你沒聽說過的背靠背莖葉圖的畫法——R語言(比較莖葉圖)

0引言

R語言繪製莖葉圖——stem函數1中介紹了莖葉圖的定義好處以及R語言中畫莖葉圖的函數stem。但是在實際中還會遇到兩組數據同時畫莖葉圖。這時候就需要比較莖葉圖或者成爲背靠背莖葉圖。本節就講一下R語言中背靠背莖葉圖的畫法。

1、包的安裝和載入

畫背靠背莖葉圖需要的函數是:stem.leaf.backback。源於的包是:aplpack
下面是安裝載入包的命令:

install.packages("aplpack")  # 安裝包的命令
library(aplpack)  # 載入包的命令

2、數據的構造

> (x = runif(50, 1, 100))
 [1] 97.901902 37.820087 59.930394 58.202214 85.082559 56.376457 49.612133
 [8] 28.449198 17.474669 73.544891 71.132914 67.087604 73.442675 31.118839
[15] 34.445926 91.496676 68.495679  2.406950 32.371289 76.785241 70.970913
[22] 18.389529 79.589323 85.889009 69.590363 77.410272 59.683459 53.642310
[29] 10.430487 53.923313 36.867875 27.919024 43.048420 54.681581 52.346770
[36] 86.392272 80.799613 45.936351 48.592536 49.247514 26.132459 28.316900
[43] 33.084321 41.899637 82.897304 30.807437 11.529197 87.191910  9.661095
[50] 76.181347
> (x = round(x))
 [1] 98 38 60 58 85 56 50 28 17 74 71 67 73 31 34 91 68  2 32 77 71 18 80 86
[25] 70 77 60 54 10 54 37 28 43 55 52 86 81 46 49 49 26 28 33 42 83 31 12 87
[49] 10 76
> (y = runif(50, 1, 100))
 [1] 54.251087 52.491082 56.061653 23.461294 97.432992 59.603256  1.731276
 [8] 38.194524 63.233257 34.397358 87.835199 37.768421  4.011068 37.757133
[15] 21.456463 70.403779 92.325619 59.801964  7.334659 80.850232  8.878238
[22] 41.957840 29.635581 38.141332 58.615335 46.426850  5.792796 84.212648
[29] 20.716242 59.697287 90.713955 91.405667 50.688220 96.054148 98.494647
[36] 53.005192 75.005535 30.417185 55.437115 55.639084  3.260935 75.850688
[43] 87.912788 75.904463 89.966681 71.551502 75.130157 98.808130 34.477216
[50] 52.372187
> (y = round(x))
 [1] 98 38 60 58 85 56 50 28 17 74 71 67 73 31 34 91 68  2 32 77 71 18 80 86
[25] 70 77 60 54 10 54 37 28 43 55 52 86 81 46 49 49 26 28 33 42 83 31 12 87
[49] 10 76

到現在爲止就成功載入函數包、構造出了兩組可用數據。下開始介紹主角函數了:stem.leaf.backback

3、參數展示

> stem.leaf.backback
function (x, y, unit, m, Min, Max, rule.line = c("Dixon", 
    "Velleman", "Sturges"), style = c("Tukey", 
    "bare"), trim.outliers = TRUE, depths = TRUE, reverse.negative.leaves = TRUE, 
    na.rm = FALSE, printresult = TRUE, show.no.depths = FALSE, 
    add.more.blanks = 0, back.to.back = TRUE) 

上述是該函數的內置可調參數,大家有需要可以自行去查看。下面直接上案例。

4、案例結果

下面就是最初的背靠背莖葉圖。

> stem.leaf.backback(x,y) 
_______________________________
  1 | 2: represents 12, leaf unit: 1 
           x       y       
_______________________________
   1       2|  0* |2       1   
            |  0. |            
   4     200|  1* |002     4   
   6      87|  1. |78      6   
            |  2* |            
  10    8886|  2. |6888   10   
  15   43211|  3* |11234  15   
  17      87|  3. |78     17   
  19      32|  4* |23     19   
  22     996|  4. |699    22   
  (4)   4420|  5* |0244   (4)  
  24     865|  5. |568    24   
  21      00|  6* |00     21   
  19      87|  6. |78     19   
  17   43110|  7* |01134  17   
  12     776|  7. |677    12   
   9     310|  8* |013     9   
   6    7665|  8. |5667    6   
   2       1|  9* |1       2   
   1       8|  9. |8       1   
            | 10* |            
_______________________________
n:        50       50      
_______________________________

我們對參數進行微調:m = 1.

> stem.leaf.backback(x,y,m=1) 
____________________________________
  1 | 2: represents 12, leaf unit: 1 
              x      y          
____________________________________
   1          2|  0 |2          1   
   6      87200|  1 |00278      6   
  10       8886|  2 |6888      10   
  17    8743211|  3 |1123478   17   
  22      99632|  4 |23699     22   
  (7)   8654420|  5 |0244568   (7)  
  21       8700|  6 |0078      21   
  17   77643110|  7 |01134677  17   
   9    7665310|  8 |0135667    9   
   2         81|  9 |18         2   
               | 10 |               
____________________________________
n:           50      50         
____________________________________

5、參考文獻


  1. https://blog.csdn.net/weixin_46111814/article/details/105343016 ↩︎

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章