数据操作与整合
数据操作与整合说到数据操作,这也是一个十分宽泛的话题,在这里我们就以下4个方面进行介绍:
然而在进行这一切之前首先要做的就是了解你的数据,我们以世界银行的数据Millennium Development Goals为例,来一步步演示如何进行数据操作: if (!file.exists("C:/Users/yujun/Documents/MDG_Data.csv")) { download.file("http://databank.worldbank.org/data/download/MDG_csv.zip","F:/MDG.zip") unzip("F:/MDG.zip") }MDstats<-read.csv("C:/Users/yujun/Documents/MDG_Data.csv") 首先先来看一部分数据: head(MDstats)
tail(MDstats)
我们显然发现了这不是一个tidy data,那么我们先将其变换为我们喜欢的tidy data,之后再看看数据摘要及数据集各单元的属性:
我们可以看看各个数值数据的分位数: quantile(MDstatsMelt$value,na.rm=TRUE)
看看各个国家的统计数据有多少: table(MDstatsMelt$countrycode)
看看缺失值: sum(is.na(MDstatsMelt$value)) #总的缺失值
colSums(is.na(MDstatsMelt)) #每一列的缺失值
# 如果我们用回tidy前的数据集,那么这个函数会显得比较有用colSums(is.na(MDstats))
# 等价的处理方式stat <- function(x) { sum(is.na(x)) } tapply(MDstatsMelt$value, MDstatsMelt$year, stat)
统计某个国家的统计数据占总统计数目的多少 table(MDstatsMelt$countryname %in% c("China"))
prop <- table(MDstatsMelt$countryname %in% c("China"))[2]/sum(table(MDstatsMelt$countryname %in% c("China")))prop
看看数据集的大小: object.size(MDstatsMelt)
print(object.size(MDstatsMelt),units="Mb")
至此,我们可以说我们对数据有了一定的了解。另外值得一提的是,对于某些特定的数据,也许xtabs,ftable是有用的。
|
|广告服务|关于我们|Archiver|手机版|小黑屋|大数据人 ( 鄂ICP备14012176号-2 )
GMT+8, 2024-5-12 18:56 , Processed in 0.420847 second(s), 22 queries .
Powered by 小雄! X3.2
© 2014-2020 bigdataer Inc.