2
每一行我有很多數據文件格式化是這樣的:[R函數read.table,在支架
{1, 2, 3, 4, 3, 4, 3}
{0, 1, 3, 4, 5, 4, 2}
{1, 2, 3, 7, 5, 8, 6}
是否有read.table
(或其他輸入功能)的方式來讀取這些數據?括號和數字之間沒有空格,所以我不能把它們當作字符列。
每一行我有很多數據文件格式化是這樣的:[R函數read.table,在支架
{1, 2, 3, 4, 3, 4, 3}
{0, 1, 3, 4, 5, 4, 2}
{1, 2, 3, 7, 5, 8, 6}
是否有read.table
(或其他輸入功能)的方式來讀取這些數據?括號和數字之間沒有空格,所以我不能把它們當作字符列。
寫下你的數據
txt <-
"{1, 2, 3, 4, 3, 4, 3}
{0, 1, 3, 4, 5, 4, 2}
{1, 2, 3, 7, 5, 8, 6}"
cat(txt, file="test1.txt")
讀入數據
read.table(text=gsub("[}{]", "", readLines("test1.txt")), sep=",")
readLines
作爲一個文本行讀取數據。
readLines("test1.txt")
#[1] "{1, 2, 3, 4, 3, 4, 3}" "{0, 1, 3, 4, 5, 4, 2}" "{1, 2, 3, 7, 5, 8, 6}"
然後,您可以使用gsub
刪除花括號。
gsub("[}{]", "", readLines("test1.txt"))
#[1] "1, 2, 3, 4, 3, 4, 3" "0, 1, 3, 4, 5, 4, 2" "1, 2, 3, 7, 5, 8, 6"
您可以使用read.table
,幾乎像往常一樣,但你將字符串傳遞到text
說法。
也爲在Linux系統上
data.table::fread("cat test1.txt | tr -d '{}'")
,並以同樣的方式使用,無需套餐
read.table(pipe("cat test1.txt | tr -d '{}'"), sep=",")
如果你的數據在測試1 stroed .txt,然後'read.table(text = gsub(「[} {]」,「」,readLines(「test1.txt」)),sep =「,」)'...必須是一個dup – user20650
在linux ,'data.table :: fread(「cat file | tr -d'{}'」)' –