这是一个中国上市公司年报计量分析的项目,数据来源主要是两部分:原始统计数据来自于国泰安的CSMAR(经济金融数据库),年报是通过爬虫抓取自上交所和深交所(由于深交所的网站性能差,抓取太慢失败率偏高,部分年报又从新浪财经进行了补充抓取)
如下图所示:
step1 从国泰安的CSMAR(经济金融数据库)下载原始统计数据,情况如下
文件名 | 公司数 | 记录数 | 说明 |
---|---|---|---|
国有股持股数.xlsx | 3596 | 32172 | |
民营上市公司数据.xlsx | 1816 | 17144 | |
研发投入占比xlsx | 3058 | 15849 | |
资产负债和利润.xlsx | 3331 | 39036 | |
上市公司基本信息年度表2000-2017.xlsx | 3627 | 35624 | |
ROA数据来源.xlsx | 3691 | 146208 | |
托宾Q值来源.xlsx | 3679 | 137199 |
step2 对原始统计数据的7个文件进行合并,合并后的记录数为39657条,3617家公司
step3 对合并数据进行过滤,过滤后的记录数为30495条,2822家公司,其中过滤规则如下
- 只保留2003~2017这15年的数据记录
- 过滤2015~2017近3年数据不全的公司
- 过滤ST超过10年的公司
step4 下载需要的上市公司年报,下载后的文件为pdf格式,再通过转换工具(pdfminer)从pdf中提取出文本。最终成功提取出文本的年报为24310份,2475家公司。pdf总计大小为62G,转换为txt格式后总计大小为8.2G。
step5 进行分词并统计词频,对应24310条统计记录,2475公司
step6 把step5和step3的记录进行合并,并过滤年报不连续的公司,最终保留的记录数为23101条,2350家公司
年报是通过爬虫抓取自上交所和深交所(由于深交所的网站性能差,抓取太慢失败率偏高,部分年报又从新浪财经进行了补充抓取),为了加速加载,支持并发;网站稳定性差会经常导致中断,支持重复执行累加上次结果