Tag: stata

结合包含“”使用putexcel的公式

我试图通过使用putexcel命令来节省一些时间在Stata上生成大量的报告。 它工作完美。 但是,混合3个公式时,遇到了一个问题,其中一个包含引号来表示一个空格" " 。 更具体地说,这是我正在使用的代码: putexcel B2=formula("IF((VLOOKUP(A2;HI!$1:$1048576;2;));" ";VLOOKUPA2;HI!$1:$1048576;2;))") using "`archivo'", modify sheet("DEFGGF") 这里的问题是,它在Excel中工作,而不是" "我得到一个0因为它不读引号的空间。 我曾尝试用其他几种方式来附加"" ,比如 '""` 要么 "'"'`"`" 但他们不工作。

如何在Stata中循环多个Excel文件?

这里是我有的代码: local dateList "01" "02" "03" "04" "05" "06" "07" foreach date of local dateList { use `"`date'"' clear import excel "V:\Report07" + `"`date'"' + "13.xls", sheet("MySheet") firstrow sort PersonID Place bysort PersonID (Place): gen mix = Place[1] != Place[_n] sort PersonID by PersonID: egen anymix=max(mix) count if anymix==1 drop mix drop anymix } 我试图循环通过date不同的多个Excel文件,正如你可以在代码中看到的那样放置variablesdate […]

Stata putexcel汇总统计到MS Excel

我试图让putexcel命令putexcel给我一个连续variables的统计,一个接一个的分类variables,在同一个工作表中分组。 这应该重复/循环几年,每年有自己的表。 这提出了两个问题: 使用bysort不logging所有的组(也许它确实,但我不明白如何检索它们),所以似乎我必须使用每个级别的if条件。 因此,问题变成: 在我的分类variables中有150个类别(组),都是半随机的4位数字。 因此,理想情况下,解决scheme将自动检测组中的水平数量,而不是为每个if语句手写150个不同的类别。 这是一个示例数据集: clear input /// id income1996 income1997 employcode1996 employcode1997 1 500 400 3300 5000 2 500 300 5000 5000 3 900 1050 8830 8220 4 1000 1200 8220 3300 5 600 900 5000 8220 6 200 100 8220 5000 7 700 100 3300 3300 8 1000 100 5000 […]

Stata:从Excel导入时,以小写字母重命名variables

我正在尝试导入一个Excel表,其中包含具有大写和小写字母混合的variables名称。 我希望Stata阅读所有的小写,但是当我把case(lower)选项,Stata返回option case() not allowed 。 这是我试图把: import excel "/Users/p/D/B/File name/", sheet("Sheet1") firstrow case(lower) import命令工作正常,当我不使用case()选项。 有人能告诉我我做错了什么吗?

从Stata 12导出matrix到Excel或MATLAB

我需要将Stata的回归结果matrix导出到MATLAB。 我试图使用Stata命令matwrite没有成功(我得到一个unrecognized command错误)。 这是企图: … *Regression 1 reg invlrevcrp_CAm071 lacres_CAm071 lrainm07 lrainm07sq /// lannxt lannxtsq lrlanxtsq pkgamz if invlrevcrp_CAm071~=. reg lrevcrp_CAm071 lacres_CAm071 lrainm07 lrainm07sq /// lannxt lannxtsq lrlanxtsq lpkgamz * Store results mat coef=get(_b) *Export to matlab matwrite using "Z:\Thesis\data needed for 2007\matlabfile", /// mat(coef) replace … 我已经有更多的成功使用Stata xml_tab将matrix导出到Excel,然后我可以导入到MATLAB。 但是, xml_tab给了我太多的信息。 我想要导出的matrix只是两个回归的估计系数,没有标签。 xml_tab导出与回归相关的所有内容 – t统计,p值,95%conf。 […]

重塑面板数据

我需要重新devise面板数据分析的数据。 我search了互联网,只发现如何通过使用Stata获得所需的结果; 但是我应该使用R和Excel。 我的初始和最终数据(所需的结果)看起来非常类似于Stata重塑数据的例子的第一页。 http://spot.colorado.edu/~moonhawk/technical/C1912567120/E220703361/Media/reshape.pdf 用R还是Excel可以实现吗? 我尝试从reshape2库使用熔化函数,但我得到 CountryName ProductName Unit Years value 1 Belarus databaseHouseholds '000 Y1977 2942.702 2 Belarus databasePopulation '000 Y1977 9434.200 3 Belarus databaseUrbanPopulation '000 Y1977 4946.882 4 Belarus databaseRuralPopulation '000 Y1977 4487.318 5 Belarus originalHouseholds '000 Y1977 NA 6 Belarus originalUrban households '000 Y1977 NA 7 Poland ………………………………………. ………………………………………………….. 当我想得到像这样的东西: CountryName […]

将Excel单元格作为variables读入Stata全局variables

有几个面板数据集,我想join。 这些数据集中的观察结果由idvariables和标识观察时间的variables来标识。 所有的数据集都包括我需要的一些variables,有些我不需要也不会有相同的variables(不包括id和survey-time-variable)。 数据集是巨大的,所以为了加速处理和减小最终数据集的大小,我想drop所有我不需要的variables。 Thoosevariables存储在具有多列的Excel文件中。 其中一列,比如C2,包含我所有的variables名称。 现在我相信我有两种可能的方式可以遵循,我按照我的喜好来描述: 1)将Excel文件中的variables名称读入Stata中的全局variables,然后声明: keep global varlist 这样只有variables我需要保留。 2)用Excel文件中的所有variables生成一个新的空数据集,然后 joinby id syear $varlist using dataset, update 无论如何,我需要从Excel文件中读出variables为全局variables。 我意识到我可以通过从Excel复制粘贴到Stata中来实现这一点,但是我想随着工作的进行,variables会有一些变化,我想学习如何在Stata中正确编程。

Stata:在Excel输出中将不同回归结果排列在一起

我正在运行一堆我想在Excel文件中报告的二元回归。 目前产生的表格如下所示: var1 coef1a coef1b (tvalue1a)(tvalue1b) var2 coef2a coef2b (tvalue2a) (tvalue2b) … 其中…代表另外50个variables。 我知道这是很多问outreg但有一些方法来获得输出: var1 coef1a coef1b (tvalue1a)(tvalue1b) var2 coef2a coef2b (tvalue2a) (tvalue2b) … 尽pipe这两个系数来自不同的回归? 我只是对系数和t值感兴趣,其他统计不需要logging(常数,R2等)。 可重复的例子: clear all ssc install outreg2 sysuse auto local path yourpath cd "`path'" local vars mpg rep78 headroom trunk weight length local replace replace foreach i of local vars{ […]

用stata循环填充输出向量

当你在Stata中取一个variables的百分数时,例如。 *set directory cd"C:\Etc\Etc Etc\" *open data file use "dataset.dta",clear *get centiles centile var1, centile(1,5(5)95,99) 有什么方法来logging产生的百分表performance出色? 百分位值存储在r(c_#)中,其中#表示您希望数据的百分位数。 但是我需要一个在所有百分位数上的值的向量,或多或less出现在输出窗口中。 我试图使用foreach循环来获得百分比到一个向量,如下所示: *Create column of centiles foreach i in r(centiles) { xx[1,`i']=r(c_`i') } 没有成功。 谢谢 编辑: 我已经发现这个工作: matrix X = 0,0 forvalues i=1/21 { matrix X = `i',round(r(c_`i'),.001)\ X } 唯一的不便之处是1)输出中必须包含0,0的第一行,然后我将随后删除。 2)在这种情况下,我有21个百分点,但是如果我想改变这个百分数,自动化百分数会很好,例如: forvalues i=1/r(n_cent) { matrix X = […]

在基于matrix的Excel或Stata中创build伪标识符

我试图创build一个虚假的标识列,我卡住了。 我正在使用Excel 2010.我想根据“辅助matrix”创build一列假标识符(1,2,3等)。 辅助matrix告诉我独特的观察结果以及它们重复的次数。 辅助matrix有两列,如下所示。 (我拥有的实际辅助function要大得多,不可能手动创build。) C1– C2 3 – 4 2 – 6 4 – 2 辅助matrix的第一行告诉我前12个观测值(3 * 4)有4个唯一标识符,每个唯一观测值在下一个唯一标识符前重复3次。 第二行告诉我接下来的12个观察值(2 * 6)有6个唯一的标识符,每个标识符在下一个标识符前重复2次。 基于辅助的最终输出应该是一个列 1 1 1 2 2 2 3 3 3 . . . 11 11 11 11 12 12 12 12 这意味着给定辅助matrix,我的最终输出列应该有12个唯一标识符(4 + 6 + 2)和总共32行(3 * 4 + 2 * 6 […]