導入數據,觀察數據,操作數據,可視化展示,關閉數據
data<-read.csv("xx.csv",header=1)#第一行是header,不是值 。
- 取數據時候,較有用的參數還有stringsasfactor=Fasle,這樣就不會把所有的字符型變量轉換成Factor因子。因子是不能用與字符串操作的,如分割字符串strsplit()
- 參數skip=1/2,跳過第一行/第二行后開始,header是第二行。
-
read.csv后,View($dataframe) 查看部分內容,觀察表頭、數據正常。
- dataframe$column觀察。R對列內容中的末尾/前置的空格敏感,所以導入后通過dataframe$column觀察這列內容是否含空格。包含的話用excel的TRIM()函數處理簡便.
- 用R 去除單元格的首位空格等空白字符trimws($vector).如
- 用R 去除單元格的首位空格等空白字符trimws($vector).如
head(data) #觀察數據
rownames(data)=data$memberid #把meberid列作為每行的索引key
R 對$,和[]引用方式是不同的, 方括號內逗號前指行,逗號后指列
列名,index索引一個意思
取列:
d$列名
d[,列名]
不建議d[[第幾列]]
數據框d按第三列height列排序。列名是height
d[order(d$height),] 或
d[order(d[,3]),]
d[order(d[,3])][,c(1,3,6)] #數據框按第三列排序后,只列出1,3,6列
R 選擇某寫行觀測值組成子數據框,這行的在某列值是95
d[d$value="95",]
操作列的時候建議加上,drop=False 防止字符串轉為因子
取前兩列d[1:2]
取第三行,5、6列 d[3:3,5:6]
取特定id的某列值 data["20211105","paymoney"]
取paymoney最大的行data[which.max(data$paymoney),]
最小的 which.min
取行:
d[1:2,]前兩行
按行索引key取行data["20211105",]
取多行
data[c("20211105","20211104"),]
保存數據框到csv,用write_excel_csv($dataframe,"~/some.csv") #先library(tidyverse)
尤其對含中文的數據框保存時候必須用,不然用write.csv()的話,其他軟件再打開保存文件顯示中文是亂碼(R軟件讀取都是正常)
數據框在第二列后新增列 data2<-cbind(data1[,1:2],y,data1[,3:ncol(data1)])
數據框在第5行后/最后新增行 data2<-rbind(data3[1:5,],row,data3[6:nrow(data3),])
rbind(data3,row)
更改數據框的列名,colnames(Datafra)[colnames(Datafra)=="family"]<-'Famlilies'
更改列名 如 改第一列列名 colnames(baseline)[1]<-"Sample.ID"