除了通过重定向捕获整个会话之外,有没有办法在R会话期间启动和停止记录?为了澄清,我正在寻找与log usingStata中的命令类似的东西.
我一直在使用Python进行回归分析.获得回归结果后,我需要将所有结果汇总到一个表中并将它们转换为LaTex(用于发布).是否有任何包在Python中执行此操作?像Stata中的estout这样的东西给出了下表:

我有一堆Stata .dta文件,我想在R中使用.
我的问题是变量名对我没有帮助,因为它们就像"q0100","q0565","q0500"和"q0202".然而,它们被标记为"psu","怀孕的数量","户主"和"航点".
我希望能够抓住标签("psu","航点"等等),并将它们用作我的变量/列名称,因为这些更容易让我使用.
有没有办法做到这一点,最好是在R中,还是通过Stata本身?我知道库(外国)中的read.dta,但不知道它是否可以将标签转换为变量名.
我试图从明尼苏达大学IPUMS数据集的数据分析1990年美国人口普查在R.我正在使用该survey包,因为数据是加权的.只是拿家庭数据(并忽略人员变量以保持简单),我试图计算hhincome(家庭收入)的平均值.为此,我使用具有以下代码的函数创建了一个调查设计对象svydesign():
> require(foreign)
> ipums.household <- read.dta("/path/to/stata_export.dta")
> ipums.household[ipums.household$hhincome==9999999, "hhincome"] <- NA # Fix missing
> ipums.hh.design <- svydesign(id=~1, weights=~hhwt, data=ipums.household)
> svymean(ipums.household$hhincome, ipums.hh.design, na.rm=TRUE)
mean SE
[1,] 37029 17.365
Run Code Online (Sandbox Code Playgroud)
到现在为止还挺好.但是,如果我尝试相同的计算Stata(使用代码表示同一数据集的不同部分),我会得到不同的标准错误:
use "C:\I\Hate\Backslashes\stata_export.dta"
replace hhincome = . if hhincome == 9999999
(933734 real changes made, 933734 to missing)
mean hhincome [fweight = hhwt] # The code from the link above.
Mean …Run Code Online (Sandbox Code Playgroud) 是否有两个不同的命令来生成新变量?
是否有一种简单的方法可以记住何时使用gen以及何时使用egen?
我有一个看起来像这样的数据集.
bankname bankid year totass cash bond loans
Bank A 1 1881 244789 7250 20218 29513
Bank B 2 1881 195755 10243 185151 2800
Bank C 3 1881 107736 13357 177612 NA
Bank D 4 1881 170600 35000 20000 5000
Bank E 5 1881 3200000 351266 314012 NA
Run Code Online (Sandbox Code Playgroud)
我想根据银行资产负债表计算一些比率.我希望数据集看起来像这样
bankname bankid year totass cash bond loans CashtoAsset BondtoAsset LoanstoAsset
Bank A 1 1881 2447890 7250 202100 951300 0.002 0.082 0.388
Bank B 2 1881 195755 10243 185151 2800 0.052 0.945 …Run Code Online (Sandbox Code Playgroud) 我正在寻找一种方法来复制Stata中的编码行为,它将分类字符串列转换为数字列.
x = pd.DataFrame({'cat':['A','A','B'], 'val':[10,20,30]})
x = x.set_index('cat')
Run Code Online (Sandbox Code Playgroud)
结果如下:
val
cat
A 10
A 20
B 30
Run Code Online (Sandbox Code Playgroud)
我想将cat列从字符串转换为整数,将每个唯一字符串映射到(任意)整数1对1.这将导致:
val
cat
1 10
1 20
2 30
Run Code Online (Sandbox Code Playgroud)
或者,同样好:
cat val
0 1 10
1 1 20
2 2 30
Run Code Online (Sandbox Code Playgroud)
有什么建议?
非常感谢Rob
我在尝试使用Stata后学习R,我必须说我喜欢它.但现在我遇到了一些麻烦.我即将对Panel Data进行一些多次回归,因此我正在使用该plm软件包.
现在我想plm在R中获得与我使用lm函数和Stata时相同的结果,当我执行异方差性稳健和实体固定回归时.
比方说,我有一个变量面板数据集Y,ENTITY,TIME,V1.
我用这段代码在R中得到了相同的标准错误
lm.model<-lm(Y ~ V1 + factor(ENTITY), data=data)
coeftest(lm.model, vcov.=vcovHC(lm.model, type="HC1))
Run Code Online (Sandbox Code Playgroud)
就像我在Stata中执行此回归一样
xi: reg Y V1 i.ENTITY, robust
Run Code Online (Sandbox Code Playgroud)
但是,当我使用plm包执行此回归时,我得到其他标准错误
plm.model<-plm(Y ~ V1 , index=C("ENTITY","YEAR"), model="within", effect="individual", data=data)
coeftest(plm.model, vcov.=vcovHC(plm.model, type="HC1))
Run Code Online (Sandbox Code Playgroud)
plm模型是否使用其他类型的估计,如果是,如何?plm与Stata 相同的标准错误, robust 我是R的新手,所以如果这是一个简单的问题我会道歉,但是我今晚做了很多搜索,似乎无法弄明白.我有一个包含大量变量的数据框,我想要做的是创建一个表格,其中包含这些变量的子集,基本上相当于Stata中的"pwcorr",或者"相关性". SPSS.对此的一个关键是我不仅需要r,而且还需要与该值相关的重要性.
有任何想法吗?这似乎应该很简单,但我似乎无法找到一个好方法.
stata ×10
r ×7
python ×2
dplyr ×1
labels ×1
latex ×1
logging ×1
pandas ×1
plm ×1
regression ×1
robustness ×1
spss ×1
statistics ×1
statsmodels ×1
variables ×1