数据名称:上市公司违规公司年度面板数据
时间范围:2000—2025年(结果数据的实际年份范围)
数据层级:上市公司—年度;一行对应一家公司的一个年份。
核心指标:违规倾向(Fraud)、违规次数(Freq);缩尾版另含违规次数(Freq)_w。
识别变量:stkcd(数值型公司代码)与 year(年份);证券代码为保留前导零的字符型代码。
文件格式:原始事件表为 .xlsx 和 .dta,年度面板与基本信息为 .dta;每套结果同时提供 .dta 和 .xlsx,计算与评估代码分别提供 .do 和 .py。
二、原始数据与基本信息合并
上市公司违规事件原始数据.xlsx:计算代码实际读取的事件级原始表,共12,823行;主要字段为证券代码、公告文件名称、违规类型、违反的法律法规、违规年度、违规行为、处分措施。上市公司违规事件原始数据.dta为同主题的Stata格式文件,计算代码未直接读取它。
上市公司行业地区年度面板数据.dta:公司年度主面板,共75,495行,提供样本范围;主要字段为证券代码、证券简称、stkcd、year、行业代码、行业名称、所属省份、所属城市及地区代码。
行业代码/上市公司基本信息数据.dta:公司级静态信息,共5,718行,stkcd唯一;主要字段为证券代码、证券中文简称、上市日期、股票类型、ABH股交叉码、公司名称、行业A—D代码及名称、注册资本、成立日期、退市日期等。按stkcd作多对一合并,不按年度合并;同名字段在基本信息中有非缺失值时以基本信息为准,基本信息未匹配的主面板行仍予保留。
三、计算说明
【违规年度】事件表中可能用分号列出多个年份;逐项拆分后取每项前四个字符转为year,无法转为年份的项剔除。计数单位是拆分后“公司—年度”的出现次数,不是去重后的公司数。
【违规次数(Freq)】公司i在年份t的违规次数,等于该公司事件记录的“违规年度”中年份t的出现次数之和;年度面板没有匹配事件时取0。非负整数,数值越大表示该公司该年被记录的违规出现次数越多。
【违规倾向(Fraud)】若同一公司年度的违规次数(Freq)>0则取1,否则取0;1表示该年有违规记录,0表示未在事件表中匹配到该年的违规记录。
【违规次数(Freq)_w】仅在剔除金融ST缩尾版中生成:对清洗后样本的违规次数(Freq)按全期观测统一进行1%和99%分位数缩尾,低于下界的值替换为下界,高于上界的值替换为上界;原始Freq仍保留。当前数据的缩尾上界为3,原始Freq最大值为12;Fraud不缩尾。
【stkcd、year】分别为数值型公司代码与年度,是公司年度面板的联合识别键;证券代码另以字符型保留六位格式,避免前导零丢失。
四、结果数据文件
共有3套结果数据文件,每套均有同名.dta与.xlsx。样本筛选步骤如下:
(1) 从年度面板合并违规计数,缺失计数补0,剔除空证券简称及证券代码以200或900开头的B股,按stkcd补全基本信息,得到基础版;
(2) 在基础版中按行业代码包含J剔除金融业,按证券简称包含ST、PT或“退”以及退市日期非空剔除ST/PT/退市公司,得到清洗版;
(3) 在同一清洗版上对违规次数(Freq)作全期1%/99%缩尾并新增Freq_w字段,得到缩尾版。
编号 文件名称 说明
1 计算结果未剔除金融ST未缩尾版本.dta 基础版;仍包含金融、ST/PT和退市公司,不缩尾;74,681行、32列。名称中的“未剔除”不撤销步骤(1)对空简称及B股的处理。
2 计算结果剔除金融ST未缩尾版本.dta 清洗版;剔除金融、ST/PT和退市公司,不缩尾;65,873行、32列。
3 计算结果剔除金融ST缩尾版本.dta 清洗缩尾版;样本与第2套相同,增加违规次数(Freq)_w;65,873行、33列。
五、变量说明
以下类型以缩尾版.dta中的实际存储类型为准;除第33项外,其余字段也存在于另外两套结果中。string为字符型,float和double为数值型。
序号 变量名称 变量类型 变量说明
01 证券代码 string 六位证券代码,保留前导零;同名列以公司基本信息中的非缺失值优先。
02 证券简称 string 年度面板中的证券简称,用于空简称及ST/PT/退市名称筛选。
03 stkcd double 数值型公司代码,公司级合并键;与year联合识别观测。
04 year double 观测年度,实际为整数年份,范围2000—2025。
05 违规倾向(Fraud) float 年度违规指示变量;有记录为1,否则为0。
06 违规次数(Freq) float 年度违规出现次数;虽存为float,取值为非负整数。
07 行业代码 string 主面板行业代码;包含J的记录在清洗版中被剔除。
08 行业名称 string 主面板行业名称。
09 所属省份 string 公司所属省份。
10 所属省份代码 string 公司所属省份的代码。
11 所属城市 string 公司所属城市。
12 所属城市代码 string 公司所属城市的代码。
13 证券中文简称 string 基本信息表中的证券中文简称。
14 上市日期 string 基本信息表中的上市日期,存储为字符型。
15 股票类型 string 基本信息表中的股票类型标识。
16 ABH股交叉码 string 基本信息表中的A/B/H股交叉标识。
17 公司名称 string 公司全称。
18 公司中文简称 string 公司中文简称。
19 公司英文名称 string 公司英文名称。
20 行业名称D string 基本信息表中的D层级行业名称。
21 行业代码D string 基本信息表中的D层级行业代码。
22 行业名称C string 基本信息表中的C层级行业名称。
23 行业代码C string 基本信息表中的C层级行业代码。
24 行业名称B string 基本信息表中的B层级行业名称。
25 行业代码B string 基本信息表中的B层级行业代码。
26 行业名称A string 基本信息表中的A层级行业名称。
27 行业代码A string 基本信息表中的A层级行业代码。
28 经营范围 string 基本信息表中的公司经营范围文本。
29 公司沿革 string 基本信息表中的公司历史沿革文本。
30 注册资本 double 基本信息表中的注册资本;单位沿用原始数据,未在计算代码中换算。
31 成立日期 string 基本信息表中的成立日期,存储为字符型。
32 退市日期 string 基本信息表中的退市日期;非空时在清洗版中剔除该公司记录。
33 违规次数(Freq)_w float 仅缩尾版存在的Freq全期1%/99%缩尾值。
六、代码文件
文件名称 语言 说明
上市公司违规数据计算代码.do Stata 从事件表构造Fraud/Freq,合并年度面板和基本信息,生成三套.dta/.xlsx结果;缩尾步骤使用winsor2。
上市公司违规数据计算代码.py Python 与Stata版计算口径对应,独立生成三套.dta/.xlsx结果。
上市公司违规数据评估代码.do Stata 独立评估结果数据的分布、缺失、异常、范围、时间连续性及稳健性,输出报告。
上市公司违规数据评估代码.py Python 与Stata版评估口径对应,独立输出同结构的质量报告。
七、数据质量评估
评估结果存放于运行时生成的“数据质量评估报告_YYYYMMDD”文件夹;当前报告为“数据质量评估报告_20260925”,运行日志为其根目录的“评估日志_20260925.log”(实际扩展名为.log)。当前报告逐套评估三份结果,汇总97条变量结论:78条“关注”、19条“不通过”;总表中的结论应结合具体缺失、异常和时间断档指标解读。
子文件夹名 内容说明
1 数据分布分析 各套结果的数值变量描述统计及全部变量频率分布CSV。
2 分布图 未剔除未缩尾版核心指标的直方图、箱线图、核密度图、散点图矩阵和时间趋势JPG。
3 异常值检验 各变量的IQR温和/极端异常、Z-score异常及缺失统计CSV。
4 逻辑合理性验证 公司年度重复与断档、取值范围及Fraud/Freq公式核验,以及总评估结论表CSV。
5 稳健性测试 三套处理版本按全期、前半期和后半期统计违规比例及平均次数的对比CSV。
八、参考文献
[1] 邹洋, 张瑞君, 孟庆斌, 侯德帅. 资本市场开放能抑制上市公司违规吗?——来自“沪港通”的经验证据[J]. 中国软科学, 2019(8): 120-134.
[2] 蔡志岳, 吴世农. 董事会特征影响上市公司违规行为的实证研究[J]. 南开管理评论, 2007(6): 62-68.
上市公司违规2000-2025年含do-python代码和excel-dta格式数据.zip
(68.52 MB, 需要: RMB 32 元)


雷达卡



京公网安备 11010802022788号







