R语言读取大数据
普通情况下使用scan读取数据
成都创新互联专注于临洮网站建设服务及定制,我们拥有丰富的企业做网站经验。 热诚为您提供临洮营销型网站建设,临洮网站制作、临洮网页设计、临洮网站官网定制、小程序制作服务,打造临洮网络公司原创品牌,更为您提供临洮网站排名全网营销落地服务。
x <- scan("D:\\test.txt")
按列读入,指定数据类型
x <- scan("test2dat.txt", what=list("",0,0)) #读取三列数据,第一列是字符,第二和第三列是数值 #以下写法也可以 x2 <- scan("test2dat.txt", list(name="", num1=0,num2=0)) # 每个list都有个名字,分别为name,num1,num2
可以指定读取的行数,以下为读取以逗号分割的csv文件的读取方法
mydata <- read.table("test_nrow.txt.txt",sep=",", header=TRUE,nrow=5) #读取除了表头之外的5行数据
参考: http://www.biostat.jhsph.edu/~rpeng/docs/R-large-tables.html
tab5rows <- read.table("datatable.txt", header = TRUE, nrows = 5) classes <- sapply(tab5rows, class) tabAll <- read.table("datatable.txt", header = TRUE, colClasses = classes)
也可以用data.table 读取大数据
install.packages("data.table") library(data.table) mydata <- fread("test.table.txt") #读取文件时会显示 Read **.*% of ***** rows, 读取完毕会有提示 #查看文件的前6行 head(mydata)
参考:http://www.r-bloggers.com/reading-large-data-tables-in-r/
也可以使用ff包
setwd("D:/data test") library(ff) ffdf1 <- read.table.ffdf(file = "test.ido", header = TRUE, sep = "|")
参考: http://stackoverflow.com/questions/11782084/reading-in-large-text-files-in-r
http://www.bytemining.com/wp-content/uploads/2010/08/r_hpc_II.pdf
使用Python打开大数据的话,采用mmap
参考: http://stackoverflow.com/questions/11159077/python-load-2gb-of-text-file-to-memory
http://davetang.org/muse/2013/09/03/handling-big-data-in-r/
新闻标题:R语言读取大数据
分享链接:http://hbruida.cn/article/ggsode.html