数据分析-FDDC2018金融算法挑战赛

比赛简介:用到的数据包括历史财务数据、宏观数据、行情数据、行业数据。预测内容为指定公司的二季度营收数据

比赛页面详情:FDDC2018金融算法挑战赛01-A股上市公司季度营收预测

如果下载不了的话可以去这里下载:天池数据集

今年还有一个比赛是:FDDC2018金融算法挑战赛02-A股上市公司公告信息抽取

数据文件预览(主要是FDDC_financial_data):(其他:pdf文件主要是介绍类,FDDC_financial_submit是提交的文件,FDDC_semi_annual_result和Market_data_instruction是半年度结果和行情数据介绍)

 

下载FDDC_financial_data,解压打开:

主要关注:

1. 宏观数据 Macro Industry :是指一系列宏观经济学的统计指标, 包括生产总值(GDP)、国民总收入(GNI)、劳动者报酬、消费水平等。宏观经济周期是影响周期性行业的关键因素之一,对上市公司的经营情况也有直接的影响。

2. 行业数据 Industry Data :行业数据可以指示某个行业的发展态势,上市公司都会有自己所在的行业,分析行业的发展趋势、所处阶段等可对上市公司经营情况做出大体的判断(如从汽车行业每月的销量数据中,可以看到行业的景气程度)。

3. 公司经营数据 Company Operation Data :一般为月度数据,代表特定公司主营业务月度的统计值,与公司营收密切相关,每个公司指标不一样。

4. 行情数据 Market Data :行情数据代表上市公司股票月度交易行情,主要包括价格、成交量、成交额、换手率等。

5. 资产负债表 Balance Sheet:代表一个公司的资产与负债及股东权益

6. 利润表 Income Statement:代表一个公司的利润来源,而净利润则直接影响资产负债表中股东权益的变化

7. 现金流量表 Cash Flow Statement:代表一个公司的现金流量,更代表资产负债表的变化。净利润经过“经营”、“投资”、“筹资”三项重要的现金变动转变为最终的现金变化

 

 

依次对每个数据文件进行分析(不懂的单词可以参考financial_terms.pdf):

注意:一个表格里可能有多个子表格

用pandas.read_excel读取数据,并查看head和describe,宏观经济和市场行情会对整个行业板块造成影响,但是我们初步选择:4. 行情数据 Market Data,5. 资产负债表 Balance Sheet,6. 利润表 Income Statement,7. 现金流量表 Cash Flow Statement四项数据,关注公司的经营状况和财务数据,这些是影响公司营收的关键。

 除行情数据外,资产负债表、利润表和现金流量表各有三个子表格,分别为general Business,bank,Insurance,Security,分别代表:非金融上市公司、银行、保险、证券

 —————————————————————————————————————————————————————————————————————————————————————————

数据预处理步骤:

1.剔除空值过多的列。

打开balance sheet表,查看dtypes和describe可以看到一共有73列,但是很多列几乎全是NAN,初步决定当某一列的空值大于20%时,整列剔除。因为要对多个dataframe做同样的操作,所以接下来的前处理步骤都会写成函数形式。

 2.用PCA(主成分分析)进行数据降维

PCA的原理可以参考此文:PCA的数学原理

 

 

 

 

 

 

 

 

未完待续……

posted @ 2018-08-20 14:34  TimoTong  阅读(1218)  评论(0编辑  收藏  举报