學(xué)習(xí)小組Day5筆記--潘潘

R語言的數(shù)據(jù)結(jié)構(gòu)

思維導(dǎo)圖

思維導(dǎo)圖

· 向量

1. 定義:向量是用于存儲(chǔ)數(shù)值型、字符型**或邏輯型數(shù)據(jù)的一堆數(shù)組。

向量示例.png

2. 從向量中提取元素

根據(jù)元素的位置

x[4] #第四個(gè)元素
x[-4] #排除法,除了第4個(gè)元素之外剩余的元素
x[2:4]#第2到4個(gè)元素
x[-(2;4)]#除了第2-4個(gè)元素
x[c(1,5)] #第1個(gè)和第5個(gè)元素

根據(jù)元素的值

x[x==10]#等于10的元素
x[x<0]
x[x %in% c(1,2,5)]#存在于向量c(1,2,5)中的元素

%in%:%in% 判斷 前面的對象是否在后面的容器中

· 數(shù)據(jù)框

1. 定義:不同的列可以包含不同模式的數(shù)據(jù)(數(shù)值型、字符型),數(shù)據(jù)框可以通過data.frame()構(gòu)建。

2. 創(chuàng)建一個(gè)數(shù)據(jù)框

建立一個(gè)數(shù)據(jù)框.png

3. 設(shè)置行名和列名

colnames(X) #查看列名
rownames(X) #查看行名,默認(rèn)值的行名就是行號(hào),1.2.3.4...
colnames(X)[1]<-"bioplanet"#有的公司返回?cái)?shù)據(jù),左上角第一格為空,R會(huì)自動(dòng)補(bǔ)為x,用這個(gè)命令來修改
X<-read.csv(file = "huahua.txt",sep = " ",header =T,row.names=1)#最后row.names的意思是修改第一列為行名

參考生信星球公眾號(hào)

4.數(shù)據(jù)的保存

write.table()#文本文件保存                                               
read.table() #文本文件讀取
save(X,file="test.RData") #存儲(chǔ)R對象為rda
load("test.RData")#加載
saveRDS(object = X, file = "test.rds") #存儲(chǔ)R對象為rds
iris2 <- readRDS(file = "test.rds") #加載

5. 提取元素

a[x,y]#第x行第y列
a[x,]#第x行
a[,y]#第y列
a[y]#也是第y列
a[a:b]#第a列到第b列
a[c(a,b)]#第a列和第b列
a$列名#也可以提取列(優(yōu)秀寫法,而且這個(gè)命令還優(yōu)秀到不用寫括號(hào)的地步,并且支持Tab自動(dòng)補(bǔ)全哦,不過只能提取一列)

參考生信星球公眾號(hào)

6. 直接使用數(shù)據(jù)框中的變量

函數(shù)attach(), detach(), with()
attach():可將數(shù)據(jù)框添加到R的搜索路徑中,R在遇到一個(gè)變量名以后,將檢查搜索路徑中的數(shù)據(jù)框。

summary(mtcars$mpg)
plot(mtcars$mpg, mtcars$disp)
plot(mtcars$mpg, mtcars$wt)

每次都要加變量mtcars,感覺非常繁瑣,試試加入attach()

attach(mtcars)
summary(mpg)
plot(mpg, disp)
plot(mpg,wt)
detach(mtcars)

detach():將數(shù)據(jù)框從搜索路徑中刪除
with():當(dāng)名稱相同的對象不止一個(gè)時(shí)

with(mtcars, {
  print(summary(mpg))
  plot(mpg,disp)
  plot(mpg,wt)
})

在這種情況下,{ }之間的語句都針對mtcars執(zhí)行,賦值僅在( )內(nèi)生效
如果在構(gòu)建with()結(jié)構(gòu)以外存在的全局變量時(shí),用特殊賦值符號(hào)<<-

Q: save(X,file="test.RData")這句代碼如果報(bào)錯(cuò)object X not found,是為什么,應(yīng)該怎么解決?
A: 首先在console中輸入X,可以肯定的是提示X不存在,考慮是否沒有將X這個(gè)變量加載到R環(huán)境中,其次也是最有可能的是X沒有區(qū)分大小寫,如果變量名為x(小寫)則X是不存在的一個(gè)變量。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 很抱歉今天的作業(yè)交的很晚,昨天的學(xué)習(xí)真的是搞得我頭大,總是各種出錯(cuò),找不出原因,最后很晚了才剛剛把內(nèi)容練習(xí)了一遍,...
    胡瑩crystal閱讀 488評(píng)論 1 0
  • 一、常用包的安裝以及工作環(huán)境初始配置 此處代碼都是引自果子老師的《學(xué)習(xí)R語言,從這一課開始》,還是留存?zhèn)溆脼楹谩?...
    姜洪利_d076閱讀 600評(píng)論 0 2
  • R語言學(xué)習(xí)筆記 R語言常識(shí)部分 R語句由函數(shù)和賦值構(gòu)成。 R使用 <-,而不是傳統(tǒng)的 = 作為賦值符號(hào)。 尋求幫助...
    慧美huimei閱讀 290評(píng)論 0 3
  • 今天主要學(xué)習(xí)兩個(gè)數(shù)據(jù)類型:向量和數(shù)據(jù)框。下面也只是展現(xiàn)了最基礎(chǔ)的操作,以后將在學(xué)習(xí)的過程中慢慢補(bǔ)充。 向量 向量的...
    soda0301閱讀 242評(píng)論 0 0
  • 數(shù)據(jù)結(jié)構(gòu) 昨天安裝R提及到了數(shù)據(jù)的類型http://www.itdecent.cn/p/c16e9351f083...
    TeeM0貓爪草閱讀 338評(píng)論 0 0

友情鏈接更多精彩內(nèi)容