Python方差特征过滤的实例分析
作者:小妮浅浅 时间:2021-08-11 01:12:56
说明
1、通过特征本身的方差来筛选特征。特征的方差越小,特征的变化越不明显。
2、变化越不明显的特征对我们区分标签没有太大作用,因此应该消除这些特征。
实例
def variance_demo():
"""
过滤低方差特征
:return:
"""
# 1. 获取数据
data = pd.read_csv('factor_returns.csv')
data = data.iloc[:, 1:-2]
print('data:\n', data)
# 2. 实例化一个转换器类
transfer = VarianceThreshold(threshold=10)
# 3. 调用fit_transform()
data_new = transfer.fit_transform(data)
print('data_new:\n', data_new, data_new.shape)
return None
知识点扩充:
方差过滤法
VarianceThreshold 是特征选择的一个简单基本方法,其原理在于–底方差的特征的预测效果往往不好。而VarianceThreshold会移除所有那些方差不满足一些阈值的特征。默认情况下,它将会移除所有的零方差特征,即那些在所有的样本上的取值均不变的特征。
sklearn中的VarianceThreshold类中重要参数 threshold(方差的阈值),表示删除所有方差小于threshold的特征 #不填默认为0——删除所有记录相同的特征。
import pandas as pd
import numpy as np
np.random.seed(1) #设置随机种子,实现每次生成的随机数矩阵都一样
a= np.random.randint(0, 200,10)
b= np.random.randint(0, 200,10)
c= np.random.randint(0, 200,10)
d= [9,9,9,9,9,9,9,9,9,9]
data=pd.DataFrame({"A" : a,"B" : b,"C" : c,"D" : d})
data
from sklearn.feature_selection import VarianceThreshold
sel_model = VarianceThreshold(threshold = 0)
#删除不合格特征之后的新矩阵
sel_model.fit_transform(data)
来源:https://www.py.cn/jishu/jichu/32599.html
标签:Python,方差特征,过滤


猜你喜欢
python中defaultdict方法的使用详解
2022-06-25 05:07:09
使用python装饰器验证配置文件示例
2022-05-27 03:10:11
python语言中有算法吗
2022-06-22 12:42:15
分享一下SQL Server执行动态SQL的正确方式
2024-01-14 00:17:56
MySQL触发器的使用场景及方法实例
2024-01-23 04:45:12
python模拟鼠标点击和键盘输入的操作
2023-01-14 18:29:00

python实现好看的时钟效果
2021-02-11 23:44:25

Python高级编程之消息队列(Queue)与进程池(Pool)实例详解
2021-12-14 17:30:24

ASP截取中英文字符串固定长度
2009-08-19 17:12:00
Python绘制牛奶冻曲线(高木曲线)案例
2022-04-05 16:35:08

Python 内置函数sorted()的用法
2021-02-18 10:20:23
利用pytorch实现对CIFAR-10数据集的分类
2021-11-21 03:09:36
Flask URL传参与视图映射的实现方法
2021-05-10 12:31:06

使用Karma做vue组件单元测试的实现
2024-04-30 10:33:15

Python实现破解网站登录密码(带token验证)
2021-09-29 06:22:22

Anaconda的安装及其环境变量的配置详解
2022-08-31 19:21:11

pycharm设置注释颜色的方法
2022-01-22 21:47:46
python 3.7.0 下pillow安装方法
2023-07-09 09:47:49

python flask框架快速入门
2021-10-16 22:02:26

python+django+rest框架配置创建方法
2021-10-07 02:28:52
