2

prezzo我正在尝试通过与分类变量相对应的几个组为我的 data.frame 中的两个变量(并且prezzo_unit_2- 抱歉不是通用的)获得一个独特的汇总统计表(例如平均值) 。由于我做不到,我试图通过创建一个包含几个summaryBy(库doBy)的列表然后将 stargazer 应用于列表来解决这个问题。不幸的是,stargazer给出了这个错误信息:

Error in if (.global.summary[i] == TRUE) { : 
  missing value where TRUE/FALSE needed

此外,如果我运行stargazer列表中两个元素的任何子集,它就会起作用。

有任何想法吗?非常感谢。

这是我所做的:

lista<-list(summaryBy(prezzo+prezzo_unit_2~DOP, data=DB_ristr_no_outlayers, FUN=mean, var.names=c("prezzo", "prezzo al lt"), keep.names=TRUE),
            summaryBy(prezzo+prezzo_unit_2~Organic, data=DB_ristr_no_outlayers, FUN=mean,var.names=c("prezzo", "prezzo al lt"), keep.names=TRUE),
            summaryBy(prezzo+prezzo_unit_2~italia.nel.nome, data=DB_ristr_no_outlayers, FUN=mean,var.names=c("prezzo", "prezzo al lt"), keep.names=TRUE),
            summaryBy(prezzo+prezzo_unit_2~portogallo.nel.nome, data=DB_ristr_no_outlayers, FUN=mean,var.names=c("prezzo", "prezzo al lt"), keep.names=TRUE),
            summaryBy(prezzo+prezzo_unit_2~spagna.nel.nome, data=DB_ristr_no_outlayers, FUN=mean,var.names=c("prezzo", "prezzo al lt"), keep.names=TRUE),
            summaryBy(prezzo+prezzo_unit_2~grecia.nel.nome, data=DB_ristr_no_outlayers, FUN=mean,var.names=c("prezzo", "prezzo al lt"), keep.names=TRUE),
            summaryBy(prezzo+prezzo_unit_2~altra.origine.nel.nome, data=DB_ristr_no_outlayers, FUN=mean,var.names=c("prezzo", "prezzo al lt"), keep.names=TRUE),
            summaryBy(prezzo+prezzo_unit_2~nessuna.origine.nel.nome, data=DB_ristr_no_outlayers, FUN=mean,var.names=c("prezzo", "prezzo al lt"), keep.names=TRUE),
            summaryBy(prezzo+prezzo_unit_2~packaging, data=DB_ristr_no_outlayers, FUN=mean,var.names=c("prezzo", "prezzo al lt"), keep.names=TRUE),
            summaryBy(prezzo+prezzo_unit_2~materiale, data=DB_ristr_no_outlayers, FUN=mean,var.names=c("prezzo", "prezzo al lt"), keep.names=TRUE),
            summaryBy(prezzo+prezzo_unit_2~scatola, data=DB_ristr_no_outlayers, FUN=mean,var.names=c("prezzo", "prezzo al lt"), keep.names=TRUE),
            summaryBy(prezzo+prezzo_unit_2~premium, data=DB_ristr_no_outlayers, FUN=mean,var.names=c("prezzo", "prezzo al lt"), keep.names=TRUE),
            summaryBy(prezzo+prezzo_unit_2~monovarietale, data=DB_ristr_no_outlayers, FUN=mean,var.names=c("prezzo", "prezzo al lt"), keep.names=TRUE),
            summaryBy(prezzo+prezzo_unit_2~formato_0_250, data=DB_ristr_no_outlayers, FUN=mean,var.names=c("prezzo", "prezzo al lt"), keep.names=TRUE),
            summaryBy(prezzo+prezzo_unit_2~formato_251_500, data=DB_ristr_no_outlayers, FUN=mean,var.names=c("prezzo", "prezzo al lt"), keep.names=TRUE),
            summaryBy(prezzo+prezzo_unit_2~formato_501_1000, data=DB_ristr_no_outlayers, FUN=mean,var.names=c("prezzo", "prezzo al lt"), keep.names=TRUE),
            summaryBy(prezzo+prezzo_unit_2~formato_oltre_1000, data=DB_ristr_no_outlayers, FUN=mean,var.names=c("prezzo", "prezzo al lt"), keep.names=TRUE),
            summaryBy(prezzo+prezzo_unit_2~recensito, data=DB_ristr_no_outlayers, FUN=mean,var.names=c("prezzo", "prezzo al lt"), keep.names=TRUE)
            )

stargazer(lista, type="text", style="aer", summary=FALSE, title="any_title", out="any_title.xls")
4

1 回答 1

3

我只是有同样的问题。查看源代码,当使用对象列表作为输入时,摘要参数必须是与您的输入列表长度相同的逻辑向量。

stargazer(my.list,summary=rep(F,length(my.list)))

如果您不想拥有汇总统计信息,这应该可以工作。根据自己的喜好调整。遗憾的是,帮助文件中没有记录。?stargazer 只给出了单个data.frame的情况:

summary:一个逻辑值,指示在给定数据框时包是否应输出汇总统计表。如果为 FALSE,包将改为输出数据框的内容。

于 2015-10-16T10:54:41.980 回答