此解決方案確實涉及很多步驟,所以我認爲它值得回答,但我'你喜歡你試着改進你的問題,以確保我正在回答你打算提出的問題。例如,你說你想要一個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