楼主: undertone
8635 11

[其他] [求教] 如何批量列求和,并替换和剔除?谢谢啦! [推广有奖]

11
undertone 发表于 2011-1-27 22:50:49
sungmoo 发表于 2011-1-27 14:26
undertone 发表于 2011-1-27 10:18 那我就把故事再讲细讲长一点啦。
“Source 1”ID本质就是复制的ID,但其用意在于随后。
随后这个数据集将和其他数据集进行append操作。操作后,所有完整的ID后就跟有诸如“Source 1”、“Source 2”,“Source 3”这样变量。假如ID“7”的数据来自“Source 1”,“Source 1”就有一个诸如“s7”这样的标记,而同时“Source 2”、“Source 3”等就空白。
还是没太看明白。
Re:

那我再举例说具体一点啦。当前数据集中,

name     name_1     abc     ……     xyz
张麻子     张麻子      20      ……      60
马邦德      马邦         30      ……      70
马邦德      马德         40      ……      80

比如“张麻子”和“马邦德”是两个大公司,但是,“马邦德”是由“马邦”和“马德”两个分公司组成的。

可用collapse(sum) abc-xyz, by(name)来对“马邦”和“马德”求和,但同时变量“name_1”就蒸发了。如果用collapse(sum) abc-xyz, by(name name_1)不能实现求和目的。补充一下,实际为面板数据。上面的例子中简化为了横截面数据。

之所以希望保留“name_1”是因为随后该数据集将和其他数据集进行append操作。操作后,

name     name_1     name_2     abc     ……     xyz
张麻子     张麻子                        20      ……      60
马邦德      马邦                           30      ……      70
马邦德      马德                           40      ……      80
黄四郎                      黄四郎       50      ……      90

在合并后的数据集中,“name_1”指示“张麻子”和“马邦德”(及其下辖的“马邦”和“马德”)的数据来源是“原始数据库1”,而“name_2”指示“黄四郎”的数据来源是“原始数据库2”。

我的实际问题就是在合并数据集前,能不能有比较便捷的命令或语句来实现对“马邦”、“马德”这样的子个体求和得到“马邦德”的数据,同时得以保留“name_1”。

12
sungmoo 发表于 2011-1-28 02:24:08
undertone 发表于 2011-1-27 22:50 我的实际问题就是在合并数据集前,能不能有比较便捷的命令或语句来实现对“马邦”、“马德”这样的子个体求和得到“马邦德”的数据,同时得以保留“name_1”。
关键是你要说明:按“马邦德”合并后,保留的name_1取“马邦”还是“马德”?或者是别的什么值,比如“康城”或“鹅城”?

如果可以随便取值,你可以在合并后重新生成一个name_1即可。

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注jltj
拉您入交流群
GMT+8, 2026-1-16 17:00