研究数据高级数据

年度与季度宽表转长面板Stata代码案例

数据格式 Excel / Stata / Stata代码更新日期

数据摘要

实证分析常需要将按年份或季度展开的宽表转换为面板结构。本资料提供Stata处理代码、年度与季度输入表格及转换后的面板结果,案例包含总资产报酬率和基本每股收益等变量。可用于学习不同时间频率下的数据重塑与面板整理操作。

基本信息

数据频率季度
当前预览样本量29288 行
文件格式Excel / Stata / Stata代码
文件包大小3.72 MB
包含内容数据表4份、代码1份
所属分类

样本年份分布

合计 29,288 行 · 2 个年份

查看年份明细
年份样本量
201714,644
201814,644

测算方法

案例把指标名称与报告期合并在列名中的公司宽表转为年度或季度面板。导入工作表后删除证券简称为空的记录,保留证券代码与简称作识别字段,使用 gather 将指定范围内的指标列堆叠为“原列名—数值”记录。年度处理从原列名中提取数字作为年份,并截取“报告期”之前的文字作为指标名称;随后为各指标生成对应数值列,按证券代码、简称和年份取均值,整理成每个公司年度一行。季度处理增加报告期识别:一季、中报、三季、年报分别对应第 1—4 季度,并生成“年份q季度”字段,再按公司、年份和季度汇总各指标均值。代码中的列范围和列名模式针对示例数据,使用其他宽表时应按其实际列名调整。

以下字段、样本量及样本仅对应当前展示的数据表,不代表资料包全部文件。查看文件结构

字段列表共 7 个字段

字段含义 / 说明类型均值标准差最小值最大值缺失率
证券代码—文本————0.0000%
证券简称—文本————0.0000%
year—整数2017.50.5000085361201720180.0000%
q—整数2.51.118053076140.0000%
quarter—文本————0.0000%
总资产报酬率ROA(mean) 总资产报酬率ROA数值3.9832983376.944081047-212.495467.43293.4861%
收益EPS基本(mean) 收益EPS基本数值0.26960704630.5771281504-9.5728.022.7964%

数据样本预览

资料样本(部分数据)

仅可预览前100 行、100 列,滚动查看其余行列,完整数据以下载文件为准。

证券代码证券简称yearqquarter总资产报酬率ROA收益EPS基本
000001.SZ平安银行201712017q1—0.31
000001.SZ平安银行201722017q2—0.68
000001.SZ平安银行201732017q3—1.06
000001.SZ平安银行201742017q4—1.3
000001.SZ平安银行201812018q1—0.33
000001.SZ平安银行201822018q2—0.73
000001.SZ平安银行201832018q3—1.14
000001.SZ平安银行201842018q4—1.39
000002.SZ万科A201712017q10.22610.063
000002.SZ万科A201722017q21.65850.66
000002.SZ万科A201732017q32.40421.005
000002.SZ万科A201742017q45.28052.54
000002.SZ万科A201812018q10.33810.081
000002.SZ万科A201822018q21.67280.83
000002.SZ万科A201832018q32.79431.267
000002.SZ万科A201842018q45.33063.06
000004.SZ国农科技201712017q1-0.879-0.014
000004.SZ国农科技201722017q2-2.7656-0.0449
000004.SZ国农科技201732017q3-3.86-0.0647
000004.SZ国农科技201742017q43.41660.102
000004.SZ国农科技201812018q11.13740.0245
000004.SZ国农科技201822018q20.35440.0236
000004.SZ国农科技201832018q3-2.6266-0.0309
000004.SZ国农科技201842018q4-8.9117-0.2414
000005.SZ世纪星源201712017q1-0.1189-0.0096
000005.SZ世纪星源201722017q20.2023-0.0168
000005.SZ世纪星源201732017q30.8394-0.015
000005.SZ世纪星源201742017q43.76530.0145
000005.SZ世纪星源201812018q10.83650.0153
000005.SZ世纪星源201822018q21.22250.0077
000005.SZ世纪星源201832018q31.64020.0062
000005.SZ世纪星源201842018q46.80350.1406
000006.SZ深振业A201712017q11.3850.0769
000006.SZ深振业A201722017q23.16730.1849
000006.SZ深振业A201732017q34.19790.2512
000006.SZ深振业A201742017q48.14840.5968
000006.SZ深振业A201812018q12.6530.212
000006.SZ深振业A201822018q24.37660.3081
000006.SZ深振业A201832018q35.49750.3728
000006.SZ深振业A201842018q48.67810.6476
000007.SZ全新好201712017q1-1.08110
000007.SZ全新好201722017q21.18260.0607
000007.SZ全新好201732017q3-1.21760.0298
000007.SZ全新好201742017q40.02380.0475
000007.SZ全新好201812018q1-2.4013-0.02
000007.SZ全新好201822018q2-3.9319-0.0319
000007.SZ全新好201832018q3-3.2928-0.025
000007.SZ全新好201842018q4-48.8459-0.57
000008.SZ神州高铁201712017q10.17620.0027
000008.SZ神州高铁201722017q21.00990.0198
000008.SZ神州高铁201732017q32.01120.0434
000008.SZ神州高铁201742017q411.07170.311
000008.SZ神州高铁201812018q10.16530.0037
000008.SZ神州高铁201822018q21.06130.0218
000008.SZ神州高铁201832018q32.09590.0439
000008.SZ神州高铁201842018q44.65680.116
000009.SZ中国宝安201712017q10.88670.0156
000009.SZ中国宝安201722017q21.90460.0373
000009.SZ中国宝安201732017q33.27420.084
000009.SZ中国宝安201742017q43.26330.06
000009.SZ中国宝安201812018q10.81820.0164
000009.SZ中国宝安201822018q22.06460.0535
000009.SZ中国宝安201832018q32.49710.0459
000009.SZ中国宝安201842018q45.1770.1
000010.SZ*ST美丽201712017q1-0.2998-0.0311
000010.SZ*ST美丽201722017q2-0.6015-0.0556
000010.SZ*ST美丽201732017q31.81670.0155
000010.SZ*ST美丽201742017q4-25.7197-1.2947
000010.SZ*ST美丽201812018q1-1.1499-0.0568
000010.SZ*ST美丽201822018q2-2.1541-0.1037
000010.SZ*ST美丽201832018q3-4.398-0.2341
000010.SZ*ST美丽201842018q4-20.6837-0.8922
000011.SZ深物业A201712017q16.07050.5061
000011.SZ深物业A201722017q27.1410.6114
000011.SZ深物业A201732017q311.99530.9668
000011.SZ深物业A201742017q413.29581.0453
000011.SZ深物业A201812018q11.01470.0897
000011.SZ深物业A201822018q21.62480.1392
000011.SZ深物业A201832018q32.9320.2419
000011.SZ深物业A201842018q412.82110.9945
000012.SZ南玻A201712017q11.59470.08
000012.SZ南玻A201722017q23.53320.19
000012.SZ南玻A201732017q36.07920.33
000012.SZ南玻A201742017q47.07870.35
000012.SZ南玻A201812018q11.42840.07
000012.SZ南玻A201822018q23.00030.13
000012.SZ南玻A201832018q34.30830.17
000012.SZ南玻A201842018q44.57640.16
000014.SZ沙河股份201712017q1-0.2063-0.0167
000014.SZ沙河股份201722017q20.42060.0196
000014.SZ沙河股份201732017q30.60870.022
000014.SZ沙河股份201742017q41.11060.0378
000014.SZ沙河股份201812018q10.31370.0156
000014.SZ沙河股份201822018q20.39060.0153
000014.SZ沙河股份201832018q30.48980.0112
000014.SZ沙河股份201842018q412.3130.7238
000016.SZ深康佳A201712017q10.41250.0109
000016.SZ深康佳A201722017q20.71160.0128
000016.SZ深康佳A201732017q31.71130.0535
000016.SZ深康佳A201742017q434.05812.1001

代码公开披露

仅展示前 30 行,供了解变量构造与处理流程,完整代码请下载文件查看。

/////////////////////////////////////////////////////////////////////////////////////////
////////////////////////////////特殊年度数据转换为面板数据///////////////////////////////
/////////////////////////////////////////////////////////////////////////////////////////
///更多stata学习资料尽在丘知数据分析会员之家,网址:www.qqrdata.com
* 安装命令
ssc install tidy
* 导入数据
import excel 原始年度数据.xlsx, firstrow clear

* 剔除最后两行数据
drop if 证券简称==""

* 除了证券代码和证券简称外其他所有的变量都进来
* 可以使用连字符,只要首尾两个变量放进来即可,比较简洁
gather 资产总计报告期2015年报报表类型合并报表 - 负债合计报告期2018年报报表类型合并报表
///更多stata学习资料尽在丘知数据分析会员之家,网址:www.qqrdata.com
* 提取年份
gen year = real(regexs(0)) if regexm( variable ,"([0-9]+)")

* 提取变量名
gen name = regexs(0) if regexm( variable, ".*报告期")
replace name = subinstr(name, "报告期", "", .)   //把报告期替代为空
drop variable

*help subinstr(查到的解释)
/*
subinstr("this is the day","is","X",1) = "thX is the day"
                     subinstr("this is the hour","is","X",2) = "thX X the hour"
                     subinstr("this is this","is","X",.) = "thX X thX" */
* 变量转置