楼主: freestyle2003
1136 3

[经管数据集] 1990-2023年公司是否ST、*ST或PT 含原始数据 详细构造过程Stata代码 [推广有奖]

已卖:5141份资源

学科带头人

34%

还不是VIP/贵宾

-

威望
1
论坛币
40792 个
通用积分
1133.2218
学术水平
574 点
热心指数
544 点
信用等级
538 点
经验
49874 点
帖子
1565
精华
0
在线时间
1127 小时
注册时间
2017-8-9
最后登录
2026-1-29

初级热心勋章 初级信用勋章

楼主
freestyle2003 企业认证  发表于 2024-7-11 17:00:54 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
公司是否ST、*ST或PT

持续更新,后续关注我后免费获取更新版本
不管什么时候毕业或者发期刊用到,都能用到最新的数据

【原创整理,严禁转载,转载必究】


计算说明


ST:公司经营连续二年亏损,特别处理。
*ST:公司经营连续三年亏损,退市预警。
PT(Particular Transfer,“特别转让”的缩写)。依据《公司法》和《证券法》规定,上市公司出现连续三年亏损等情况,其股票将暂停上市。

1.1 判断公司当年年末是否ST、*ST或PT
是否ST:公司当年年末的“证券简称”中含有“ST”字样则取值为1,否则为0
是否PT:公司当年年末的“证券简称”中含有“PT”字样则取值为1,否则为0
是否ST或PT:公司当年年末的“证券简称”中含有“ST”或“PT”字样则取值为1,否则为0

1.2 判断公司年份区间内是否ST、*ST或PT
区间内是否ST:在1990-2022年的年份区间内,公司在有一年年末的“证券简称”中含有“ST”字样则取值为1,否则为0
区间内是否PT:在1990-2022年的年份区间内,公司在有一年年末的“证券简称”中含有“PT”字样则取值为1,否则为0
区间内是否ST或PT:在1990-2022年的年份区间内,公司在有一年年末的“证券简称”中含有“ST”或“PT”字样则取值为1,否则为0

数据说明

样本选择:全部A股1990-2023年数据
每个压缩包都附有初始数据,计算代码和最终数据


赠送超值上市基本信息:证券代码、统计截止日期、上市公司ID、证券简称、ABH股交叉码、行业名称、行业代码、中文全称、公司成立日期、首次上市日期、法人代表、注册资本、公司网址、经营范围、主营业务、上市状态、注册具体地址、注册地址所属省份、注册地址所属城市、注册地经度(E)、注册地纬度(N)、公司办公地址、办公地址经度、办公地址纬度、办公地址邮政编码等。


数据截图
QQ截图20240711170017.jpg


分年份数据量统计

QQ截图20240711165955.jpg


1990-2023年公司是否ST或PT 含原始数据详细构造过程Stata代码.zip (25.39 MB, 需要: RMB 15 元) 本附件包括:
  • 上市公司基本信息.xlsx
  • 代码.do
  • 原始数据.xlsx
  • 是否ST或PT.dta
  • 是否ST或PT.xlsx


常用筛选数据
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:Stata 原始数据 tata particular transfer

沙发
freestyle2003(未真实交易用户) 企业认证  发表于 2024-7-12 11:02:43
整理所花费时间远超成本价

藤椅
freestyle2003(未真实交易用户) 企业认证  发表于 2024-7-12 11:03:06

数据来源权威:官方公布的上市公司年报、上市公司数据库等权威途径手动整理而成,自用数据,多次人工审核、校对,确保准确无误

板凳
赵安豆(未真实交易用户) 发表于 2024-8-7 13:01:59
构造公司是否ST、*ST或PT的过程可以分为几个步骤。首先,需要准备一个包含公司股票代码、名称、证券简称等信息的数据集,并且数据集中至少要有从1990年到2023年的历史记录。以下是使用Stata软件进行这一过程的代码示例:

```stata
* 假设数据已经导入,并且有一个名为"company_data.dta"的数据库,其中包含变量stock_code(股票代码)、year_end_name(年末证券简称)和year(年份)

clear all

use company_data, clear

* 为ST、PT创建虚拟变量
gen is_ST = strpos(year_end_name,"ST") > 0
gen is_PT = strpos(year_end_name,"PT") > 0
gen is_ST_or_PT = (is_ST | is_PT)

* 判断公司是否在1990-2023年间的任何一年被标记为ST、PT
bysort stock_code: egen is_ST_any_year = max(is_ST)
replace is_ST_any_year = 0 if missing(is_ST_any_year)

bysort stock_code: egen is_PT_any_year = max(is_PT)
replace is_PT_any_year = 0 if missing(is_PT_any_year)

* 如果需要计算公司是否在1990-2023年被标记为ST或PT
bysort stock_code: egen is_ST_or_PT_any_year = max(is_ST_or_PT)
replace is_ST_or_PT_any_year = 0 if missing(is_ST_or_PT_any_year)

* 清除临时变量以节省内存(可选)
drop is_ST is_PT is_ST_or_PT

* 显示结果
list stock_code year is_ST is_PT is_ST_or_PT is_ST_any_year is_PT_any_year is_ST_or_PT_any_year in 1/20 //显示前20行数据作为检查
```

这段代码首先使用`strpos()`函数来判断每个公司每年的证券简称中是否包含"ST"或"PT",然后通过`egen max()`计算每个公司在整个时间区间内是否有任一年份被标记为ST、PT或者两者之一。最后,可以使用`list`命令检查结果。

请注意,在实际应用中,需要将数据文件名和变量名称替换为自己的实际情况,并确保数据集已经导入并包含所需的字段。此外,这段代码假设每年的数据是独立的记录(即每个公司每年有单独的一行),如果是连续的时间序列数据,则可能需要先按年份分组或使用其他方法处理。

此文本由CAIE学术大模型生成,添加下方二维码,优先体验功能试用



您需要登录后才可以回帖 登录 | 我要注册

本版微信群
扫码
拉您进交流群
GMT+8, 2026-1-30 15:47