0
我在一个类似的问题的工作作为this other posting指出,并试图适应代码选择我感兴趣的列,使之适合我的数据文件。修剪大数据
我的问题,然而,就是生成的文件已经变得比原来的大,我不知道该代码工作我打算的方式。
当我用SPSS打开,该数据集似乎已经采取的标题行,然后赚了几百万份未经第二行结束(我不得不强制停止进程)。
我注意到有一个在while循环没有专柜,指定的路线,可能是这种情况?我用R编程的背景非常有限。该文件是一个.csv文件,具有329个变量和数百万行,为4.8GB。我只需要保留大约30个变量。
这是我使用的代码:
##Open separate connections to hold cursor position
file.in <- file('npidata_20050523-20130707.csv', 'rt')
file.out<- file('Mainoutnpidata.txt', 'wt')
line<-readLines(file.in,n=1)
line.split <-strsplit(line, ',')
##Column picking, only column 1
cat(line.split[[1]][1:11],line.split[[1]][23:25], line.split[[1]][31:33], line.split[[1]][308:311], sep = ",", file = file.out, fill= TRUE)
##Use a loop to read in the rest of the lines
line <-readLines(file.in, n=1)
while (length(line)){
line.split <-strsplit(line, ',')
if (length(line.split[[1]])>1) {
cat(line.split[[1]][1:11],line.split[[1]][23:25], line.split[[1]][31:33], line.split[[1]][308:311],sep = ",", file = file.out, fill= TRUE)
}
}
close(file.in)
close(file.out)