将数据框的特定单元格转换为 R 中的 table

Converting specific cells of data frame to table in R

我有一个包含 140 个变量的数据框(从 RDS 文件读取)。我已经对其中的 3 个进行了子集化。但是子集只有一行和三列变量。我必须将其呈现为 table 并制作条形图。子集数据框如下所示。

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))

我想将其转换为以下格式的 table:

   Parameter           Proportion
1 HomeCondn_Good        65.9
2 HomeCondn_Livabl      29.7
3 HomeCondn_Dilapdtd     4.3

我尝试了 reshape 包并使用了 melt 函数。 (假设'home'是对象的名称)

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

我收到以下警告:

No id variables; using all as measure variables

我在 Shiny 中实现了这个,虽然我得到了想要的 table 输出,但这显然会影响程序的其他组件,这些组件要么不提供输出,要么不渲染。有人可以帮我理解吗?

我们可以使用 gather 来自 tidyr

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