熱線電話:13121318867

登錄
首頁精彩閱讀R語言做數據探索
R語言做數據探索
2017-06-09
收藏

R語言數據探索

1 數據導入

數據常用格式.csv/.txt/.xls/.json/.xml。
R語言提供相應的函數和庫實現對這些數據格式的導入。
現已導入.csv格式和以tab分隔的.txt格式為例

# 讀.csv格式

data1<-read.csv(file='C:/abc.csv',header=TRUE,sep=',')


# 讀以tab分隔的.txt格式

data2<-read.csv(file='C:/abc.txt',header=TRUE,sep='\t')

2 數據類型變換

數據類型變換包括數據類型測試和數據類型之間的變換。
數據類型測試采用is.xyz系列函數,該函數測試是否為某一種數據類型,返回值是邏輯類型,即TRUE和FALSE。
數據類型變換采用as.xyz系列函數,把某一種數據類型變換到另一種數據類型。
例如:

is.numeric(),is.character(),is.vector(),is.matrix(),is.data.frame()

as.numeric(),as.character(),as.vector(),as.matrix(),as.data.frame()

R語言數據結構之間的轉換

3 數據集變換

數據轉換成窄數據,例如:

R語言把寬數據集變換成窄數據集

library(reshape)

data3<-melt(mydata,id=c("id","time"))4 數據排序

利用order函數對單一變量或者多個變量進行排序(升序或者降序),返回具有排序功能的索引位置。

# sort by var1

data4<-old[order(var1),]

# sort by var1 and var2 (descending)

data5<-old[order(var1,-var2),]

5 數據可視化

利用R語言做數據可視簡單和高效。

R語言畫直方圖

set.seed(1234)

score<-rnorm(n=1000,m=80,sd=20)

hist(score)

直方圖上面添加密度曲線

hist(score,

freq=FALSE,

xlab="Score",

main="Distribution of score",

col="lightgreen",

xlim=c(0,150),

ylim=c(0,0.02))

curve(dnorm(x,

mean=mean(score),

sd=sd(score)),

add=TRUE,

col="darkblue",

lwd=2)

6 列聯表

列聯表是理解各類分布的最基本和最有效的方式。

單變量列聯表

多變量列聯表
參考代碼

library(gmodels)

CrossTable(mydata$myrowvar,mydata$mycolvar)

7 數據抽樣

利用sample函數實現數據抽樣
從數據集中不放回地隨機抽取100個樣本
參考代碼:

mysample<-mydata[sample(1:nrow(mydata),100,replace=FALSE),]

8 數據去重

利用unique函數去掉向量中的重復值

set.seed(1234)

x<-round(rnorm(20,10,5))

x

unique(x)

結果如下

9 數據匯總

使用apply系列函數,實現匯總

10 缺失值識別和處理

使用is.na函數識別缺失值,采用均值、中位數、眾數、插補法等方法對確實值處理。

y<-c(4,5,6,NA)

is.na(y)

y[is.na(y)]<-mean(y,na.rm=TRUE)

y

11 異常值識別和處理

異常值識別-異常值定位-異常值處理
異常值識別方法:盒箱圖和簡單統計量
異常值處理方法:剔除法/修復法

12 數據合并

利用merge函數或者rbind函數或者sqldf包基于數據庫的連接操作

# merge two data frames by ID

total<-merge(data frameA,data frameB,by="ID"

# merge two data frames by ID and Country

total<-merge(data frameA,data frameB,by=c("ID","Country"))

total<-rbind(data frameA,data frameB)

總結

本文總結了R語言數據探索和處理的知識。

數據分析咨詢請掃描二維碼

若不方便掃碼,搜微信號:CDAshujufenxi

數據分析師資訊
更多

OK
客服在線
立即咨詢
日韩人妻系列无码专区视频,先锋高清无码,无码免费视欧非,国精产品一区一区三区无码
客服在線
立即咨詢