首页 > 解决方案 > 具有多个因子级别的 Openxlsx 表

问题描述

我正在尝试制作一个脚本,让我在当前和未来的所有研究项目中尽可能轻松地获取和查看描述性信息和统计数据。到目前为止,Openxlsx 正在创造奇迹,但我在当前脚本中遇到了一个严重缺陷:我使用聚合命令在 R 中创建的具有多个因子级别的任何表(例如 Race;包含“White”、“Black”、 "Asian", "Other) 仅显示 R 中的所有级别。当使用 Openxlsx 将表格导出到 excel 时,表格中只有第一个因子级别显示为 "x",其他的则缺失。

有没有办法将通过聚合命令创建的表格导出到 excel 中,显示所有因素的水平?我不确定为什么 R 显示所有级别,但 excel 不显示。

excel输出图片

我的脚本在这里(分析 2 是问题):

pubdata=read.csv("pubdatarecoded.csv",header=TRUE)
library(psych)
library(openxlsx)
str(pubdata)
wb <- createWorkbook("doesnotmatter")

分析一:整个数据框的描述性统计表

DescriptivesTable=describe(pubdata)
addWorksheet(wb, "DescriptiveStats")
writeData(wb, "DescriptiveStats", DescriptivesTable, startCol = 1, startRow = 1, rowNames = TRUE)

分析 2:检查所有条件下的人口统计数据

addWorksheet(wb,"DemographicLoadings")
DemoLoadingsCheckTable=aggregate(pubdata$Race,by=list(pubdata$Guilt,pubdata$Discount,pubdata$TP),FUN=summary.factor)
writeData(wb, "DemographicLoadings", DemoLoadingsCheckTable, startCol = 1, startRow = 1, rowNames = FALSE)

标签: rexcelaggregateopenxlsx

解决方案


推荐阅读