python实现因子分析

新人,记录一下每一个经手的方法模型

背景

本文从4个维度选取9个主要财务指标对7家公司进行因子分析,主要采用因子分析对目前公司进行综合排名,进而对公司的授信额度进行考核。
注:本文是针对指定业务进行分析,因子分析过程有部分删改,请注意结合其他参考文献使用,因数据涉及隐私,故不公布,如需数据请按照样本数量及维度数量自行编写

指标

评估公司基本状况最为核心的财务指标就是公司的偿债能力、营运能力、盈利能力和发展能力。由此本文选取9个指标作为最能反映这些能力的指标进行分析(净资产收益率 总资产报酬率 速动比率 流动比率 存货周转率 应收账款周转率 总资产增长率 销售利润率 资产负债率)

因子分析流程

  1. 获取数据
  2. 数据标准化
  3. 充分性检测(Adequacy Test)
  4. 协方差矩阵(相关系数矩阵)
  5. 特征值&特征向量
  6. 主成分个数(因子个数)
  7. 方差,贡献率,累计贡献率
  8. 因子分析

所需python函数库

#导入python所需要的库及函数包
import numpy as np
import pandas as pd
from sklearn import preprocessing
from sklearn.decomposition import PCA
from sklearn.preprocessing import MinMaxScaler,StandardScaler
import math as math
from numpy import *
import numpy.linalg as nlg
from factor_analyzer import factor_analyzer,Rotator
from factor_analyzer import FactorAnalyzer, calculate_kmo, calculate_bartlett_sphericity  

获取数据

由于本人使用的文本文件里面是以逗号分隔符形式存储的,因此直接使用read_csv读取文件

#打开指定路径的文件(文件名可以包含中文字符)
file = open(r'C:\Users\file.txt', encoding = 'utf-8')
#添加列名
names = []
#读取数据,以数据框的形式展现数据
DF1 = pd.read_csv(file , names = names , sep = ' ')
#将数据框形式的数据 转换成以列表的形式 展现 , 便于计算
#将公司名称去除,便于建模
DF2 = DF1.drop(['公司名称'],axis = 1)
#将数据框形式的数据 转换成以列表的形式 展现 , 便于计算
data = DF2.values
#数据以非科学计数法展示
np
  • 5
    点赞
  • 193
    收藏
    觉得还不错? 一键收藏
  • 16
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 16
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值