2015-12-03 103 views
1

我有一個數據框(從RDS文件中讀取)和140個變量。我已將其中的3個子集化。但是子集只有一行和三列變量。我必須把它作爲一張表格並製作一張條形圖。子集數據框看起來像這樣。將數據框的特定單元格轉換爲R表中的表格

HomeCondn_Good HomeCondn_Livabl HomeCondn_Dilapdtd 
     (dbl)   (dbl)    (dbl) 
1  65.9    29.7    4.3 

可再現的例子如下:

structure(list(HomeCondn_Good = 65.9, HomeCondn_Livabl = 29.7, 
       HomeCondn_Dilapdtd = 4.3), .Names = c("HomeCondn_Good", "HomeCondn_Livabl", 
                 "HomeCondn_Dilapdtd"), class = c("tbl_df", "data.frame"), row.names = c(NA, 
                                   -1L)) 

欲將此轉換成一個表格式如下:

Parameter   Proportion 
1 HomeCondn_Good  65.9 
2 HomeCondn_Livabl  29.7 
3 HomeCondn_Dilapdtd  4.3 

我試圖重塑包並用於熔體功能。 (假設 '家' 是對象的名稱)

Home <- melt(Home) 
names(Home)[1] <- "Parameter" 
names(Home)[2] <- "Proportion" 

我收到以下警告:

沒有ID變量;使用所有作爲衡量變量

我實現這個閃亮的,雖然我得到了想要的表輸出,這顯然影響它要麼不給輸出,或只是不渲染程序的其他組件。有人可以幫我理解這個嗎?

回答

0

我們可以使用gathertidyr

library(tidyr) 
gather(df1, Parameter, Proportion) 
#    Parameter Proportion 
#    (fctr)  (dbl) 
#1  HomeCondn_Good  65.9 
#2 HomeCondn_Livabl  29.7 
#3 HomeCondn_Dilapdtd  4.3 
+0

我的道歉akrun ....我有貼錯了可重複碼是'melt'運動後....現予以更正....警告消息發生在我嘗試融化的時候。原始子集df沒有參數和比例選項,因爲它們稍後被重命名。 – LeArNr

+0

@LeArNr我只是複製/粘貼你發佈的'dput',它給了我相同的輸出,也就是期望的輸出 – akrun

+0

非常感謝,再次抱歉讓我感到困惑......不知道你可以通過變量名來整理.....它工作...將有可能抑制'(fctr)'和'(dbl)'消息... – LeArNr

相關問題