R 變數與資料的管理

R 資料的排序(Sorting)

除了資料的篩選之外,排序也是一個很常會使用到的功能,以 Squid 的資料為例,我若我們希望資料可以依據 Month 的數值大小由小到大排序,可以執行:

Ord1 <- order(Squid$Month)
Squid[Ord1, ]

這樣整個資料就會依照月份來排序:

     Sample Year Month Location Sex     GSI
1         1    1     1        1   2 10.4432
2         2    1     1        3   2  9.8331
3         3    1     1        1   2  9.7356
[略]

在重新排序資料列(rows)時,記得要將 Ord1 放在逗號的前面。除此之外,我們也可以只針對特定的資料欄位排序,例如:

Squid$GSI[Ord1]

輸出為:

   [1] 10.4432  9.8331  9.7356  9.3107
   [5]  8.9926  8.7707  8.2576  7.4045
   [9]  7.2156  6.3882  6.0726  5.7757
  [13]  1.2610  1.1997  0.8373  0.6716
[略]

Exercise 2
ISIT.xls 檔案中儲存一些關於生物發光(bioluminescent)的資料,請依下列步驟分析這些資料:

  1. ISIT.xls 的資料讀進 R 中。
  2. Station1 的資料篩選出來,計算 Station1 的資料筆數。
  3. 使用 Station1 的資料計算 SampleDepth 的最小值、中位數、平均數與最大值。
  4. 分別計算 Station23SampleDepth 的最小值、中位數、平均數與最大值。
  5. 找出資料筆數相對比較少的 Station,將這些 Station 的資料拿掉後,建立一個新的 data frame。
  6. 篩選出 2002 年所有的資料。
  7. 篩選出所有四月份的資料。
  8. 篩選出所有 SampleDepth 大於 2000 的資料。
  9. 篩選出所有四月份且 SampleDepth 大於 2000 的資料。
  10. 將資料依照 SampleDepth 排序(由小到大)。
R

2 留言

  1. 山崎退

    新手發問~~小弟沒有資訊背景,剛接觸R不久
    請問文章開頭的資料檔squid.txt是需自行建立嗎?
    或者是有載點可下載
    蠻希望跟著板主的文章來練習
    若有不妥還請包涵~~感謝!

    • G. T. Wang

      是我忘記放下載連結,真是抱歉!

      我已經將下載連結放在文章中了,如果還有其他問題請再跟我說,謝謝您。

Comments are Closed