stata - 使用特定代码保留所有 ID 的所有记录
问题描述
考虑以下数据示例:
clear
input id code cost
1 15342 18
2 15366 12
1 16786 32
2 15342 12
3 12345 45
4 23453 345
1 34234 23
2 22223 12
4 22342 64
3 23452 23
1 23432 22
end
如何保留15324
任何行中包含代码的 ID 的所有记录?
这是我之前的一个问题的后续问题:保留特定 ID 的所有记录
解决方案
以下对我有用:
clear
input id code cost
1 15342 18
2 15366 12
1 16786 32
2 15342 12
3 12345 45
4 23453 345
1 34234 23
2 22223 12
4 15342 64
3 23452 23
1 23432 22
end
bysort id (code): egen tag = total(inlist(code, 15342))
keep if tag
结果:
list, sepby(id)
+-------------------------+
| id code cost tag |
|-------------------------|
1. | 1 15342 18 1 |
2. | 1 16786 32 1 |
3. | 1 23432 22 1 |
4. | 1 34234 23 1 |
|-------------------------|
5. | 2 15342 12 1 |
6. | 2 15366 12 1 |
7. | 2 22223 12 1 |
|-------------------------|
8. | 4 15342 64 1 |
9. | 4 23453 345 1 |
+-------------------------+
请注意,为了更好地说明,我稍微更改了数据示例。
推荐阅读
- javascript - 将 Reddit 嵌入到 ReactJs 组件中
- oop - 在 OOP 中,类方法的真正内部负载是什么
- database - 分布式事务+强一致性:可行性?
- sql - 在 SQL 中通过超过 100,000 行的整个列进行过程循环
- python-3.x - 如何打印不带括号、逗号和撇号的数组
- python - 如何根据条件引发错误
- database - 通过 talend 存储在 db 中的最大数量后的自动增量字段
- mysql - 引用现有表时出现 MySQL 错误
- laravel-5 - Laravel 5.8 中的 hasManyThrough 关系
- excel - 如何在使用 excel vba 代码打开 Mathcad 文件时修复运行时错误“-2147220992 (80040200)”?