-1

我有一个包含多个文件的文件夹。从每个文件中,我想选择一个单元格(第三行,第 5 列)并将它们绑定到一个列中。这是我到目前为止所得到的:

  fnames1 <- scan(file.choose(), what = "character", quiet = TRUE)
  print(fnames1)
  for (i in fnames1) 

  {
  date.time <- read.table(paste("...",i, sep = ""), skip = 2, nrows = 1)
  timecol <- paste(date.time[, 5])
  time <- cbind(timecol)}

但我仍然只是得到几个单独的单元格,而不是一行包含所有单元格。

任何帮助将不胜感激!

编辑:对 MrFlick 的回答:当出现提示时,我选择一个文件,其中包含我要从中提取所需单元格的文件夹中所有文件的名称。这就是 fnames1 的来源。时间是我创建的一个变量,试图将所有单元格连接在一起(这显然不起作用)。在读取表之后添加该粘贴是我设法使循环正常工作的唯一方法......我对 R 非常陌生,我一直在反复试验。

4

1 回答 1

0

我仍然不确定我是否完全理解,但是呢?

fnames1 <- scan(file.choose(), what = "character", quiet = TRUE)
print(fnames1)
time <- sapply(fnames, function(fn) {
     date.time <- read.table(fn, skip = 2, nrows = 1)
     date.time[, 5]
})
print(time)

在这里,我们使用sapply循环文件名而不是for循环,它也会使用 date.time[3,5] 值自动为我们创建正确大小的向量。

于 2014-06-13T02:39:54.797 回答