我有了這個結構tbl
有以下形式:轉換矩陣data.frame
> tbl
a_1 a_2 a_3
[1,] "L" "14" "L"
[2,] "L" "62" "D"
[3,] "H" "0" "L"
這是一個矩陣,實際上是:
> class(tbl)
[1] "matrix"
但是當我試圖改變這爲data.frame
,則DF的所有條目只顯示數據類型,例如:
>as.data.frame(tbl, nrow = length(tbl[,1]), ncol = 3, byrow = TRUE)
a_1 a_2 a_3
<list> <list> <list>
<chr[1]> <chr[1]> <chr[1]>
<chr[1]> <chr[1]> <chr[1]>
<chr[1]> <chr[1]> <chr[1]>
我已經嘗試了多種選擇,但他們都不工作,包括:
data.frame(rows=rownames(tbl)[row(tbl)],vars=colnames(tbl)[col(tbl)], values=c(tbl))
但是我收到一個錯誤,當我嘗試使用它。我想造成data.frame
採取以下形式:
a_1 a_2 a_3
<char> <chr> <char>
"L" "14" "L"
"L" "62" "D"
"H" "0" "L"
我想找類似的Q的,但無法找到任何人誰有同樣的問題。任何建議將是一個很大的幫助!
dput(tbl)
structure(list("L", "L", "H", "14", "62", "0", "L", "D", "L"), .Dim = c(3L, 3L), .Dimnames = list(NULL, c("a_1", "a_2", "a_3")))
str(tbl)
List of 9
$ : chr "L"
$ : chr "L"
$ : chr "H"
$ : chr "14"
$ : chr "62"
$ : chr "0"
$ : chr "L"
$ : chr "D"
$ : chr "L"
- attr(*, "dim")= int [1:2] 3 3
- attr(*, "dimnames")=List of 2
..$ : NULL
..$ : chr [1:3] "a_1" "a_2" "a_3"
能否請您使用'dput'提供數據,以便我們可以看到什麼樣的數據你有結構嗎? – G5W
這是原始版本的一個較小版本 - 我對現在已修復的列「a2」的數據類型發生了錯誤。現在有意義嗎? – jmb277
好吧,我把它分解了一下,結果如下:'structure(list(「L」,「L」,「H」,「14」,「62」,「0」,「L」,「D 「,」L「),.Dim = c(3L, 3L),.Dimnames = list(NULL,c(」a_1「,」a_2「,」a_3「)))' – jmb277