R在read.csv命令的空间不足时是否产生警告

R在read.csv命令的空间不足时是否产生警告,r,csv,memory,memory-management,R,Csv,Memory,Memory Management,这个问题很简单,甚至可能很愚蠢,但我在谷歌上找不到答案。我正在尝试使用以下命令将.txt文件读入R: data <- read.csv("perm2test.txt", sep="\t", header=FALSE, row.names=1, col.names=paste("V", seq_len(max(count.fields("perm2test.txt", sep="\t"))), sep=""), fill=TRUE) 数据显然未经测试,但应提供一些代码供您修改: datL

这个问题很简单,甚至可能很愚蠢,但我在谷歌上找不到答案。我正在尝试使用以下命令将.txt文件读入R:

data <- read.csv("perm2test.txt", sep="\t", header=FALSE, row.names=1, col.names=paste("V", seq_len(max(count.fields("perm2test.txt", sep="\t"))), sep=""), fill=TRUE)

数据显然未经测试,但应提供一些代码供您修改:

datL <- readLines("perm2test.txt") # one line per group
# may want to exclude some lines but question is unclear
listL <- lapply(datL, function(L) read.delim(text=L, colCasses="numeric") )
# This is a list of values by group
dfL  <- data.frame( vals = unlist(listL), 
# Now build a grouping vector that is associated with each bundle of values
                    groups= rep( LETTERS[1:length(listL)] ,
                                 sapply(listL, length) )
 # Might have been able to do that last maneuver with `stack`.

library(lattice)
bwplot( vals ~ groups, data=dfL)

datL(1)我不明白您的
col.names
参数与具有不同观察数的不同行有什么关系,(2)
fill=TRUE
可能会极大地扩展数据帧的结果大小:70 x 100k,(3)无论如何,即使对于
read.table
,也太长了,无法运行。强制它停止并尝试其他东西(
fread
maybe)。
read.csv()
用于.csv文件。我想你是在找
read.table()
。你能提供你的文本文件的样本吗?你想对这些数据做什么分析?数据帧可能不是最佳的。也许使用
readLines()
并以不同的方式处理这70行,也许使用
strsplit()
?这会返回什么:
table(count.fields(“perm2test.txt”,sep=“\t”)
?read.table()不起作用,因为它希望所有行都有相同数量的条目。col.names()将一个编号的列标题分配给条目数最多的行,我使用它作为read.csv()将只从前5行中取最大的一行,并任意决定作为表其余部分的最大列数(而后面的一些行需要更大的列)