如何在本地宏中存储平均值,然后将其保存在另一个文件中?

时间:2013-05-27 23:34:55

标签: stata local-variables stata-macros

我有一个Stata文件file1.dta,其中一个变量是income。我需要计算average_income,将其分配给本地宏,并存储在不同的Stata文件New.dta中。

我在do文件中尝试了以下内容:

#delimit;
clear;
set mem 700m;

use file1.dta;
local average_income = mean income; 

use New.dta;
gen avincome = average_income;

然而,它不起作用。

2 个答案:

答案 0 :(得分:2)

这与您的其他帖子重叠,即How to retrieve data from multiple Stata files?。你没有说你为什么这么认为

use file1.dta;
local average_income = mean income; 

会起作用,但第二行只是幻想语法。有多种方法可以计算变量的平均值,最常见的方法是使用summarize并从r(mean)中获取均值。

你应该删除这个问题:它没有长远的目的。

答案 1 :(得分:2)

执行此操作的一种方法如下:

#delimit;
clear;
set mem 700m;

use file1.dta;
quietly: summarize income;
local average_income = r(mean); 

use New.dta;
gen avincome = `average_income';