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”。