小编use*_*905的帖子

R vs Stata 中的 Cox 比例风险模型

我正在尝试使用以下数据在 R 中复制来自 Stata 的 cox 比例风险模型估计http://iojournal.org/wp-content/uploads/2015/05/FortnaReplicationData.dta

stata中的命令如下:

stset enddate2009, id(VPFid) fail(warends) origin(time startdate)
stcox HCTrebels o_rebstrength demdum independenceC transformC lnpop lngdppc africa diffreligion warage if keepobs==1, cluster(js_country)

Cox regression -- Breslow method for ties

No. of subjects      =          104                Number of obs   =       566
No. of failures      =           86
Time at risk         =       194190
                                               Wald chi2(10)   =     56.29
Log pseudolikelihood =   -261.94776                Prob > chi2     =    0.0000

                           (Std. Err. adjusted for 49 clusters in js_countryid)
-------------------------------------------------------------------------------
              |               Robust …
Run Code Online (Sandbox Code Playgroud)

r stata survival-analysis

5
推荐指数
1
解决办法
1311
查看次数

data.table将NA替换为多列的均值和id

如果我有以下data.table:

dat <- data.table("id"=c(1,1,1,1,2,2,2,2), "var1"=c(NA,1,2,2,1,1,2,2),
              "var2"=c(4,4,4,4,5,5,NA,4), "var3"=c(4,4,4,NA,5,5,5,4))
   id var1 var2 var3
1:  1   NA    4    4
2:  1    1    4    4
3:  1    2    4    4
4:  1    2    4   NA
5:  2    1    5    5
6:  2    1    5    5
7:  2    2   NA    5
8:  2    2    4    4
Run Code Online (Sandbox Code Playgroud)

如何用id中每列的平均值替换缺失值?在我的实际数据中,我有许多变量,对于我想要替换的变量,所以如何以一般方式完成,例如它不会替换为var3而只替换为var1和var2?:

tomean=c("var1", "var2")
Run Code Online (Sandbox Code Playgroud)

我试过这样的东西,但我还没有找到解决方案:

dat[, (tomean) := mean(tomean, na.rm=TRUE), by=id, .SDcols = tomean]
Run Code Online (Sandbox Code Playgroud)

r missing-data data.table

5
推荐指数
1
解决办法
2053
查看次数

来自splm的乳胶回归表

我想知道哪种是在TeX中放置回归输出(splm对象)的最简单方法.Stargazer,texreg,latex不识别这种类型的对象,因此必须手动完成表格.我已经按照以下方式将系数和标准误差放在矩阵中(标准误差低于)(每列是不同的回归):

                      [,1]         [,2]          [,3]         [,4]         [,5]         [,6]
lambda         -0.550153770 -0.606755198 -1.0894505645  0.703821961 -0.560769652 -0.698232106
                0.056878033  0.056878033  0.0568780329  0.056878033  0.056878033  0.056878033
rho             0.571742772  0.618236404  0.7365074175 -1.017060680  0.745559212  0.733598140
                0.034064728  0.034064728  0.0340647282  0.034064728  0.034064728  0.034064728
Run Code Online (Sandbox Code Playgroud)

但是我不知道如何将星形(如果它们在矢量中)放入矩阵,标准误差的括号,最后将该矩阵放入TeX,包括rownames.

regression r tex stargazer

5
推荐指数
1
解决办法
336
查看次数

使用rvest刮擦跨度的html表

我正在使用rvest来提取下一页中的表格:

https://en.wikipedia.org/wiki/List_of_United_States_presidential_elections_by_popular_vote_margin

以下代码有效:

URL <- 'https://en.wikipedia.org/wiki/List_of_United_States_presidential_elections_by_popular_vote_margin'
table <- URL %>%  
  read_html %>% 
  html_nodes("table")  %>% 
  .[[2]] %>% 
  html_table(trim=TRUE)
Run Code Online (Sandbox Code Playgroud)

但是边缘和总统名称的列有一些奇怪的价值.原因是源代码具有以下内容:

<td><span style="display:none">00.001</span>?10.44%</td>
Run Code Online (Sandbox Code Playgroud)

所以不是得到-10.44%而是得到00.001'10.44%

我怎么能解决这个问题?

r html-table web-scraping rvest

5
推荐指数
1
解决办法
1294
查看次数

使用Python连接列表中的连续子列表对

如何将列表中的子列表成对组合?例如:

list1 = [[1,2,3],[4,5],[6],[7,8],[9,10]]
Run Code Online (Sandbox Code Playgroud)

结果将是:

[[1,2,3,4,5],[6,7,8],[9,10]]
Run Code Online (Sandbox Code Playgroud)

python list

3
推荐指数
1
解决办法
990
查看次数

dplyr 基于具有不同后缀的其他列进行变异

我有一个类似于这个的数据框:

df <- data.frame(a_1_1 = c(1, 0, 1), a_1_2=c(1,0,0),a_2_1=c(1,0,0), a_2_2=c(1,0 ,1), b=c(2,3,4))
Run Code Online (Sandbox Code Playgroud)

我想通过比较具有相同前缀的列来创建新变量,如下所示:

df <- df %>% mutate(a_1=case_when((a_1_1==1 | a_1_2==1)~"A", TRUE ~ "B")) %>% 
mutate(a_2=case_when((a_2_1==1 | a_2_2==1)~"A", TRUE ~ "B"))
Run Code Online (Sandbox Code Playgroud)

然而,在我的真实数据中,我有许多以“a_*”开头的变量,所以我想创建这些变量,而不是一次对每个变量都做。

r prefix dplyr suffix mutate

3
推荐指数
1
解决办法
271
查看次数

从 R 中的核密度归一化常数

如何从非标准分布中获得归一化常数。前任:

x <- c(rnorm(500,10,1),rnorm(500,20,2),rnorm(500,35,1))
Run Code Online (Sandbox Code Playgroud)

在 R 中使用密度后

dens<-density(x,n=length(x),adjust=0.4)
Run Code Online (Sandbox Code Playgroud)

normalizing r kernel-density

2
推荐指数
1
解决办法
2035
查看次数

在观星者回归输出中排序变量与交互

我有以下回归:

fit1 <- lm(y ~ x1, data = data)
fit2 <- lm(y ~ x1 + x2, data = data)
fit3 <- lm(y ~ x3 * x1, data = data)
Run Code Online (Sandbox Code Playgroud)

我希望在输出中解释变量是有序的(x1、x2、x3,最后是交互)。我按顺序尝试以下操作,但交互仍然出现在 x1 之后。这里可能有什么问题?

stargazer(fit1, fit2, fit3, align=TRUE, table.placement="H",omit.stat=c("f", "ser"), order=c("x1", "x2", "x3", "x3:x1"))
Run Code Online (Sandbox Code Playgroud)

r stargazer

2
推荐指数
2
解决办法
5937
查看次数

抑制来自观星者的星星和音符

如何使用观星者从回归表输出中删除星星和音符?

我试过包括:

star.cutoffs = NA
Run Code Online (Sandbox Code Playgroud)

它删除了星星,然而,在表的末尾出现"注意:NA",我也想删除它.

r stargazer

2
推荐指数
1
解决办法
2455
查看次数

在一个除了 python 之外返回

在except中包含函数时有什么问题?就我而言,我有以下功能:

def inventedfunction(list1):
    print "initial list %r" %list1

    SOMETHING THAT CREATES list2 based on list1

    try: 
        list2[1]
        print "inside try %r" %list2
        inventedfunction(list2) 
   except:
       print "inside except %r" %list2  
       return list2
Run Code Online (Sandbox Code Playgroud)

运行inventedfunction(somelist)后,似乎一切正常:

initial list [3, 562, 7, 2, 7, 2, 3, 62, 6]
inside try [[3, 562], [2, 7], [2, 7], [3, 62], [6]]
initial list [[3, 562], [2, 7], [2, 7], [3, 62], [6]]
inside try [[2, 3, 7, 562], [2, 3, 7, 62], [6]]
initial list [[2, 3, …
Run Code Online (Sandbox Code Playgroud)

python exception

0
推荐指数
1
解决办法
4424
查看次数