Stata:将一组时间序列变量的每个变量与另一组的相应变量相乘

时间:2013-01-10 05:09:03

标签: time-series stata

作为Stata的新手,我很难弄清楚如何做到以下几点:

我在单个数据文件中有10个产品的销售价格(p)和销售数量(q)的时间序列数据(即,20个变量,p01-p10和q01-q10)。我正在使用适当的stata命令来计算这10个产品中每个产品的销售收入(pq)时间序列(即pq01-pq10)。

非常感谢你的帮助。

1 个答案:

答案 0 :(得分:2)

forval i = 1/10 { 
      local j : display %02.0f `i' 
      gen pq`j' = p`j' * q`j' 
}

超过1/10的标准循环不会让你在01/09获得领先的零。为此,我们需要使用适当的格式。另见

@article {pr0051,     author =“Cox,N。J.”,     title =“Stata tip 85:循环非整数”,     journal =“Stata Journal”,     publisher =“Stata Press”,     address =“College Station,TX”,     体积=“10”,     number =“1”,     年=“2010”,     pages =“160-163(4)”,     url =“http://www.stata-journal.com/article.html?article=pr0051” }

(稍后补充)另一种方法是

local j = string(`i', "%02.0f") 

这使得您更明确地将数字1,...,10映射到字符串“01”,...,“10”。