如何在r中合并dataframe中的列标题
我在R中有一个数据帧,看起来像这样如何在r中合并dataframe中的列标题,r,excel,dataframe,R,Excel,Dataframe,我在R中有一个数据帧,看起来像这样 Housing = c("Average Housing Year Built", "Owner Occupied", "Occupied Units", "Rent as a Percent of MFI", "All Residents", "Hispanic/Latino", "White", "Black", "Asian")
Housing = c("Average Housing Year Built",
"Owner Occupied",
"Occupied Units",
"Rent as a Percent of MFI",
"All Residents",
"Hispanic/Latino",
"White",
"Black",
"Asian")
Values = c(1920, 5065886, 7255261, 99444.94, "20.54%", "27.7%", "18.67%",
"36.64%", "42.42%")
Housing = data.frame(Housing, Values)
我试图将列标题-Housing$Housing
和Housing$Values
合并到一个名为Housing\u characteristics
的单元格中,数据框的其余部分必须相同。就像Excel电子表格一样
我希望输出像这样-
我在一个RShiny应用程序中显示了一堆这样的数据帧,需要格式化标题以获得清晰的外观
谢谢 这可能是你能得到的最接近的东西:
library(stargazer)
stargazer(Housing, summary = FALSE, type = "text",
rownames = FALSE, align = TRUE, title = "Housing Characteristics")
文本表:
Housing Characteristics
===================================
Housing Values
-----------------------------------
Average Housing Year Built 1920
Owner Occupied 5065886
Occupied Units 7255261
Rent as a Percent of MFI 99444.94
All Residents 20.54%
Hispanic/Latino 27.7%
White 18.67%
Black 36.64%
Asian 42.42%
-----------------------------------
请注意,这不是一个data.frame
。这是一个以文本形式输出到控制台的表,因此您不能像处理data.frame
那样对其进行操作
如果您对闪亮应用程序中的latex表没有问题,您还可以使用默认的type=latex
选项:
library(stargazer)
stargazer(Housing, summary = FALSE, header = FALSE,
title = "Housing Characteristics")
乳胶代码:
\begin{table}[!htbp] \centering
\caption{Housing Characteristics}
\label{}
\begin{tabular}{@{\extracolsep{5pt}} cc}
\\[-1.8ex]\hline
\hline \\[-1.8ex]
Housing & Values \\
\hline \\[-1.8ex]
Average Housing Year Built & 1920 \\
Owner Occupied & 5065886 \\
Occupied Units & 7255261 \\
Rent as a Percent of MFI & 99444.94 \\
All Residents & 20.54\% \\
Hispanic/Latino & 27.7\% \\
White & 18.67\% \\
Black & 36.64\% \\
Asian & 42.42\% \\
\hline \\[-1.8ex]
\end{tabular}
\end{table}
这在一个闪亮的应用程序上看起来很不错 修改显示的输出,而不是
数据帧
。以下内容将绘制一个带有标题的交互式表格,但仍允许对列进行排序:
library(DT)
sketch = htmltools::withTags(table(
class = 'display',
thead(
tr(
th(colspan = 2, 'Housing Characteristics')
),
tr(
th('Description'),
th('Values')
)
)
))
datatable(Housing, container = sketch, rownames = FALSE)
源自第2.5节的示例能否提供所需的样本输出?所需的输出不清楚。合并列标题是什么意思?您只需创建一个名为“住房特征”的新专栏,我已经编辑了我的帖子,以包含我试图实现的输出。我可以创建一个新列并合并所有内容,但我希望只合并列标题,以便明确值之间的界限。我将非常感谢任何帮助!我认为这在R中是不可能的,因为一个公共标题意味着它是一个单独的列,而它们不是。如果您想将其输出为一个可读性好的表格,而不将其存储为
data.frame
,则可以使用latex表格进行选择。非常感谢用户!这看起来真的很酷,我应该更多地探索这类表格!快速问一下,我如何通过我的应用程序呈现这个?我试图将您的代码插入到服务器端的一个输出对象中,但只得到了Latex代码。无法在第二个映像中获取输出表。我目前正在混合使用renderTables和renderDataTables,它们通过选项卡设置来显示不同的属性。@AshwinRamesh在Shining
中有一个名为withMathJax
的函数,可以渲染latex。您可能需要查看以下内容:。如果您仍然有问题,最好提出一个新的问题,特别是关于在shiny中呈现latex表的问题