我對 R 比較陌生,正在嘗試將帶有長字串的文本檔案轉換為每行一個字符的資料表的單列。我嘗試使用 readr 包中的 read_file 讀取文本檔案,然后將字串作為串列,最后使用 cbind,如下所示:
df <- data.frame("id" = 1:9)
string <-read_file("StringFilePath.txt")
string <- as.list(string)
df <- cbind(df, string)
不幸的是,我最終得到了資料框第一行中字串中的所有字符。我還嘗試在每個字符之間添加一個逗號,然后創建一個我可以更輕松地使用的 .csv 檔案,這可能是錯誤的,如下所示:
string <- gsub("(?<=.)(?=.)", ",", string, perl = TRUE)
write.csv(string, "StringFilePath.csv",
row.names = FALSE)
然而,.csv 最終以第一行中大約一半的字符結束,原因讓我無法理解。對解決這個看似簡單的問題的任何建議將不勝感激!
uj5u.com熱心網友回復:
您可以使用strsplit. 請注意,strsplit回傳一個串列,因此您必須將其轉換為字符向量
string <- "jasdklnjabfial"
data.table::data.table(x = unlist(strsplit(string, "")))
#> x
#> 1: j
#> 2: a
#> 3: s
#> 4: d
#> 5: k
#> 6: l
#> 7: n
#> 8: j
#> 9: a
#> 10: b
#> 11: f
#> 12: i
#> 13: a
#> 14: l
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/372040.html
上一篇:當應用程式在本地運行時,Node.js能夠連接到MySQL容器,但當應用程式在容器中運行時無法連接
下一篇:將字串格式化為與其他所有內容相同
