问题描述:由于数据来自其他软件导出的格式,比如为txt,但是在存储形式上每家单位的变量被按规则分成若干行存储,并非时间序列数据,仅仅是被截断为固定数目的行,每行对应的变量数也是固定的。
目的:为了批量程序化将每家单位的数据最终合并为一行
数据举例:
company1 a1 a2 a3 a4 a5 a6 a7
company1 b1 b2 b3 b4 b5 b6 b7
……
company1 h1 h2 h3 h4 h5 h6 h7
cpmpany2 a1 a2 a3 a4 a5 a6 a7
company2 b1 b2 b3 b4 b5 b6 b7
……
company2 h1 h2 h3 h4 h5 h6 h7
cpmpany3 a1 a2 a3 a4 a5 a6 a7
company3 b1 b2 b3 b4 b5 b6 b7
……
合并后结果:
company1 a1 a2 a3 a4 a5 a6 a7 b1 b2 b3 b4 b5 b6 b7 c1 ……h1 h2 h3 h4 h5 h6 h7
company2 a1 a2 a3 a4 a5 a6 a7 b1 b2 b3 b4 b5 b6 b7 c1 ……h1 h2 h3 h4 h5 h6 h7
cpmpany3 a1 a2 a3 a4 a5 a6 a7 b1 b2 b3 b4 b5 b6 b7 c1 ……h1 h2 h3 h4 h5 h6 h7
……
其中company字段可以作为每家单位的唯一标识码用来merge
stata中有命令能实现吗?
目前我能想到的办法是用循环程序先将整个数据文件拆分成有顺序的若干个数据文件,上述的例子就是拆成7个文件,第一个文件包括每家单位的第一行,第二个文件包括每家单位的第二行,以此类推,最后按顺序用merge命令将7个数据文件拼起来。
不知道有没有更直接的办法或类似的命令