有没有人有一个很好的清洁方式来获取模型的predict行为felm?
library(lfe)
model1 <- lm(data = iris, Sepal.Length ~ Sepal.Width + Species)
predict(model1, newdata = data.frame(Sepal.Width = 3, Species = "virginica"))
# Works
model2 <- felm(data = iris, Sepal.Length ~ Sepal.Width | Species)
predict(model2, newdata = data.frame(Sepal.Width = 3, Species = "virginica"))
# Does not work
Run Code Online (Sandbox Code Playgroud) 我已经阅读了所有文档和LFE的大部分来源.所有演示文稿都强调传统lisp角色中的基本lisp - 一般问题解决,Hello world和语法模拟宏.
有谁知道LFE如何处理消息传递原语?要指定更精确的问题,您将如何表达此erlang:
A = 2,
Pid = spawn(fun()->
receive
B when is_integer(B) -> io:format("Added: ~p~n",[A+B]);
_ -> nan
end
end),
Pid ! 5.
Run Code Online (Sandbox Code Playgroud)
然后,你知道,它总结了一些关于添加了一些数字而答案是7的东西.
有没有办法从标准误差中获得预测行为,lfe::felm如果使用投影方法扫除固定效果felm?这个问题与此处的问题非常相似,但该问题的答案都不能用于估计标准误差或置信度/预测间隔.我知道目前没有predict.felm,但我想知道是否有类似于上面链接的变通方法,可能也可用于估计预测间隔
library(DAAG)
library(lfe)
model1 <- lm(data = cps1, re74 ~ age + nodeg + marr)
predict(model1, newdata = data.frame(age=40, nodeg = 0, marr=1), se.fit = T, interval="prediction")$fit
# Result: fit lwr upr
# 1 18436.18 2339.335 34533.03
model2 <- felm(data = cps1, re74 ~ age | nodeg + marr)
predict(model2, newdata = data.frame(age=40, nodeg = 0, marr=1), se.fit = T, interval="prediction")$fit
# Does not work
Run Code Online (Sandbox Code Playgroud)
目标是估计yhat的预测间隔,我认为我需要计算完整的方差 - 协方差矩阵(包括固定效应).我一直无法弄清楚如何做到这一点,我想知道它是否在计算上是可行的.
当我运行集群标准错误面板规范时plm,lfe我得到的结果在第二个有效数字上有所不同.有谁知道为什么他们的SE计算不同?
set.seed(572015)
library(lfe)
library(plm)
library(lmtest)
# clustering example
x <- c(sapply(sample(1:20), rep, times = 1000)) + rnorm(20*1000, sd = 1)
y <- 5 + 10*x + rnorm(20*1000, sd = 10) + c(sapply(rnorm(20, sd = 10), rep, times = 1000))
facX <- factor(sapply(1:20, rep, times = 1000))
mydata <- data.frame(y=y,x=x,facX=facX, state=rep(1:1000, 20))
model <- plm(y ~ x, data = mydata, index = c("facX", "state"), effect = "individual", model = "within")
plmTest <- coeftest(model,vcov=vcovHC(model,type = "HC1", cluster="group"))
lfeTest …Run Code Online (Sandbox Code Playgroud) Erlang已经安装:
$dpkg -l|grep erlang
ii erlang 1:13.b.3-dfsg-2ubuntu2 Concurrent, real-time, distributed function
ii erlang-appmon 1:13.b.3-dfsg-2ubuntu2 Erlang/OTP application monitor
ii erlang-asn1 1:13.b.3-dfsg-2ubuntu2 Erlang/OTP modules for ASN.1 support
ii erlang-base 1:13.b.3-dfsg-2ubuntu2 Erlang/OTP virtual machine and base applica
ii erlang-common-test 1:13.b.3-dfsg-2ubuntu2 Erlang/OTP application for automated testin
ii erlang-debugger 1:13.b.3-dfsg-2ubuntu2 Erlang/OTP application for debugging and te
ii erlang-dev 1:13.b.3-dfsg-2ubuntu2 Erlang/OTP development libraries and header
[... many more]
Run Code Online (Sandbox Code Playgroud)
Erlang似乎有效:
$ erl
Erlang R13B03 (erts-5.7.4) [source] [64-bit] [smp:2:2] [rq:2] [async-threads:0] [hipe] [kernel-poll:false]
Eshell V5.7.4 (abort with ^G) …Run Code Online (Sandbox Code Playgroud) 我试图估计一个具有滞后和多组效应的大型动态固定效果面板数据模型.
我知道包中的pseries对象plm可以处理具有滞后的面板回归.
library(plm)
data("EmplUK", package = "plm")
Em <- pdata.frame(EmplUK)
plm(emp~output+capital + lag(wage, 1),data=Em,model="within")
Run Code Online (Sandbox Code Playgroud)
lfe面板对象的包装中是否有类似的解决方案,以便我可以利用提供的快速性lfe?
我正在使用 lfe-package 估计具有固定效应和集群标准误差的模型。
事实证明,我有一个巨大的 t 值(23.317),但只有一个相对较小的 p 值(0.0273)。这似乎与我使用固定效果的投射有关。当我手动估计固定效应作为控制变量时,我的 p 值太小而无法报告 <2e-16 。
考虑以下工作示例(如果它比严格必要的更复杂,我很抱歉,我试图接近我的应用程序):
我只是在估计 50 个时期内 10 个时间序列的合并面板估计量。我假设时间序列中有两个集群。
library(data.table)
library(lfe)
x <- rnorm(50, mean = 1, sd = 1)
common_shock <- rnorm(50, mean = 0, sd = 1)
y1 = 0.5 + 5*x + rnorm(50, mean = 0, sd = 2) + common_shock
y2 = 0.5 + 5*x + rnorm(50, mean = 0, sd = 2) + common_shock
y3 = 0.5 + 5*x + rnorm(50, mean = 0, sd = …Run Code Online (Sandbox Code Playgroud)