#!/usr/bin/env python3
# -*- coding: utf-8 -*-
import pandas as pd
import numpy as np## 读取数据
df = pd.read_csv("./HR.csv", header=0)# 查看数据结构
summary = df.describe()# 求均值
row_mean = df.mean(axis=1)
col_mean = df.mean()# 选择数据
## 列
print(df["satisfaction_level"].head())
print(df[0:3])## 标签
print(df.loc[0:3])
print(df.loc[0, ["satisfaction_level"]])### 1
### 异常值分析
### 空值处理
sl_l = df["satisfaction_level"]
df[df['satisfaction_level'].isnull()]
#print(sl_l.isnull())
print(sl_l.isnull().sum())
print(sl_l[sl_l.isnull()])
## 对空值的填充
#print(sl_l.fillna(value=5))## 对空值的丢弃
#print(sl_l.dropna(how="any"))
sl_l = sl_l.dropna(how="any")### 2
### 数据过大、过小异常处理
le_s = df['last_evaluation']
le_s[le_s.isnull()]
le_s.isnull().sum()## 偏度
le_s.skew()
## 峰度
le_s.kurt()## 连续异常值处理方式(取四分位上下界)
#(1) le_s = le_s[le_s <= 1]
q_low = le_s.quantile(q=0.25)
q_high = le_s.quantile(q=0.75)
q_interval = q_high - q_low
k = 1.5### 数据筛选
le_s = le_s[le_s<q_interval+k*q_interval][le_s>q_low-k*q_interval]### 分布情况
np.histogram(le_s.values,bins=np.arange(0.0, 1.1,0.1 ))### 3
## 排序
np_s = df['number_project']
np_s.value_counts(normalize=True).sort_index()### 4 分布情况
pl5_s = df['promotion_last_5years']
pl5_s.value_counts()
pl5_s.value_counts(normalize=True)## 5 条件筛选
s_s = df['salary']
s_s.where(s_s!=="nme").dropna()### 总结
# 去空值
df = pd.read_csv("./HR.csv", header=0)
df = df.dropna(axis=0,how='any')df[df['last_evaluation']<=1][df['salary']!='nme']
le_s = df['last_evaluation']
q_low = le_s.quantile(q=0.25)
q_high = le_s.quantile(q=0.75)
q_interval = q_high - q_low
k=1.5
le_s = le_s[le_s<k*q_interval+q_high][le_s>k*q_interval-q_low]
df[le_s<k*q_interval+q_high][le_s>k*q_interval-q_low][df['salary']!='nme']
简单对比分析
df.groupby("department").mean()

待续。。。

python - 单因子分析相关推荐

  1. Quantopian单因子分析工具:Alphalens

    Quantopian是国外著名的量化交易平台,早期聚宽就是仿照这个网站开发的,算是这类平台的鼻祖了,可惜Quantopian最近刚宣布要停止运营了.Quantopian开发了许多优秀的开源项目,其中比 ...

  2. python单下划线和双下线的区别

    python单下划线和双下划线的区别 文章目录: 一.简单说明 二.举例说明 1.单下划线开头开头(protected变量) 2.双下划线开头(private变量) 一.简单说明 在学习Python的 ...

  3. 研效优化实践:Python单测——从入门到起飞

    作者:uniquewang,腾讯安全平台后台开发工程师 福生于微,积微成著,一行代码的精心调试,一条指令的细心验证,一个字节的研磨优化,都是影响企业研发效能工程的细节因素.而单元测试,是指针对软件中的 ...

  4. python vector变量_用Python实现因子分析

    因子分析(factor analysis)因子分析的一般步骤factor_analyzer模块进行因子分析使用Python实现因子分析初始化构建数据将原始数据标准化处理 X计算相关矩阵C计算相关矩阵C ...

  5. python单曲循环播放MP3

    python单曲循环播放mp3 本文使用pygame播放MP3 1.安装pygame包 安装方式请查看https://blog.csdn.net/python_go/article/details/1 ...

  6. python实现因子分析及用于综合评分且配上碎石图(实例分析)

    由于感觉因子分析不是很懂,因此又通过python把 因子分析(factor analysis)案例(matlab实现) 这题又给打了一遍. 这里加上了碎石图,用来选择辅助选择因子个数,但是我感觉这里没 ...

  7. python单选题库答案_Python单选题库

    Python 单选题库 一. python 语法基础 1 . Python 3.x 版本的保留字总数是 A.27 B.29 C.33 D.16 2. 以下选项中,不是 Python 语言保留字的是 A ...

  8. 单因子分析 —— UBL综合因子

    1.单因子分析概述 主要步骤: 1.每个月底,按单因子值将股票池中的可用股票分组. 2.每组按每天的流通市值,和股票的每日 close-to-close 收益率,计算每天的每组加权收益. 3.以上循环 ...

  9. python:单引号,双引号和三引号的区别

    在python中字符串可以用单引号括起来,也可以用双引号,这两种方式是等价的,而在php当中单引号和双引号的有些是不一样的,虽然表示的字符串,但是在php的单引号解析速度比双引号快,如果在python ...

最新文章

  1. centos yum 重新配置dns
  2. python调用matlab环境配置、非常详细!!!_Python调用Matlab2014b引擎
  3. Android Studio之编译提示\app\src\main\res\values\colors.xml:1:1 Error:前言有不允许的内容
  4. 2020牛客NOIP赛前集训营提高组(第四场)B-色球【链表】
  5. 第二篇:对CART,Gradient Boost,Xgboost,LightGBM的学习
  6. 双11落下帷幕,天猫、京东战报再创记录,拼多多“失声”...
  7. 通过一个模拟程序让你明白ASP.NET MVC是如何运行的
  8. Apache http server2.4 64位绿色解压版的安装、部署、启动和使用说明
  9. 封装程序报错Failed to execute script pyi_rth_multiprocessing解决办法
  10. 哈理工OJ 2274 Heroic Action(01坑背包)
  11. python webservice框架_python webservice hello world
  12. 20162327WJH第五周作业
  13. 探究“补阶乘大法的本质“——糖水不等式
  14. 安装mysql staring server 失败 已经成功决解。
  15. mysql卸载什么文件夹_MySQL卸载
  16. HTML 计算奖金小程序
  17. 调用系统安装软件时出现“解析软件包时出现问题”
  18. PCL点云处理之三维向量夹角计算(四十九)
  19. JavaScript(5)-内置对象
  20. 社区发现算法 python_社区发现(Community Detection)算法(转)

热门文章

  1. Proteus使用教程并仿真51程序——LED流水灯
  2. Linux 开机自启动
  3. STM32c8t6串口+蓝牙控制PC13亮灭
  4. 备份 mysql数据
  5. 弹性伸缩(Auto Scaling)
  6. JPA——API介绍、完成JPA的CRUD操作、JPQL完成复杂查询操作
  7. 独立开发者+开源项目,超级个体的价值模式
  8. 【JavaSe】面向对象篇(五) 三大特征之二继承
  9. 随机生成汉字(随机点名册)
  10. 关于生产环境跨域问题