【发布时间】:2014-08-10 01:58:29
【问题描述】:
数据集描述:
我有一个高度不平衡的面板数据集,其中一些唯一的面板成员 ID 只出现一次,而另一些则出现多达 4,900 次。每个观察都反映了与唯一产品标识符 (UPC) 相关的酒精购买。如果我的小组成员在同一天、同一家商店购买了两个不同的品牌(因此是两个不同的 UPC),则会产生两个不同的观察结果。然而,看到这些购买是在同一天和同一家商店进行的,我可以有把握地假设这只是一次旅行。类似地,假设另一位小组成员也有 2 次与同一商店相关但购买天数不同(反之亦然)的观察结果,他会进行 2 次商店访问。
任务:
我想探究那些在整个期间购买了一定次数的酒的人的品质。因此,我需要确定仅进行 1) 1 次访问、2) 2 次访问、3) 5 到 10 次访问、4) 50 到 100 次访问等的小组成员。
我首先尝试通过按小组成员 ID、日期和商店标记他们来识别仅进行 1 次访问的小组成员。但是,该程序还会标记那些第一次出现两次或更多的人。
egen tag = tag(panid day store)
我也尝试了collapse,但意识到这可能不是最好的解决方案,因为我想保持我的观察“原样”而不汇总任何变量。
如果您能提供有关如何识别此类观察结果的见解,我将不胜感激。
更新:
panid units dollars iri_key upc day tag
1100560 1 5.989 234140 00-01-18200-00834 47 1
1101253 1 13.99 652159 00-03-71990-09516 251 1
1100685 1 20.99 652159 00-01-18200-53030 18 1
1100685 1 15.99 652159 00-01-83783-37512 18 0
1101162 1 19.99 652159 00-01-34100-15341 206 1
1101162 1 19.99 652159 00-01-34100-15341 235 1
1101758 1 12.99 652159 00-01-18200-43381 30 1
1101758 1 6.989 652159 00-01-18200-16992 114 1
1101758 1 11.99 652159 00-02-72311-23012 121 1
1101758 2 21.98 652159 00-02-72311-23012 128 1
1101758 1 19.99 652159 00-01-18200-96550 223 1
1101758 1 12.99 234140 00-04-87692-29103 247 1
1101758 1 20.99 234140 00-01-18200-96550 296 1
1101758 1 12.99 234140 00-01-87692-11103 296 0
1101758 1 12.99 652159 00-01-87692-11103 317 1
1101758 1 19.99 652159 00-01-18200-96550 324 1
1101758 1 12.99 652159 00-02-87692-68103 352 1
1101758 1 12.99 652159 00-01-87692-32012 354 1
您好罗伯托,感谢您的反馈。这是数据集的一个小样本。 在这个特定示例的第一部分,我们可以安全地假设所有三个 id 1100560、1101253 和 1100685 只访问了一次商店,即每个人只进行了一次交易。前两个小组成员显然每人只有一个记录,而第三个小组成员在同一天,即同一笔交易中,在同一家商店购买了 2 个不同的 UPC。
示例的第二部分有两个小组成员 - 1101162 和 1101758 - 他们进行了不止一笔交易:分别是两次和十一次。 (小组成员 1101758 有 12 次观察,但只有 11 次不同的行程。)
我想确定我的数据集的不同旅行(或交易)小组成员的确切数量:
panid units dollars iri_key upc day tag total#oftrips
1100560 1 5.989 234140 00-01-18200-00834 47 1 1
1101253 1 13.99 652159 00-03-71990-09516 251 1 1
1100685 1 20.99 652159 00-01-18200-53030 18 1 1
1100685 1 15.99 652159 00-01-83783-37512 18 0 1
1101162 1 19.99 652159 00-01-34100-15341 206 1 2
1101162 1 19.99 652159 00-01-34100-15341 235 1 2
1101758 1 12.99 652159 00-01-18200-43381 30 1 11
1101758 1 6.989 652159 00-01-18200-16992 114 1 11
1101758 1 11.99 652159 00-02-72311-23012 121 1 11
1101758 2 21.98 652159 00-02-72311-23012 128 1 11
1101758 1 19.99 652159 00-01-18200-96550 223 1 11
1101758 1 12.99 234140 00-04-87692-29103 247 1 11
1101758 1 20.99 234140 00-01-18200-96550 296 1 11
1101758 1 12.99 234140 00-01-87692-11103 296 0 11
1101758 1 12.99 652159 00-01-87692-11103 317 1 11
1101758 1 19.99 652159 00-01-18200-96550 324 1 11
1101758 1 12.99 652159 00-02-87692-68103 352 1 11
1101758 1 12.99 652159 00-01-87692-32012 354 1 11
我想,底线是 - 只要 panelist、iri_key 和 day 相同,这将算作 1 次行程。每个小组成员的总行程数将取决于不同的panelist、iri_key 和day 组合的额外数量。
【问题讨论】:
-
我不确定我是否完全理解。不管购买了多少产品,是否是 1 次访问,1 次去商店?你想看看每个人对每家商店的访问吗?添加您希望数据看起来如何的示例以及说明会很有帮助。
-
谢谢罗伯托,这是更新。我是在看到你的新答案之前写的。
-
不客气。所以我的猜测还不错。请记住,代表问题所有者的答案值得某种明显的反馈。例如,请参阅stackoverflow.com/help/someone-answers。
标签: stata