我们将使用探索性数据分析来识别财务数据中脆弱的早期预警信号。
破产是由无法偿还欠债权人(欠债的银行或机构)的部分或全部债务的债务人(欠其他实体债务的实体)发起的法律程序。在大多数国家,破产是由法院命令实施的。当公司无法偿还债务或履行义务时,就会发生破产。这种破产状态可持续数月至数年。在某些情况下,破产可能是永久性的。
财务术语解释
净利润:从总收入中减去所有运营费用、利息和税金后剩余的金额。
流动资产:这是现金和其他可以在一年内转换为现金的资产。
毛利润:这是公司在扣除制造或提供的服务的相关成本后获得的利润。
导入数据
我们需要加载文件并将它们转换为 pandas DataFrame。这些列被赋予了一个新的标题,如下所示:
# To suppress warnings
import warnings
warnings.filterwarnings("ignore")
warnings.filterwarnings("ignore", category=DeprecationWarning)
import numpy as np
import pandas as pd
%matplotlib inline
# For loading .arff files
from scipy.io import arf
# Load the 5 raw .arff files into a list
def load_raw_data():
N=5
return [arff.loadarff(str(i+1) \\
+ 'year.arff') for i in range(N)]
使用Pandas 分析
数据分析的下一步,在导入数据并安装所需的包之后,是 pandas 分析。
我们将专注于 pandas profiling——一种简单而快速的探索性数据分析方法。它本质上是一个包,它承诺提供一种更有效的数据分析方法。
pandas 分析的输出是一个 HTML 文件。我们将讨论以下屏幕截图中显示的发现的各个方面。
现在,让我们看一下 DataFrame 2 的 pandas 分析报告的结果。以下屏幕截图显示了 DataFrame 2 的 HTML 报告:
缺失值分析
数据分析的主要步骤之一是缺失值分析。我们需要执行缺失值分析的主要原因是了解一列中缺失了多少数据以及我们将如何处理它。
对 DataFrame 执行缺失值分析
缺失值的插补
我们将研究可用于处理缺失值的两种不同方法:
折叠目录
对 DataFrame 执行平均插补
对 DataFrame 执行迭代插补
拆分特征
使用套索进行特征选择
均值估算数据帧的套索正则化
迭代插补数据帧的套索正则化
特征选择
源代码