当每个ID有多个日期观测值时,Stata按第一个观测日期崩溃
我正在使用一个数据集,该数据集包含2800个人在多个日期的每次购买(称为ItemNum)。每个项目都有自己的行,因此如果个人在某个日期购买了两个项目,该日期将出现两次。我不在乎在一个日期购买了多少物品(每个日期代表一次旅行),而是在乎2800个人的平均旅行次数(大约18230行数据)。我的数据如下所示:当每个ID有多个日期观测值时,Stata按第一个观测日期崩溃,stata,Stata,我正在使用一个数据集,该数据集包含2800个人在多个日期的每次购买(称为ItemNum)。每个项目都有自己的行,因此如果个人在某个日期购买了两个项目,该日期将出现两次。我不在乎在一个日期购买了多少物品(每个日期代表一次旅行),而是在乎2800个人的平均旅行次数(大约18230行数据)。我的数据如下所示: +---+----------+-------+---------------------- ---+ |ID | Date |ItemNum| ItemDescript
+---+----------+-------+---------------------- ---+
|ID | Date |ItemNum| ItemDescript |
| 1 |01/22/2010| 1 |Description of the item |
| 1 |01/22/2010| 2 |Description of other item |
| 1 |07/19/2013| 1 | |
| 2 |06/04/2012| 1 | |
| 2 |02/02/2013| 1 | |
| 2 |11/13/2013| 1 | |
+---+----------+-------+---------------------- ---+
在上表中,人员1进行了两次旅行和三项采购(因为显示了两个日期),人员2进行了三次旅行。我对所有人的平均旅行次数感兴趣,但首先我需要将其分解为唯一的日期。所以我知道我需要在约会时折叠,但是当我这样做的时候
collapse (mean) ItemNum (first) Date, by(ID)
它只需要ID显示的第一个日期,而不是每个唯一日期的第一次出现
下一个问题是,一旦它崩溃,我需要计算日期的平均值,而不是日期本身,这也是我似乎被绊倒的地方 您是否正在尝试执行以下操作
collapse (mean) ItemNum, by(ID Date) fast
您是否正在尝试执行以下操作
collapse (mean) ItemNum, by(ID Date) fast
或者类似的
clear
input ID str16 dt ItemNum
1 "01/22/2010" 1
1 "01/22/2010" 2
1 "07/19/2013" 1
end
generate Date = daily(dt,"MDY")
egen trip = tag(ID Date)
collapse (sum) trip, by(ID)
summarize trip
Variable | Obs Mean Std. Dev. Min Max
-------------+---------------------------------------------------------
trip | 1 2 . 2 2
如果你要找的是“平均数”——一个数字给出了2800个人的平均出行次数(1个人给出了有限的样本数据) 或者类似的东西
clear
input ID str16 dt ItemNum
1 "01/22/2010" 1
1 "01/22/2010" 2
1 "07/19/2013" 1
end
generate Date = daily(dt,"MDY")
egen trip = tag(ID Date)
collapse (sum) trip, by(ID)
summarize trip
Variable | Obs Mean Std. Dev. Min Max
-------------+---------------------------------------------------------
trip | 1 2 . 2 2
如果你要找的是“平均数”——一个数字给出了2800个人的平均出行次数(1个人给出了有限的样本数据) 你到底想计算什么?你的帖子相当混乱。你的新问题似乎需要另一个
折叠。你到底想计算什么?你的帖子相当混乱。你的新问题似乎需要另一个collapse
。