关键词:Stata个案合并; Stata变量合并; Stata数据筛选
一、样本合并
假设“示例数据1.csv”中记录了ID为1~15的15名研究对象的“age (年龄) ”、“gender (性别) ”、“grade (年级) ”、“hight (身高) ”和“weight (体重) ”五个变量数据,“示例数据2.csv”中记录了ID为16~30的15名研究对象的“age”、“gender”、“grade”、“hight”和“weight”5个变量数据,现需要将两个数据库的数据进行合并。
*读取文件“示例数据1.csv” *
insheet using C:\Users\HP\Desktop\数据管理\示例数据1.csv, clear
此处数据读取路径根据数据集的具体位置而定
*将数据保存为“.dta格式”*
save C:\Users\HP\Desktop\数据管理\示例数据1.dta
*读取文件“示例数据2.csv” *
insheet using C:\Users\HP\Desktop\数据管理\示例数据2.csv, clear
*将数据保存为“.dta格式”*
save C:\Users\HP\Desktop\数据管理\示例数据2.dta
*将“示例数据1.dta”和“示例数据2.dta”进行合并*
use C:\Users\HP\Desktop\数据管理\示例数据1 append using C:\Users\HP\Desktop\数据管理\示例数据2
需要注意的是,样本合并之前必须确保合并的两个数据库中变量的顺序完全一致。
二、变量合并
假设“示例数据3.csv”记录了ID为1~15的15名研究对象的“age”、“gender”和“grade”三个变量数据,“示例数据4.csv”记录了ID为1~15的15名研究对象的“hight”和“weight”两个变量数据,现需要将两个数据库的数据进行合并。
*读取文件“示例数据3.csv” *
insheet using C:\Users\HP\Desktop\数据管理\示例数据3.csv, clear
*将数据保存为“.dta格式”*
save C:\Users\HP\Desktop\数据管理\示例数据3.dta
*读取文件“示例数据4.csv” *
insheet using C:\Users\HP\Desktop\数据管理\示例数据4.csv, clear
*将数据保存为“.dta格式”*
save C:\Users\HP\Desktop\数据管理\示例数据4.dta
*将“示例数据3.dta”和“示例数据4.dta”进行合并*
use C:\Users\HP\Desktop\数据管理\示例数据3 merge 1:1 id using C:\Users\HP\Desktop\数据管理\示例数据4
需要注意的是,合并之前必须确保两个数据库中样本例数的ID顺序完全一致。
三、数据筛选
在数据分析过程中,有时需要选择一部分数据进行分析,即选择满足一定条件的样本,比如,选择血红蛋白浓度大于160 g/L的样本人群,选择年龄大于60岁的样本人群。可以利用条件抽取、挑选出或删除符合/不符合一定条件的样本,如删除有缺失值的样本。这时就要使用数据筛选功能。以“示例数据1”演示筛选出“gender”为“male”以及“grade”为“2”的样本。
在数据量不多的情况下,可直接使用list命令在结果窗口列出要筛选的数据,如图7所示。
list if gender=="male" & grade==2
另外,还可以使用keep命令保留符合条件的数据,不符合条件的数据将被删除,如图8所示。
keep if gender=="male" & grade==2