标签: stata

如何更改data.frame中列的内容

我正在使用来自世界发展指标(WDI)的数据,并希望将这些数据与其他一些数据合并.我的问题是两个数据集中的国家/地区名称的拼写是不同的.如何更改国家/地区变量?

library('WDI')
df <- WDI(country="all", indicator= c("NY.GDP.MKTP.CD", "EN.ATM.CO2E.KD.GD", 'SE.TER.ENRR'), start=1998, end=2011, extra=FALSE)

head(df)
      country iso2c year NY.GDP.MKTP.CD EN.ATM.CO2E.KD.GD SE.TER.ENRR
99  ArabWorld    1A 1998   575369488074          1.365953          NA
100 ArabWorld    1A 1999   627550544566          1.355583    19.54259
101 ArabWorld    1A 2000   723111925659          1.476619          NA
102 ArabWorld    1A 2001   703688747656          1.412750          NA
103 ArabWorld    1A 2002   713021728054          1.413733          NA
104 ArabWorld    1A 2003   803017236111          1.469197          NA
Run Code Online (Sandbox Code Playgroud)

我如何将ArabWorld改为阿拉伯世界?

我需要更改很多名称,所以使用row.numbers这样做不会给我足够的灵活性.我想要的东西类似于replaceStata中的功能.

r dataframe stata

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

Stata:使用更改标题,纵向数据集循环创建图形

我在Stata中有一个纵向数据集,并希望tsline在变量内创建每个组的单独图形.所以,假设我有时间从1980年到2010年运行,类别1,2,...,17; 我想创建十七个单独的tsline图形,绘制从1980年到2010年的变量X的相应值,并使用类别标签作为标题.

我写了一个创建的短循环tsline graphs,但我无法弄清楚如何添加正确的标题.标题应该是分类变量值的标签.也就是说,如果我绘制X ID == 1,我希望标题是标签ID == 1,如果可能的话.理想情况下,我想一个特定的值标签存储为local每个`i'循环中.这样我也可以在导出图形时将它也用作文件名的一部分,例如给出.

我的代码:

tsset ID Date, daily

forvalues i = 1/17 {
tsline X if ID==`i', title(??)
}
Run Code Online (Sandbox Code Playgroud)

for-loop graph stata

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

约束坡度

我是Stata的初学者.我正在尝试运行以下回归:

regress logy logI logh logL

但我想限制坡度为logh1.有人可以告诉我这个命令吗?

regression stata

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

Stata:变量元素

如何编辑变量的每个第二个值?

我的代码是:

set obs 100
gen u = invnorm(uniform())
forvalues d = 1/50 {
gen u[2*d] = u[2*d] + 1
}
Run Code Online (Sandbox Code Playgroud)

我的代码出了什么问题?

loops vector stata

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

Stata嵌套的foreach循环子串比较

我刚刚开始学习Stata,我很难过.我的问题是:我有两个不同的变量,ATC并且A,其中A可能是子串ATC.现在我想,以纪念所有的意见中,A是的一个子ATCOK = 1.

我使用一个简单的嵌套循环尝试了这个:

foreach x in ATC {
foreach j in A {
        replace OK = 1 if strpos(`x',`j')!=0
    }
}
Run Code Online (Sandbox Code Playgroud)

但是,每当我运行此循环时,即使应该有足够的数据,也不会进行任何更改.我觉得我应该给出一个索引来指定哪个OK被更改(属于ATC/ x的那个),但我不知道如何做到这一点.这可能非常简单,但我已经挣扎了一段时间.


我应该澄清一下:我的A列表与主列表分开(只是附加到它),并且只包含我用来识别ATC我想要的s的唯一键.所以我有~120个A键和几百万个ATC键.我想要做的是迭代每个ATC单键的每个A键,并标记那些ATC具有A该限定条件的键.

这意味着我没有的(完整的元组ATC,A,OK),但不同的大小,而不是单独的列表.例如:我有

ATC    OK  A 
ABCD   0   .
EFGH   0   .
...   ...  ...
.     . …
Run Code Online (Sandbox Code Playgroud)

foreach loops nested substring stata

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

(从Stata到R)数据博览和变量创建:count,list,bysort,egen

尝试从Stata过渡到R是令人兴奋和具有挑战性的,但我仍在R中努力的一个领域是数据探索,然后是后续的变量创建.具体来说,如何

  1. 计算变量的值(Stata的计数命令)

    count if var 2==3
    /* counts the number of observations that have a value of 3 on var2 */
    
    Run Code Online (Sandbox Code Playgroud)
  2. 列出符合条件的观察结果(Stata's if qualifier)

    list id if var7 < 8
    /*lists the ID of observations with a value less than 8 on var7 */
    
    Run Code Online (Sandbox Code Playgroud)
  3. 按分组变量制表(Stata的bysort命令)

    bysort var3: tab1 var2 var9 if var8=2 | var1 !=11
    /* create a two-way frequency table for those observations of var2 and var9 where
       var8 is 2 or var1 isn't 11 …
    Run Code Online (Sandbox Code Playgroud)

sorting r subset data-mining stata

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

计算bash中第一列中具有相同条目的行数

我有一个如下所示的数据文件:

123456, 1623326
123456, 2346525
123457, 2435466
123458, 2564252
123456, 2435145
Run Code Online (Sandbox Code Playgroud)

第一列是"ID" - 一个字符串变量.第二栏对我来说无关紧要.我想结束

123456, 3
123457, 1
123458, 1
Run Code Online (Sandbox Code Playgroud)

其中第二列现在计算原始文件中与第一列中唯一"ID"对应的条目数.

在bash或perl中的任何解决方案都会很棒.即使Stata也会很好,但我认为这在Stata中更难做到.如果有任何不清楚的地方,请告诉我.

bash shell perl stata

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

Python和Stata中的稳健线性回归结果不同意

我的同事和我正在做这项任务,涉及对Fama-French 3因子模型进行回归.我使用了python Statsmodels模块,他们使用Stata,我们共享同一组数据.对于普通最小二乘回归,我们得到了相同的答案.但由于某种原因,稳健的回归结果并不一致.

以下是Stata的结果: 在此输入图像描述

以下是Statsmodels的结果: 在此输入图像描述

只是想知道这个问题可能是什么原因?有什么方法可以解决吗?我还在Statsmodels中尝试了不同的方法(HuberT,RamsayE等),并且它们都没有与Stata的结果相同的答案.任何帮助表示赞赏.

python statistics regression stata statsmodels

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

如何找到具有特定特征的观察然后将其删除?

我有一个包含特定长度的字母数字字符串的变量,例如:

名称变量:

asdf1
asdg2
zxcv4
asdh3
qwer2
rtyu4
xcvb4
Run Code Online (Sandbox Code Playgroud)

我想删除具有4其名称的最后一个字符的观察结果,例如zxcv4.所以,结果是:

名称变量:

asdf1
asdg2
asdh3
qwer2
Run Code Online (Sandbox Code Playgroud)

我怎样才能做到这一点?

stata

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

从distinct命令返回一个矩阵

我对distinctStata中的命令有一个简单的问题.

当使用by前缀时,它是否可以返回一维矩阵r(N)

例如:

sysuse auto,clear
bysort foreign: distinct rep78
Run Code Online (Sandbox Code Playgroud)

我可以存储[2,1]矩阵,每行代表不同值的数量rep78吗?

该手册似乎表明它只存储最后一个值的不同值的数量.

stata stata-macros

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