R 当我运行代码块时,一切正常,但当我尝试编织时,我会出错
正如标题所说,当我在R markdown文件中运行代码时,一切正常,我没有得到任何错误,但当我尝试编织时,我得到了一个错误 这是表示第一个错误正在发生的代码块(由于没有创建dta1,该失败显然会在之后导致一系列其他错误) 这些是我正在使用的库(我的设置块中有它们) 这是我正在使用的数据(这是导致错误的代码块上方唯一的代码块)R 当我运行代码块时,一切正常,但当我尝试编织时,我会出错,r,r-markdown,R,R Markdown,正如标题所说,当我在R markdown文件中运行代码时,一切正常,我没有得到任何错误,但当我尝试编织时,我得到了一个错误 这是表示第一个错误正在发生的代码块(由于没有创建dta1,该失败显然会在之后导致一系列其他错误) 这些是我正在使用的库(我的设置块中有它们) 这是我正在使用的数据(这是导致错误的代码块上方唯一的代码块) df% 变异(z_赋值=情况_)( t_random==1~“逮捕”, t_random==2~“建议”, t_random==3~“单独” ), d_实际=情况_( t
df%
变异(z_赋值=情况_)(
t_random==1~“逮捕”,
t_random==2~“建议”,
t_random==3~“单独”
),
d_实际=情况_(
t_final==1~“逮捕”,
t_final==2~“建议”,
t_final==3~“分开”,
t_final==4~“其他”
),
z_娇生惯养=ifelse(z_分配%在%c(“单独”、“建议”),1,0),
d_coddled=ifelse(d_实际百分比在%c中(“单独”、“建议”),1,0)
) %>%
过滤器(d_实际值!=“其他”)
df%
突变(pz_separ=1/(1+exp(1.21)),
pz_滞留=1/(1+exp(1.21+0.9)),
pz_advision=1/(1+exp(1.21+0.21)),
pdsepar=1/(1+exp(1.05)),
pd_停止=1/(1+exp(1.05+0.82)),
pd_建议=1/(1+exp(1.05+0.46)),
订单=行号()/n())%>%
分组依据(t_随机)%>%
变异(z_秩=行数()/n())%>%
解组()%>%
变异(Y=ifelse((z_赋值==“逮捕”&z_等级%
选择(t_随机、z_分配、t_最终、d_实际、z_溺爱、d_溺爱、Y、v_种族、s_种族、武器、s_化学、年、月)
那么,我做错了什么/遗漏了什么?问题在于
count
需要一个tibble/data.frame
作为输入,而不是一个列/向量。它应该是sum
library(dplyr)
df %>%
group_by(z_assignment) %>%
summarise(Arrest = sum(t_final == 1),
Advise = sum(t_final == 2),
Separate = sum(t_final == 3),
Total = sum(Arrest, Advise, Separate)) %>%
arrange(Separate) %>%
bind_rows(summarise_all(., funs(if(is.numeric(.)) sum(.) else "Total")))
-输出
# A tibble: 4 x 5
# z_assignment Arrest Advise Separate Total
# <chr> <int> <int> <int> <int>
#1 arrest 91 0 1 92
#2 advise 19 84 5 108
#3 separate 26 5 83 114
#4 Total 136 89 89 314
#一个tible:4 x 5
#z_分配逮捕通知单独总计
#
#1拘捕910192人
#2建议19 84 5 108
#3分开26 5 83 114
#4总计136 89 314
谢谢!我想我会错过一些简单的东西。。。
library(tidyverse)
library(AER)
library(stargazer)
library(haven)
library(lfe)
library(estimatr)
library(stringr)
library(dplyr)
library(modelsummary)
library(ggplot2)
library(haven)
df <- read_dta("http://masteringmetrics.com/wp-content/uploads/2015/02/mdve.dta")
df <- df %>%
rename_all(tolower) %>%
mutate(z_assignment = case_when(
t_random == 1 ~ "arrest",
t_random == 2 ~ "advise",
t_random == 3 ~ "separate"
),
d_actual = case_when(
t_final == 1 ~ "arrest",
t_final == 2 ~ "advise",
t_final == 3 ~ "separate",
t_final == 4 ~ "other"
),
z_coddled = ifelse(z_assignment %in% c("separate", "advise"),1,0),
d_coddled = ifelse(d_actual %in% c("separate", "advise"),1,0)
) %>%
filter(d_actual != "other")
df <- df %>%
mutate( pz_separ=1/(1+exp(1.21)),
pz_arrest=1/(1+exp(1.21+.9)),
pz_advise=1/(1+exp(1.21+.21)),
pd_separ=1/(1+exp(1.05)),
pd_arrest=1/(1+exp(1.05+.82)),
pd_advise=1/(1+exp(1.05+.46)),
order = row_number()/n()) %>%
group_by(t_random) %>%
mutate(z_rank = row_number()/n()) %>%
ungroup() %>%
mutate(Y = ifelse( (z_assignment == "arrest" & z_rank < pz_arrest) |
(z_assignment == "advise" & z_rank < pz_advise) |
(z_assignment == "separate" & z_rank < pz_separ), 1,0)) %>%
select(t_random, z_assignment, t_final, d_actual, z_coddled, d_coddled, Y, v_race, s_race, weapon, s_chem, year, month)
library(dplyr)
df %>%
group_by(z_assignment) %>%
summarise(Arrest = sum(t_final == 1),
Advise = sum(t_final == 2),
Separate = sum(t_final == 3),
Total = sum(Arrest, Advise, Separate)) %>%
arrange(Separate) %>%
bind_rows(summarise_all(., funs(if(is.numeric(.)) sum(.) else "Total")))
# A tibble: 4 x 5
# z_assignment Arrest Advise Separate Total
# <chr> <int> <int> <int> <int>
#1 arrest 91 0 1 92
#2 advise 19 84 5 108
#3 separate 26 5 83 114
#4 Total 136 89 89 314