如何自动选择要呈现给观星者的元素 table
How to automatically choose elements to render to stargazer table
我保存了三个回归(reg1、reg2、reg3)及其标准误差(reg.se1、reg.se2、reg.se3)和聚类 p 值(reg.crp1、reg.crp2、reg. crp3).我想用 stargazer 创建一个图表:
stargazer(list(reg1, reg2, reg3), se=list(reg.se1, reg.se2, reg.se3), p=list(reg.crp1, reg.crp2,reg.crp3))
这很有效,但我需要再添加 30 个回归,我想知道是否有一种方法可以创建一个循环,以便我可以自动完成,而不必手动添加额外的 30 个回归?
非常感谢,
最大
我认为您不需要循环。 ls()
的一些创意字符串匹配应该就足够了。我已经使用 stringr
库来完成此操作,但是 base R 中的 ?grep
也应该可以工作。
library(stringr)
## this expression picks up everything that starts with "reg", but the fourth symbol is not '.'
coeflist <- ls()[!is.na(str_match(ls(), '^reg[^.;]+'))]
## this expression picks up everything that starts with "reg.se"
selist <- ls()[!is.na(str_match(ls(), '^reg.se'))]
## this expression picks up everything that starts with "reg.crp"
pvallist <- ls()[!is.na(str_match(ls(), '^reg.crp'))]
现在您可以通过
创建您的观星者table
stargazer(coeflist,
selist,
pvallist)
您需要确保您的命名空间没有其他具有匹配名称的元素。
我保存了三个回归(reg1、reg2、reg3)及其标准误差(reg.se1、reg.se2、reg.se3)和聚类 p 值(reg.crp1、reg.crp2、reg. crp3).我想用 stargazer 创建一个图表:
stargazer(list(reg1, reg2, reg3), se=list(reg.se1, reg.se2, reg.se3), p=list(reg.crp1, reg.crp2,reg.crp3))
这很有效,但我需要再添加 30 个回归,我想知道是否有一种方法可以创建一个循环,以便我可以自动完成,而不必手动添加额外的 30 个回归?
非常感谢,
最大
我认为您不需要循环。 ls()
的一些创意字符串匹配应该就足够了。我已经使用 stringr
库来完成此操作,但是 base R 中的 ?grep
也应该可以工作。
library(stringr)
## this expression picks up everything that starts with "reg", but the fourth symbol is not '.'
coeflist <- ls()[!is.na(str_match(ls(), '^reg[^.;]+'))]
## this expression picks up everything that starts with "reg.se"
selist <- ls()[!is.na(str_match(ls(), '^reg.se'))]
## this expression picks up everything that starts with "reg.crp"
pvallist <- ls()[!is.na(str_match(ls(), '^reg.crp'))]
现在您可以通过
创建您的观星者tablestargazer(coeflist,
selist,
pvallist)
您需要确保您的命名空间没有其他具有匹配名称的元素。