在前面學習了基本資料管理,這節課要開始學習高階資料管理了,即r中作為資料處理基石的函式,如數學函式,統計函式,概率函式,字元處理函式等。
1.數學函式:用來處理數值型資料
abs(x) 取資料的絕對值,abs(-4)返回值為 4
sqrt(x) 求平方根 ,sqrt(25)返回值為 5
ceiling(x) 不小於 x
的最小整數, ceiling(3.475)返回值為 4
floor(x) 不大於 x
的最大整數 ,floor(3.475)返回值為3
trunc(x
) 向 0 的方向擷取的 x
中的整數部分, trunc(5.99)返回值為 5
round(x
, digits=n
) 將 x
捨入為指定位的小數 ,round(3.475, digits=2)返回值為 3.48
cos(x
)、sin(x
)、tan(x
) 余弦、正弦和正切 ,cos(2)返回值為–0.416
log(x
,base=n
) 對 x
取以 n
為底的對數
2.統計函式:用來處理數值型資料
mean(x
) 求平均數,mean(c(1,2,3,4))返回值為 2.5
median(x
) 求中位數 ,median(c(1,2,3,4))返回值為 2.5
sd(x
) 求標準差 ,sd(c(1,2,3,4))返回值為 1.29
var(x
) 求方差, var(c(1,2,3,4))返回值為 1.67
mad(x
) 求絕對中位差(median absolute deviation) ,mad(c(1,2,3,4))返回值為 1.48
quantile(x
,probs) 求分位數。其中 x
為待求分位數的數值型向量,probs 為乙個由[0,1]之間的概率值組成
的數值向量 # 求 x 的 30%和 84%分位點 :y
range(x
) 求值域 ,x
sum(x
) 求和 sum(c(1,2,3,4))返回值為 10
diff(x
, lag=n
) 滯後差分,lag 用以指定滯後幾項。預設的 lag 值為 1
xdiff(x
)返回值為 c(4, 18, 6)
min(x
) 求最小值 min(c(1,2,3,4))返回值為 1
max(x
) 求最大值 max(c(1,2,3,4))返回值為 4
scale(x) 對資料進行標準化
3.概率函式
d =
密度函式(
density)
p =
分布函式(
distribution function)
q =
分位數函式(
quantile function)
r =
生成隨機數(隨機偏差)
4.字元處理函式:可以從文字型資料中抽取資訊
nchar(x
), 計算 x
中的字元數量; nchar("abcde") length(x)返回值為 5
substr(x
, start
, stop
) 提取或替換乙個字元向量中的子串 ; substr(abcdef, 2, 4)返回值為"bcd"
rep(pattern
, x, ignore. case=false, fixed=false) 在 x
中搜尋某種模式。若 fixed=false,則 pattern
為乙個正規表示式。 若fixed=true,則 pattern
為乙個文字字串。返回值為匹配的下標 grep("a",c("b","a","c"),fixed=true)返回值為 2
sub(pattern
, replacement
, x, ignore.case=false, fixed=false) 在 x
中搜尋 pattern
,並以文字 replacement
將其替換。若 fixed=false,則 pattern
為乙個正規表示式。若 fixed=true,則 pattern
為乙個文字字串。 sub("a","a","abcde")返回值為 abcde。
strsplit(x
, split
, fixed=false) 在 split
處分割字元向量 x
中的元素。若 fixed=false,則 pattern
為乙個正 則表示式。若 fixed=true,則 pattern
為乙個文字字串.strsplit("abcde",c)返回「ab","cd"
paste(…, sep="") 連線字串,分隔符為 sep;paste("today is","friday"),返回"today is friday"
toupper(x) 大寫轉換,toupper("abc")返回「abc」
tolower(x) 小寫轉換 , tolower("abc")返回「abc」
5.其它簡單使用函式
length(x
) 物件 x
的長度 ;x
seq(from
, to
, by
) 生成乙個序列 indices
rep(x
, n) 將 x
重複 n
次 y
cat(... ,...) 連線...中的物件,並將其輸出到螢幕上或檔案中
6.重複和迴圈
迴圈結構重複地執行乙個或一系列語句,直到某個條件不為真為止。迴圈結構包括for和while結構。
如for (i in 1:10) print("hello") 單詞hello被輸出了10次。
還可以用while,while迴圈重複地執行乙個語句,直到條件不為真為止。
7.條件執行:在條件執行結構中,一條或一組語句僅在滿足乙個指定條件時執行。條件執行結構包括
if-else、ifelse和switch。
嵌入式學習第六步 我的Ubuntu開始執行了
開啟紙版書 linux嵌入式系統開發從小白到大牛 仔細閱讀第12頁,對照書上的講解發現,前面做的只是完成了虛擬機器的硬體配置,真正的軟體還沒開始。於是點選了 安裝ubuntu 按鈕。兩次繼續後,系統要求輸入賬戶 密碼之類,隨便自己寫了。然後進入正式的軟體安裝階段。書上說 ubuntu在虛擬機器中的安...
第六步 實現虛擬機器與本機檔案共享
1 完成第四步 在vm中設定共享資料夾,第五步 安裝vmware tools 2 重新啟動虛擬機器,進入系統後在 mnt hgfs 目錄下就能看到所共享的檔案 linux 此共享檔名由自己設定 以後要共享其它的檔案只需將要共享的檔案在windows下拷入到f tools develop linux ...
第六步 頁面內的基本文字的樣式 css 設定
你是不是厭倦了那些大紅大綠的背景,現在是去掉它們的時候了,只保留導航條的紅色背景。真是難為您居然能堅持學習本教程到此,很好,再過幾步,你就能很好了解css控制整個網頁版面 layout 的能力。先設定全域性的文字樣式 body 一般我們把body標籤放在css檔案的頂端,當然你要是執意要把它放在尾部...