3. 数据准备:财务数据源与非财务数据源
做关联交易挖掘,数据准备这一步,我个人的经验是——花多少时间都不为过。你想想看,模型再牛,算法再炫,喂进去的数据是脏的、乱的、缺的,那结果就是垃圾进垃圾出。我在项目里见过太多人,一上来就急着跑模型,结果被数据坑得欲哭无泪。
说白了,数据准备就是打地基。地基不稳,楼盖得再高也得塌。今天我们就聊聊,关联交易分析需要哪些数据源,以及怎么把这些数据洗干净、标准化。
3.1 财务数据源:财报与审计报告
财务数据是关联交易分析的核心。没有财务数据,你根本没法判断交易是否公允、是否存在利益输送。
主要数据源包括:
- 上市公司年报/半年报/季报:利润表、资产负债表、现金流量表、附注
- 审计报告:特别是非标意见、关键审计事项(KAM)
- 关联交易专项公告:定价政策、交易金额、余额
- 临时公告:重大关联交易、关联方资金占用
我个人习惯,拿到一份财报后,先看三样东西:
- 关联交易附注——这里藏着最直接的信息
- 审计意见——非标意见是红色警报
- 关键审计事项——审计师都盯着的点,你也不能放过
避坑指南:我曾经遇到一个项目,某公司财报里关联交易金额看起来很小,但仔细一查附注,发现大量交易被归类为"日常经营交易"而豁免披露。嗯,这里要注意,豁免不等于不存在。很多关联交易就是钻了这个空子。
3.2 非财务数据源:工商信息、舆情、供应链数据
光看财务数据,你只能看到冰山一角。非财务数据才是真正帮你挖出隐藏关联方的利器。
工商信息数据源:
- 企业基本信息(股东、高管、注册资本)
- 股权结构图(穿透到自然人)
- 董监高任职信息(一人兼任多家公司)
- 变更记录(股权变更、法人变更)
舆情数据源:
- 新闻、媒体报道
- 监管问询函、处罚公告
- 社交媒体讨论(雪球、股吧)
- 行业研究报告
供应链数据源:
- 供应商/客户名单(前五大、前十大)
- 采购合同、销售合同
- 物流、仓储数据
- 招投标信息
为什么会需要这些非财务数据?我举个例子。某公司财报显示,它向一家"非关联方"采购原材料,金额巨大。但一查工商信息,发现这家供应商的法人代表,竟然是该公司财务总监的亲戚。这就是典型的隐性关联方,光看财报根本发现不了。
3.3 数据清洗与标准化
数据源搞定了,接下来就是最磨人的环节——数据清洗。说实话,我做了这么多年风控,80%的时间都花在数据清洗上。这不是夸张,是真的。
常见的数据问题:
| 问题类型 | 具体表现 | 我的处理方式 |
|---|---|---|
| 缺失值 | 关联交易金额为空、交易对手信息缺失 | 先查公告补全,补不全的标记为"待核实" |
| 重复值 | 同一笔交易在多个公告中出现 | 按交易日期+交易对手+金额去重 |
| 格式不一致 | "张三" vs "张 三"、"100万" vs "1,000,000" | 统一格式,金额转数字,名称去空格 |
| 逻辑错误 | 交易金额为负数、日期晚于当前 | 人工复核,确认后修正或剔除 |
| 编码不统一 | 同一公司不同数据源用不同代码 | 建立统一的企业ID映射表 |
数据标准化的核心步骤:
- 实体对齐:把不同数据源中的同一家公司识别出来。比如"阿里巴巴"和"Alibaba Group"要映射到同一个ID。
- 金额标准化:统一货币单位(人民币)、统一数量级(万元或元)。
- 日期标准化:统一为YYYY-MM-DD格式。
- 分类标准化:关联交易类型(购销、资金拆借、担保等)统一编码。
- 关联方关系标准化:母子、兄弟、联营、合营等关系统一标签。
我的小技巧:在做实体对齐时,我习惯用"企业名称+法人代表+注册地址"三个字段联合匹配。光靠名称匹配,很容易漏掉那些改过名的公司。我曾经就因为没做地址匹配,漏掉了一个关键的关联方,差点酿成大错。
3.4 知识体系总览
下面这张图,是我自己总结的数据准备阶段的知识体系。你可以把它当作一个检查清单,做数据准备时对照着来,基本不会漏掉什么。
重要提醒:数据清洗不是一次性工作。我每次跑完一轮分析,发现异常数据,都会回头再清洗一遍。这是个迭代的过程,别指望一步到位。
3.5 实战小贴士
最后,分享几个我在实战中总结的经验:
- 先看数据量级:拿到数据后,先跑个describe(),看看最大值、最小值、均值。如果关联交易金额突然暴增,那就要警惕了。
- 建立数据字典:每个字段的含义、来源、格式,都记录下来。不然过两个月你自己都忘了这个字段是干嘛的。
- 保留原始数据:清洗后的数据要另存一份,千万别覆盖原始数据。我吃过这个亏,清洗错了想回退,结果原始数据没了,只能重新爬。
- 自动化清洗脚本:把清洗流程写成脚本,每次有新数据直接跑。别每次都手动操作,效率低还容易出错。
好了,数据准备这块就聊到这儿。数据准备好了,下一节我们就可以开始真正的关联交易挖掘了。