R語言基本語法深入講解
基本數(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)
到此這篇關于R語言基本語法深入講解的文章就介紹到這了,更多相關R語言基本語法內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
大數(shù)據(jù)分析R語言RStudio使用超詳細教程
RStudio是用于R編程的開源工具,這篇文章主要介紹了大數(shù)據(jù)分析R語言RStudio使用教程和一些RStudio的重要技巧,竅門和快捷方式,可快速將您變成RStudio高級用戶,感興趣的朋友跟隨小編一起看看吧2021-03-03R語言數(shù)據(jù)可視化繪圖Dot plot點圖畫法示例
這篇文章主要為大家介紹了R語言數(shù)據(jù)可視化繪圖Dot plot點圖的畫法示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步2022-02-02R語言繪制小提琴圖violin plot實現(xiàn)示例
這篇文章主要為大家介紹了R語言繪制小提琴圖violin plot的實現(xiàn)方法示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步2022-02-02基于R/RStudio中安裝包“無法與服務器建立連接”的解決方案
這篇文章主要介紹了基于R/RStudio中安裝包“無法與服務器建立連接”的解決方案,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2021-04-04