第一部分第5章 高級(jí)數(shù)據(jù)管理

5.1 一個(gè)數(shù)據(jù)處理難題

5.2 數(shù)值和字符處理函數(shù)

5.2.1 數(shù)學(xué)函數(shù)

數(shù)學(xué)函數(shù)

函數(shù) 描述
abs(x) 絕對(duì)值abs(-4)返回值為4
sqrt(x) 平方根sqrt(25)返回值為5
ceiling(x) 不小于x的最小整數(shù)
floor(x) 不大于x的最大整數(shù)
trunc(x) 向0的方向截取的x中的整數(shù)部分
round(x, digits=n) 將x舍入為指定位的小數(shù)
signif(x, digits=n) 將x舍入為指定的有效數(shù)字位數(shù)
cos(x),sin(x),tan(x) 余弦顽铸、正弦和正切
acos(x),asin(x),atan(x) 反余弦趟佃、反正弦和反正切
cosh(x),sinh(x),tanh(x) 雙曲余弦、雙曲正弦和雙曲正切
acosh(x),asinh(x),atanh(x) 反雙曲余弦、反雙曲正弦和反雙曲正切
log(x, base=n) 對(duì)x取以n為底的對(duì)數(shù)
log10(x) log(x)為自然對(duì)數(shù)疫赎,log10(x)為常用對(duì)數(shù)
exp(x) 指數(shù)函數(shù)

5.2.2 統(tǒng)計(jì)函數(shù)

統(tǒng)計(jì)函數(shù)

函數(shù) 描述
mean(x) 平均數(shù)
median(x) 中位數(shù)
sd(x) 標(biāo)準(zhǔn)差
var(x) 方差
mad(x) 絕對(duì)中位差
quantile(x,probs) 求分位數(shù),probs[0,1]
range(x) 求值域
sum(x) 求和
diff(x,lag=n) 滯后差分
min(x) 求最小值
max(x) 求最大值
scale(x, center=TRUE, scale=TRUE) 為數(shù)據(jù)對(duì)象x按列進(jìn)行中心化或標(biāo)準(zhǔn)化

5.2.3 概率函數(shù)

d = density 密度函數(shù)
p = probabilty 分布函數(shù)
q = quatile function 分位數(shù)函數(shù)
r = random 生成隨機(jī)數(shù)
概率分布

分布名稱 縮寫 分布名稱 縮寫
Beta分布 beta Logistic分布 logis
二項(xiàng)分布 binom 多項(xiàng)分布 multinom
柯西分布 cauchy 負(fù)二項(xiàng)分布 nbinom
卡方分布 chisq 正態(tài)分布 norm
指數(shù)分布 exp 泊松分布 pois
F分布 f Wilcoxon符號(hào)秩分布 signrank
Gamma分布 gamma t分布 t
幾何分布 geom 均勻分布 unif
超幾何分布 hyper Weibull分布 weibull
對(duì)數(shù)正態(tài)分布 lnorm Wilcoxon秩和分布 wilcox

5.2.4 字符處理函數(shù)

字符處理函數(shù)

函數(shù) 描述
nchar(x) 計(jì)算x中的字符數(shù)量
substr(x, start, stop) 提取或替換一個(gè)字符向量中的子串
grep(pattern, x, ignore.case=FALSE, fixed=FALSE) 在x中搜索某種模式,pattern為正則表達(dá)式
sub(pattern, replacement,x, ignore.case=FALSE, fixed=FALSE) 在x中搜索pattern演怎,并以replacement將其替換。
strsplit(x, split, fixed=FALSE) 在split處分割字符向量x中的元素
paste(..., sep=" ") 連接字符串避乏,分隔符為sep
toupper(x) 大寫轉(zhuǎn)換
tolower(x) 小寫轉(zhuǎn)換

5.2.5 其他實(shí)用函數(shù)

函數(shù) 描述
length(x) 對(duì)象x的長(zhǎng)度
seq(from, to, by) 生成一個(gè)序列
rep(x,n) 將x重復(fù)n次
cut(x,n) 將連續(xù)型變量x分割為有著n個(gè)水平的因子
pretty(x,n) 創(chuàng)建美觀的分割點(diǎn)爷耀,繪圖中常用
cat(... , file ="myfile", append=FALSE) 連接...中的對(duì)象,并將其輸出到屏幕上或文件中

5.2.6 將函數(shù)應(yīng)用于矩陣和數(shù)據(jù)框

apply()函數(shù):可將一個(gè)任意函數(shù)“應(yīng)用”到矩陣拍皮、數(shù)組歹叮、數(shù)據(jù)框的任何維度上。
使用格式為:apply(x, MARGIN, FUN, ...)
x=數(shù)據(jù)對(duì)象铆帽,MARGIN是維度下標(biāo)咆耿,F(xiàn)UN是由指定的函數(shù)

5.3 數(shù)據(jù)處理難題的一套解決方案

5.4 控制流

正常情況,R程序中的語(yǔ)句都是從上至下順序執(zhí)行的锄贼,但有時(shí)想重復(fù)執(zhí)行某些語(yǔ)句---控制流發(fā)揮作用

  • 語(yǔ)句statement: 是一條單獨(dú)的R語(yǔ)句或一組復(fù)合語(yǔ)句
  • 條件cond:是一條最終被解析為TRUE or FALSE的表達(dá)式
  • 表達(dá)式expr:是一條數(shù)值或字符串的求值語(yǔ)句
  • 序列seq:是一個(gè)數(shù)值或字符串序列

5.4.1 重復(fù)和循環(huán)

循環(huán)結(jié)構(gòu)重復(fù)地執(zhí)行一個(gè)或一系列語(yǔ)句票灰,知道某個(gè)條件不為真為止。

  • for結(jié)構(gòu):for循環(huán)重復(fù)地執(zhí)行一個(gè)語(yǔ)句宅荤,直到某個(gè)變量的值不再包含在序列seq中為止。for (var in seq) statement
    eg. for (1 in 10) print ("Hello")
  • while結(jié)構(gòu): while循環(huán)重復(fù)地執(zhí)行一個(gè)語(yǔ)句浸策,直達(dá)條件不為真為止冯键。while (cond) statement
    eg. i <- 10
    while (i>0) {print ("Hello"); i <- i-1)

5.4.2 條件執(zhí)行

  • if-else結(jié)構(gòu)
    if (cond) statement
    if (cond) statement1 else statement2
  • ifelse結(jié)構(gòu)
    ifelse (cond, statement1, statement2)
  • switch結(jié)構(gòu)
    switch(expr, ...)

5.5 用戶自編函數(shù)

myfunction <- function (arg1, arg2, ...) {
statements
return(object)
}

5.6 整合與重構(gòu)

5.6.1 轉(zhuǎn)置 t()

5.6.2 整合數(shù)據(jù) aggregate(x, by, FUN)

5.6.3 reshape2包

reshape2包是一套重構(gòu)和整合數(shù)據(jù)集的絕妙的萬能工具。
數(shù)據(jù)融合melt
數(shù)據(jù)重鑄cast

5.7 小結(jié)

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末庸汗,一起剝皮案震驚了整個(gè)濱河市惫确,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖改化,帶你破解...
    沈念sama閱讀 217,084評(píng)論 6 503
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件掩蛤,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡陈肛,警方通過查閱死者的電腦和手機(jī)揍鸟,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,623評(píng)論 3 392
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來句旱,“玉大人阳藻,你說我怎么就攤上這事√溉觯” “怎么了腥泥?”我有些...
    開封第一講書人閱讀 163,450評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)啃匿。 經(jīng)常有香客問我蛔外,道長(zhǎng),這世上最難降的妖魔是什么溯乒? 我笑而不...
    開封第一講書人閱讀 58,322評(píng)論 1 293
  • 正文 為了忘掉前任冒萄,我火速辦了婚禮,結(jié)果婚禮上橙数,老公的妹妹穿的比我還像新娘尊流。我一直安慰自己,他們只是感情好灯帮,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,370評(píng)論 6 390
  • 文/花漫 我一把揭開白布崖技。 她就那樣靜靜地躺著,像睡著了一般钟哥。 火紅的嫁衣襯著肌膚如雪迎献。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,274評(píng)論 1 300
  • 那天腻贰,我揣著相機(jī)與錄音吁恍,去河邊找鬼。 笑死播演,一個(gè)胖子當(dāng)著我的面吹牛冀瓦,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播写烤,決...
    沈念sama閱讀 40,126評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼翼闽,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來了洲炊?” 一聲冷哼從身側(cè)響起感局,我...
    開封第一講書人閱讀 38,980評(píng)論 0 275
  • 序言:老撾萬榮一對(duì)情侶失蹤尼啡,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后询微,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體崖瞭,經(jīng)...
    沈念sama閱讀 45,414評(píng)論 1 313
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,599評(píng)論 3 334
  • 正文 我和宋清朗相戀三年撑毛,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了书聚。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 39,773評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡代态,死狀恐怖寺惫,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情蹦疑,我是刑警寧澤西雀,帶...
    沈念sama閱讀 35,470評(píng)論 5 344
  • 正文 年R本政府宣布,位于F島的核電站歉摧,受9級(jí)特大地震影響艇肴,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜叁温,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,080評(píng)論 3 327
  • 文/蒙蒙 一再悼、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧膝但,春花似錦冲九、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,713評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至冀宴,卻和暖如春灭贷,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背略贮。 一陣腳步聲響...
    開封第一講書人閱讀 32,852評(píng)論 1 269
  • 我被黑心中介騙來泰國(guó)打工甚疟, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人逃延。 一個(gè)月前我還...
    沈念sama閱讀 47,865評(píng)論 2 370
  • 正文 我出身青樓览妖,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親真友。 傳聞我的和親對(duì)象是個(gè)殘疾皇子黄痪,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,689評(píng)論 2 354