我使用xtivreg,xtabond实现了动态面板数据模型。在样本中,我有305组:
.xtsum id
+--------------+
| Observations |
+--------------+
| N=13588 |
| n=305 |
| T-bar=44.5508|
+--------------+
Stata只使用我示例中的292组作为xtabond。
Number of obs=11636
Number of groups=292
对于xtivreg,它只使用213组
Number of obs=8199
Number of groups =21
我使用的是Stata,有两个周期的面板数据,t1和t2。我还有一个唯一的标识符,如果此人在这两个时期都做出了响应,则该标识符在两个时期内是恒定的。
例如,如果person001在t1和t2中都完成了调查,则每个周期的答案都存储在标识符person001下。这导致数据集中的两个条目具有相同的标识符,一个在t1下,另一个在t2下。
然而,有些人只在一段时间内完成了调查,因此他们的标识符只出现在t1或t2中。
我想有一种方法来drop那些只出现在一个或另一个时期。
我试过了
drop if identifier[_n-1] != identifier if period == t2
但这只是简单地
我正在尝试为Stata中的一个变量生成频率,条件是另一个变量的类别。
另一个分类变量对我感兴趣的类别有大约79万个观察值。
Stata对单向表和双向表分别有12,000行和1,200行的限制,这使得这是不可能的。
每次运行tab x if y==<category of interest>时,我都会得到以下错误:
too many values
r(134);
我安装了bigtab包,虽然它提供了表,但它不能与by一起使用,也不能运行统计测试。
有没有解决这个问题的办法?
当SAS甚至SPSS都可以毫无问题地运行完全相同的操作时,Stata竟然会有这个任意的限制,这似乎很愚蠢。
我一直试图将最初从merge导入的三个Stata文件与6个字符串ID代码(例如n5fpeb)合并,但没有成功。它们作为str6变量存储在Stata数据文件中。
我还记录了一些其他变量,这些变量也识别了每个观察结果--一个数字参与者ID和一个学校ID编号,因为每个参与者都是学生。我的主数据集是堆叠格式的,因为我的数据是纵向的。当我尝试1:m合并(即merge 1:m id using "C:\Users ... May.dta", generate(_merge1))时,Stata返回以下错误消息:variable id does not uniquely identify ob
我有一个不同时间段的不同公司的列表。在研究期间,公司会更换行业。我只想在我的数据中保留每个公司所有年份的最后一个行业价值。有人能帮我在Stata中怎么做吗?示例:
当前数据
Time Company Industry
---------------------------
1 A Agriculture
2 A Agriculture
3 A Mining
1 B Service sector
2 B Service sector
3 B Ag
数据是通过与ID对应的一组信息设置的,这些信息可以多次显示。
ID Data
1 X
1 Y
2 A
2 B
2 Z
3 X
我想要一个循环来表示我正在查看的ID的实例。是第一次,还是第二次,等等?我希望它是_#形式的字符串,所以据我所知,我必须超越Stata中的简单_n函数。如果有人知道如何在不使用循环的情况下做我想做的事情,请让我知道,但我仍然希望得到答案。
我在Stata中有以下循环
by ID: gen count_one =
我有以下initial.dta数据集:
obs. ID city salary
1 123 Normal 100
2 124 Paris 120
3 125 NY 130
4 122 .a 155
5 120 Paris 100
6 128 Chicago 150
................
city和salary的某些值可能丢失(.a)。我需要计算每个可能的城市值的平均工资,并将其发布到不同的Stata .dta,这样新
read.csv("C:\Users\easy\Desktop\workbook.csv")
我需要估计数据集中国家列表的结构断点,我需要为每个国家存储这些盈亏平衡点,并在循环结束后以表格形式显示这些盈亏平衡点。我的数据集是面板数据,这就是我需要遍历国家的原因。
我估计每个国家在我的国家名单的countrynum变量中的回归。我试图存储每个国家回归估计的盈亏平衡点如下
foreach i in countrynum {
by countrynum, sort: reg y x1 x2 x3 if `i'== countrynum
est store
在Stata的一个特殊问题上,我需要帮助。我有一个id year从1996年到2018年的面板数据集。面板数据是世界各国和地区的组合,年度观测,针对7种不同的作物,种植面积。
我想在2000年、2010年和2018年左右创建一个平均值,以便mean(year2000)= mean of (1999+2000+2001),mean(year2010)=mean from (2009+2010+2011)和mean(year2018)= mean from (2016+2017+2018)。
然后,当我需要合并一些国家以形成子区域时,问题就更加复杂了:假设我需要子区域RUS1 =俄罗斯+乌克兰。如
专有软件Stata version 14在LTS 16.04上运行良好,但我犯了一个错误:将Ubuntu升级到16.10,而没有考虑专有软件(Stata是我唯一的一个)可能会崩溃的可能性。我不能降级。斯塔塔说:
stata-se: error while loading shared libraries: libpng12.so.0: cannot open shared object file: No such file or directory
Stata支持告诉我要安装libpng12。
因此,我的问题是,如何安全地安装并使Stata可以使用这个库?(显然,Stata即使在库中也不能很好
我试图复制R.中的Stata的结果,给我带来麻烦的具体路线似乎很简单。
Stata的生产线是sum peace_index_score if Africa == 1
我在R中尝试的代码是
if (World$Africa == 1){
summary(World$peace_index_score)
}
这将返回以下错误消息:
Warning message in if (World$Africa == 1) {:
“the condition has length > 1 and only the first element will be used”
我目前正在使用Stata中的拼板数据,并运行以下命令来定义拼板:
encode ticker, generate(ticker_n)
xtset ticker_n time
其中,报价器是字符串(证券交易所上市公司的报价器),时间是从930 (开市)到1559 (收盘)的整数。因此,这里的时间表示证券交易所打开的分钟数。股票市场开盘的每一分钟,我们都有股票交易所股票代码的收盘价。数据示例如下所示:
date time open high low close volume ticker ticker_n
09/15/2008 930 33
最近,我一直在尝试将许多随机效应模型拟合到相对较大的数据集中。假设大约有5万人(或更多)在25个时间点观察到。有了这么大的样本数量,我们就包括了很多我们正在调整的预测因子--也许是50个左右的固定效应。我用R中的lme4::glmer将模型拟合成二进制结果,并对每个主题进行随机截取。我不能详细介绍数据,但是我使用的glmer命令的基本格式是:
fit <- glmer(outcome ~ treatment + study_quarter + dd_quarter + (1|id),
family = "binomial", data = d