如果我有1932年至2012年的每年数据,我如何只保留Stata中从1946年到2012年的偶数年?我尝试过以下方法:
keep if year == 1946(2)2012
但它似乎没有帮助。
答案 0 :(得分:0)
您使用代码收到的错误是:unknown function 1946()
。 Stata认为 1946 是一个函数,因为它后跟一个左括号。它期待表达式,函数可以是表达式的一部分。但是,你给它一个 numlist (help numlist
),这是不允许的。
一个有效的例子:
clear
set more off
*----- example data -----
set obs 81
egen year = seq(), from(1932) to(2012)
list
*----- what you want -----
keep if mod(year,2) == 0 & year >= 1946
list
注意我使用了(合法)函数,即模数函数。