溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

R語言中有哪些基本語法

發(fā)布時間:2021-03-16 16:32:02 來源:億速云 閱讀:170 作者:Leah 欄目:開發(fā)技術

本篇文章為大家展示了R語言中有哪些基本語法,內(nèi)容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細介紹希望你能有所收獲。

基本數(shù)據(jù)類型

數(shù)據(jù)類型

  • 向量 vector

  • 矩陣 matrix

  • 數(shù)組 array

  • 數(shù)據(jù)框 data frame

  • 因子 factor

  • 列表 list

向量

  • 單個數(shù)值(標量)沒有單獨的數(shù)據(jù)類型,它只不過是向量的一種特例

  • 向量的元素必須屬于某種模式(mode),可以整型(integer)、數(shù)值型(numeric)、字符型(character)、邏輯型(logical)、復數(shù)型(complex)

  • 循環(huán)補齊(recycle):在一定情況下自動延長向量

  • 篩選:提取向量子集

  • 向量化:對向量的每一個元素應用函數(shù)

  • 使用seq()創(chuàng)建向量

  • 使用rep()重復向量常數(shù)

矩陣

矩陣(matrix)是一種特殊的向量,包含兩個附加的屬性:行數(shù)和列數(shù)。所以矩陣也和向量一樣,有模式的概念,例如數(shù)值型或字符型。(但反過來,向量卻不能看作是只有一列或一行的矩陣。)

  • 創(chuàng)建矩陣

  • 矩陣運算

  • 索引

  • 增加或刪除行(列)

數(shù)組

數(shù)組(array)是R里一個更一般的對象,矩陣是數(shù)組的一個特殊情形。數(shù)組可以是多維的。例如一個三維的數(shù)組可以包含行、列和層(layer),而一個矩陣只有行和列兩個維度。

array(data = NA, dim = length(data), dimnames = NULL)
as.array(x, ...)
is.array(x)

列表

向量的元素要求都是同類型的,而列表(list)與向量不同,可以組合多個不同類型的對象

數(shù)據(jù)框

數(shù)據(jù)框類似矩陣,有行和列這兩個維度。然而,數(shù)據(jù)框與矩陣不同的是,數(shù)據(jù)框的每一列可以是不同的模式(mode)。例如,某列可能由數(shù)字組成,另一列可能由字符串組成。

因子

因子的設計思想來源于統(tǒng)計學中的名義變量(nominal variables),或稱之為分類變量(categorical variables)。這些變量的值本質上不是數(shù)字,而是對應為分類,例如民主黨、共和黨和無黨派,盡管它們可以用數(shù)字編碼。

算術運算

  • x + y 加法

  • x - y 減法

  • x * y 乘法

  • x / y 除法

  • x ^ y 乘冪

  • x %% y 模運算

  • x %/% y 整數(shù)除法

邏輯運算

  • x == y 判斷是否相等

  • x <= y 判斷是否小于等于

  • x >= y 判斷是否大于等于

  • x && y 標量的邏輯“與”運算

  • x || y 標量的邏輯“或”運算

  • x & y 向量的邏輯“與”運算(x、y以及運算結果都是向量)

  • x | y 向量的邏輯“或”運算(x、y以及運算結果都是向量)

  • !x 邏輯非

  • 邏輯值TRUE和FALSE可以縮寫為T和F(兩者都必須是大寫)。而在算術表達式它們會轉換為1和0

函數(shù)

 g <- function(x) {
  return(x+1)
}

函數(shù)也是對象

條件語句

if (r == 4) {
 x <- 1
} else {
 x <- 3
 y <- 4
}

循環(huán)語句

  • for

  • while

  • repeat

repeat沒有邏輯判斷退出條件,必須利用break(或者類似return())的語句。當然,break也可以用在for循環(huán)中。

代碼格式化工具

library(formatR)

上述內(nèi)容就是R語言中有哪些基本語法,你們學到知識或技能了嗎?如果還想學到更多技能或者豐富自己的知識儲備,歡迎關注億速云行業(yè)資訊頻道。

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內(nèi)容。

AI