简体   繁体   English

观景台上的摘要列表

[英]stargazer over a list of summaryBy

I'm trying to get a unique table of summary statistics (eg. mean) for two variables in my data.frame ( prezzo and prezzo_unit_2 - sorry for not being generic) by several groups corresponding to categorical variables. 我试图通过与类别变量相对应的几个组来获取我data.frame中两个变量的摘要统计信息(例如均值)的唯一表( prezzoprezzo_unit_2抱歉)。 Since I was not able to do it, I tried to walk around the problem by creating a list of several summaryBy (library doBy ) and then applying stargazer to the list. 由于无法执行此操作,因此我尝试通过创建几个summaryBy (库doBy )的列表,然后将doBy应用于列表来解决该问题。 Unfortunately, stargazer gives this error message: 不幸的是, stargazer给出了以下错误信息:

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

Also, if i run stargazer over any subset of two elements from my list, it works. 另外,如果我对列表中两个元素的任何子集运行stargazer ,它也会起作用。

Any ideas? 有任何想法吗? Thanks a lot. 非常感谢。

Here is what I did: 这是我所做的:

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

I just had the same problem. 我只是有同样的问题。 Looking at the source code, when using a list of objects as input, the summary parameter must be a logical vector of the same length as your input list. 查看源代码,当使用对象列表作为输入时,summary参数必须是与输入列表长度相同的逻辑向量。

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

This should work, if you do not want to have summary statistics. 如果您不希望有摘要统计信息,则应该可以使用。 Adjust to your liking. 根据自己的喜好进行调整。 Sadly, this is not documented in the help file. 可悲的是,这没有记录在帮助文件中。 ?stargazer only gives the case for a single data.frame: ?stargazer仅给出单个data.frame的情况:

summary: a logical value indicating whether the package should output a summary statistics table when given a data frame. summary:一个逻辑值,指示在给定数据帧时包是否应输出摘要统计表。 If FALSE, the package will instead output the contents of the data frame. 如果为FALSE,则程序包将输出数据帧的内容。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM