1.數(shù)據(jù)框簡介
data.frame(..., row.names = NULL, ,stringsAsFactors = default.stringsAsFactors())
Argument
- row.names→標簽命名
- stringsAsFactors = default.stringsAsFactors()→默認為TRUE缝裤,控制字符是否轉(zhuǎn)換成因子類型
Example
建立名為myFrame的數(shù)據(jù)框
2.設置數(shù)據(jù)框的行名和列名
- ①rownames() <- c(" "," ")→設置行名
- ②colnames() <- c(" "," ")→設置列名
Example
設置列名
設置列名
一般建議用rownames&colnames設置行列名渤刃,使你的代碼更清楚簡潔
3.數(shù)據(jù)框提取子集
方法1
- ①正的下標 x[ , (1:2)]
Example
提取myFrame的一至二列 - ②負的下標把敢,刪除第二行 x[-2, ]
- ③邏輯下標 x[ ,c(T,F,T)]
- ④名字下標 x[rownames,colnames]
- ⑤指定列名 data.frame$colnames
Example
指定列名
方法2
subset(x,subset,select,drop = FALSE,...)
Argument - x→data
- subset→要保留的元素或行的邏輯表達式
- select→指定數(shù)據(jù)框的列
- drop→是否除去結(jié)構;若只取一行,如果drop為F就是矩陣;為T就是向量
Example
數(shù)據(jù)框myFrame
提取age小于等于30的name列
4.※ 數(shù)據(jù)框合并
Usage
merge(x, y, by = intersect(names(x), names(y)),by.x = by, by.y = by, all = FALSE, all.x = all, all.y = all,sort = TRUE, suffixes = c(".x",".y"), no.dups = TRUE,incomparables = NULL, ...)
根據(jù)兩個data.frame的相同列或指定列將兩個data.frame進行融合;
Argument
- all→指定未共有的是否保留
- all.x→x是否全部輸出
- all.y→y是否全部輸出
- sort→by指定的列是否要排序,默認為T
- incomparables→指定by哪些單元不進行合并
- suffixes→指定除by外相同列名的后綴友鼻,默認為x,y區(qū)分
Example
敬請期待
其它數(shù)據(jù)框相關的函數(shù)
函數(shù) | 功能 |
---|---|
transform | 針對data.frame傻昙,可以對已有列進行改變,也可以添加新列 |
within | 與transform類似 |
with | 與within有所區(qū)別彩扔,with在指定環(huán)境下進行操作存在局限性屋匕,賦值僅在此函數(shù)的括號內(nèi)生效用<<-替代<-可創(chuàng)建括號外存在的對象,within同樣在指定環(huán)境下進行操作借杰,但是得到的結(jié)果依然在該環(huán)境中过吻,是對該環(huán)境中已有元素進行操作或者添加新的元素 |
attach | 可將數(shù)據(jù)框添加到R的搜索路徑中。R在遇到一個變量名以后蔗衡,將檢查搜索路徑中的數(shù)據(jù)框纤虽,以定位到這個變量 |
detach | 解除attach |