一、数据集概况

数据名称: 港股年报
数据来源: 披露易(https://www1.hkexnews.hk/)
公司数量: 3067
报告数量: 31410
会计年度: 2007 ~ 2024
报告发布日期: 2007-01-08 ~ 2025-04-30
数据类型: pdf、txt、csv(csv是对所有txt的汇总文件)
数据体积: 155G
本文声明: 科研用途; 如有问题, 请加微信372335839,备注「姓名-学校-专业」

1.2 数据来源

数据整理自 披露易 https://www1.hkexnews.hk

https://www1.hkexnews.hk/search/titlesearch.xhtml?lang=zh



二、查看数据

csv是对港股中(英)文TXT的汇总,且已对中文进行了繁体转简体处理。

2.1 读取

csv是对所有 txt 的汇总文件, 如果电脑内存16G +, 可直接读取。 港股中文年报.csv.gz(2.69G,解压后大概8.8G)

import pandas as pd

cdf = pd.read_csv('港股中文年报.csv.gz')
cdf



如果电脑内存小于16G, 可参考 代码 | 如何处理远超电脑内存的csv文件

import pandas as pd

#只读取5行
cdf2 = pd.read_csv('港股中文年报.csv.gz', 
                  compression='gzip', 
                  nrows=5)

2.2 记录数

len(cdf)

Run

31410

2.3 公司数量

cdf['code'].nunique()

Run

3067

2.4 会计年度

数据集覆盖的会计年度主要集中在 2007 ~ 2024,但2001 ~ 2006也会有少量记录。

sorted(cdf.year.unique())

Run

[2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021, 2022, 2023, 2024]

cdf[cdf['year']==2001]


2.5 发布日期

港股年报报告发布日期

cdf['pubdate'] = pd.to_datetime(cdf['pubdate'])

print(cdf['pubdate'].min())
print(cdf['pubdate'].max())

Run

2007-01-08 00:00:00
2025-04-30 00:00:00

2.6 年度报告量

from plotnine import *
import matplotlib.pyplot as plt
from matplotlib.font_manager import FontProperties

#文泉驿微米黑.ttf位于代码同文件夹
font_prop = FontProperties(fname='文泉驿微米黑.ttf') 

data = cdf['year'].value_counts().reset_index()
data['year'] = data['year'].astype('category')

(
    ggplot(data,  aes(x='year', y='count'))
    +geom_col()
    +geom_text(aes(label='count'), data=data, va='bottom', color='grey', size=10)
    +theme(figure_size=(10, 6),
           text = element_text(family = font_prop.get_name()), 
           plot_title = element_text(family = font_prop.get_name(), size=14)
          )
    +labs(title='港股中文年报发布数量',
          x = '会计年度', 
          y = '报告数')
)



相关内容