開始使用 R

R 是一個功能強大的科學計算機,其本身內建非常大量的數學運算功能,本篇將介紹它的基本使用方式。

R 是一個功能非常豐富的程式語言,而在實際開始學習 R 語言之前,我們先粗略的瀏覽一下 R 的一些基本功能與使用方式,讓大家對於 R 有一些基本的認識與了解,等大家熟悉 R 的操作之後,再繼續學習後續的細部觀念與更深入的課題。


以下是 R 的一些基本操作介紹。

R 使用者介面

R 是一個使用指令操作的軟體,在學習 R 語言之前,我們先熟悉一下他的操作介面。

將 R 打開之後,可以看到一個 R Console 視窗,裡面會有一些 R 的版本與相關使用條款的資訊,往後所有的指令都是在這個 R Console 視窗中做輸入,而所有的文字輸出也都是在這裡,他是 R 中最主要的操作介面。

install-r-in-windows-17

我們可以在 R Console 中直接輸入我們想要計算的數學式子,把 R 當作一般的計算機使用:

12 + 3 * 6

然後按下 Enter 鍵之後,就可以得到計算的結果:

[1] 30

這裡的 30 就是計算結果,而開頭用中括號包起來的數字是標示這個數值是在向量中的位置編號(這個部分稍後會介紹,目前可先忽略它)。

R 支援很多種格式的輸入,例如:

(43.43 * 2^4 + 1.23e3) / 384.23

其中 2^4 是 (2^4),而 1.23e3 則是 (1.23 times 10^3),這樣的輸出為:

[1] 5.009708

變數

我們可以建立變數,將數值或各種資料儲存起來:

foo <- 23;

其中 <- 為 R 特有的指定運算子(assignment operator),在大多數的情況下也可以使用等號 = 取代,就像這樣:

foo = 23;

這樣就會在 R 中建立一個變數 foo,而它的值是 23,這時候我們可以輸入變數的名稱來乾看這個變數的值:

foo
[1] 23

尋找變數

如果您在使用 R 時想要找尋之前建立的變數,但是一時忘記完整的變數名稱,這時候就可以使用 apropos 這個函數來搜尋,他可以使用關鍵字來搜尋所有的變數,列出所有符合的變數名稱。假設我們有一個 very_long_name 變數:

very_long_name <- 38

若我們只記得一部份的變數名稱,就可以使用 apropos 搜尋一下:

apropos("long")
[1] "longley"        "seq_along"      "very_long_name"

這樣就可以很快找出我們需要的變數。

呼叫函數

除了簡單的數值運算之外,R 中內建非常多的功能函數,善用這些功能函數可以幫助我們進行各式各樣複雜的運算,例如計算從 110 的總和,就可以使用 sum 這個功能函數:

sum(1:10)

輸出為

[1] 55

這裡的冒號 : 是一個可以產生連續數列的運算子,1:10 會產生從 110 的數列,接著我們將這個數列交給 sum 這個計算總和的函數,計算出從 110 的總和。

這裡 1:10 所產生的數列稱為一個向量(vector),而我們所呼叫的 sum 則稱為函數(function),函數在呼叫時需要傳入的資料就稱為函數的參數(argument)。

R 中有內建非常多的數學運算函數以及常數,例如三角函數與 (pi):

sin(pi/2)
[1] 1

絕對值:

abs(-34)
[1] 34

指數:

exp(1)
[1] 2.718282

中位數:

median(1:5)
[1] 3

R

2 留言

  1. YTCHOU

    你好,想知道中括號包起來的數字1有什麼特別的涵義嗎?

  2. Salut! Je sais que c’est du genre hors sujet cependant
    je dois demander. La gestion d’un website comme le votre demande-t-elle beaucoup de travail?
    Je suis complètement nouveau dans le domaine des blogs, cependant j’écris tous les jours dans mon journal.

    J’aimerais créer un blog pour partager mon expérience
    et mes émotions en ligne. Veuillez me faire savoir si vous avez des idées ou des conseils
    pour les nouveaux blogueurs en herbe.. Merci beaucoup!

    Voici mon blog: rencontres femmes agees

Leave a Reply