如何按观测范围批量将Stata数据集导出为多个CSV文件
Stata批量拆分数据集并导出CSV文件
直接用下面的Stata代码就能实现按每份1000条观测批量导出CSV,不用手动重复执行命令:
* 获取数据集总观测数 count local total = r(N) * 计算拆分组数(向上取整,确保剩余不足1000条的观测也单独成文件) local num_groups = ceil(`total'/1000) * 循环导出每组数据 forvalues i = 1/`num_groups' { * 计算当前组的起始观测行 local start = (`i' - 1)*1000 + 1 * 计算当前组的结束观测行(最后一组可能不足1000条,用min避免超出总观测数) local end = min(`i'*1000, `total') * 导出为CSV文件,文件名自动按file_1、file_2...命名 export delimited using file_`i'.csv in `start'/`end', replace }
代码说明:
count命令统计当前数据集的总观测数,结果存入r(N)后赋值给宏totalceil()函数向上取整,比如总观测数为50001时,会自动分成51组,最后一组仅1条观测- 循环内的
start和end确定每组的观测范围,min()保证最后一组的结束行不会超过总观测数 - 导出文件名默认按
file_1.csv、file_2.csv格式生成,你可以根据需求修改文件名前缀
内容的提问来源于stack exchange,提问作者tish
相关产品推荐
相关产品推荐

