此解决方案确实涉及很多步骤,所以我认为它值得回答,但我'你喜欢你试着改进你的问题,以确保我正在回答你打算提出的问题。例如,你说你想要一个csv与两个行,但从你的描述的声音我认为你其实意味着你想要两个列。我在下面的解决方案中对此进行了一些猜测。
有发生在这里的几个基本步骤:
- 通过你的工作目录遍历找到在时间的路径和.txt文件
- 读取每个文件,一个所有的行名
- 选择第一行
- 突破将第一行字
- 选择第一行的最后一个字
- 追加这个词的运行列表
- 后迭代完成,建立一个data.frame和写入CSV输出
fp = tools::list_files_with_exts(dir='.', ext='txt', full.names = TRUE)
fn = tools::list_files_with_exts(dir='.', ext='txt', full.names = FALSE)
fn = tools::file_path_sans_ext(fn)
items = length(fp) # get our iterator length for files
lastword = as.character(NULL)
for(i in 1:items) { # iterate through files
line = readLines(fp[i])[1] # read in lines and select the first
words = strsplit(line, ' ')[[1]] # split string into vector on spaces
word = tail(words, 1) # get the last word of the vector
lastword = c(lastword, word) # combine with lastword list
}
df = data.frame(filename=fn, lastword)
write.csv(df, 'my.csv')
哇@Mikuana太感谢你了。我不擅长编码,但如果我阅读你的建议,我会得到你的解决方案,我喜欢它。 我真的是指栏。对困惑感到抱歉! 如果我尽管试试你的代码,会出现以下错误: '错误文件(CON,“R”):无法打开连接 另外:警告消息: 在文件(CON,“R”):无法打开文件'NA':没有这样的文件或目录' 我试图谷歌它,并将文件移动到另一个文件夹以及使用'setwd'。这似乎是一个R具体的错误,我不知道如何解决方法:( – Dumbledoge
对不起,我再次,我忘了提及,我也确保我的源路径以另一个Stackoverflow线程中讨论的“/”结尾。 – Dumbledoge
我认为这两个错误都存在,因为'fp == NA'。你看过“fp”对象的元素吗?你是否收回了一个向你的txt文件看起来像有效文件路径的向量? – Mikuana