stata清洗数据——去除重复数据方法

stata中的_N和_n(是去重操作的基础)

这个博客讲的非常清楚:
stata:变量排序及_n与_N的用法

sort 证券代码 date
by 证券代码 date:gen daycount = _N  //对证券代码和date相同的观测:则产生计数变量:_N
by date 证券代码: gen set=_n         //对证券代码和date相同的观测:产生编号变量_n:从1到 最后

去重操作

对单一列:id

*每一个id只保留一个记录
sort 证券代码 
by 证券代码: gen filter=_n  //对相同id的数据从1到最后一条编号
keep if filter == 1    //只保留第一条
save one_record     //保存数据到本地

原数据:有149304个观测
在这里插入图片描述
按照证券代码列删除重复值后:剩下38个观测在这里插入图片描述

对两列(及以上):date 和 证券代码

*这一段代码可以删除重复的观测
sort date 证券代码               
by date 证券代码: gen set=_n         //证券代码和date相同则编号:从1到 最后
keep if set==1   //date 和 证券代码相同的观测,只保留了一条记录
drop set
save mystockdata_dropreplicate,replace
Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐