我想让一位同事复制一个第一差异线性面板数据模型,我用Stata和plm
R(或其他一些包)中的包来估计.
在Stata中,xtreg
没有第一个差异选项,所以我运行:
reg D.(y x), nocons cluster(ID)
Run Code Online (Sandbox Code Playgroud)
在R中,我正在做:
plm(formula = y ~ -1 + x, data = data, model = "fd", index = c("ID","Period"))
Run Code Online (Sandbox Code Playgroud)
系数匹配,但R中的标准误差大于Stata中的标准误差.我查看了plm
帮助和pdf文档,但我必须遗漏一些东西.
我在Ubuntu 14.04.2 LTS服务器上的统计软件包Stata(v14.2)中使用odbc insert命令将一些数据插入Teradata DB(v14.10).
这个Stata命令有一个block
选项,它使Stata以1000行的块发送数据.不幸的是,ODBC驱动程序似乎在进行单行插入(根据监视系统的DBA).
是否可以更改ODBC驱动程序行为?
如果是这样,如何指定ODBC驱动程序在.odbc.ini文件或连接字符串中使用的块大小?
我看过TD ODBC手册和谷歌搜索,但我找不到任何有用的东西.
有没有人有使用Stata和Hadoop的经验?Stata 13现在有一个Java Plugin API,所以我认为让它们玩得很好应该是直截了当的.
我特别感兴趣的是能够解析博客数据,使其成为适合统计分析的形式.
这个问题最近出现在Statalist上,但没有回应,所以我想我会在这里尝试一下观众更有可能体验这项技术.
通过API通过R从BigQuery查询数据时,是否有比将大数转换为字符串更好的处理大整数的方法?
这是一个MVE,显示整数显示为“ NA”的问题:
> library(bigrquery)
>
> bq_str <- "
+ SELECT
+ 206932402797274623 AS big_pk
+ ,SAFE_CAST(206932402797274623 AS string) AS string_pk
+ "
>
> my_df <- bigrquery::query_exec(query = bq_str,
+ project = 'XXXXXXXXXXX',
+ use_legacy_sql = FALSE,
+ bigint = "integer64")
0 bytes processed
Warning message:
In converter[[type]](data_m[i, ]) :
NAs introduced by coercion to integer range
> head(my_df)
big_pk string_pk
1 NA 206932402797274623
Run Code Online (Sandbox Code Playgroud)
这是代码:
library(bigrquery)
bq_str <- "
SELECT
206932402797274623 AS big_pk
,SAFE_CAST(206932402797274623 AS string) AS string_pk …
Run Code Online (Sandbox Code Playgroud) 是否有可能以某种方式在TD的case语句中使用select子句(而不是执行联接)?
我想做这样的事情:
SELECT
id,
, count(*)
, (CASE WHEN id IN ANY (SELECT DISTINCT ID FROM PARTICIPANTS_TABLE)
THEN 1 ELSE 0
end) AS participant
FROM EVERYONE_TABLE
GROUP BY id
Run Code Online (Sandbox Code Playgroud)
我得到的错误是“ CASE表达式的WHEN子句中的非法表达式”。
使用社区提供的 Stata命令考虑以下玩具示例coefplot
:
sysuse auto
reg weight i.foreign
eststo, title("Weight"): margins, eydx(foreign) post
reg price i.foreign
eststo, title("Price"): margins, eydx(foreign) post
coefplot est1 est2, horizontal
Run Code Online (Sandbox Code Playgroud)
是否有可能获得传说中的标题(甚至变量标签),而不是估计的名字(即Weight
和Price
,而不是est1
和est2
)?
我知道如何手动完成,但我无法弄清楚如何使用许多模型自动执行此操作.
我正在尝试编写一个命令,该命令返回一个四舍五入到小数点后两位的百分比标量。百分比可以为负数或正数,小数点前的位数未知。
这是 MRE,显示了我遇到的问题。
#delimit;
capture program drop my_note;
program my_note, eclass;
local my_x: display %-9.2f 92.23999999999999;
ereturn scalar my_x = `my_x';
end;
ereturn clear;
my_note;
ereturn list;
display %-9.2f 92.23999999999999;
display 92.23999999999999;
Run Code Online (Sandbox Code Playgroud)
我很困惑为什么 display 似乎做了正确的事情(将 92.23999999999999 转换为 92.24,尽管无论格式如何),但 e(my_x) 似乎没有继承该格式。
stata ×5
r ×2
teradata ×2
apache-pig ×1
biginteger ×1
bigrquery ×1
coefplot ×1
hadoop ×1
hive ×1
integer ×1
odbc ×1
plm ×1
sql ×1
stata-macros ×1