sklearn:卡方分布输入不能是负数

2023-11-19

今天使用sklearn进行特征选择的时候出现一个错误:

ValueError: Input X must be non-negative.

找了stackoverflow,原来是卡方验证不能用于负值。

卡方分布是通过统计当前变量的频次,和目标变量的频次来分析当前变量时候有关系来衡量当前变量的重要程度,所以用来做特征选择。这里细致讲解,请看参考博客第三个。

频次当然不是负数,所以不能输入负数值。

解决办法:
1.把输入变化到0-1.

sklearn.preprocessing.MinMaxScaler().fit_transform(YOUR_TRAINING_FEATURES_HERE)

2.用其他的特征选择方法。

klearn.feature_selection.f_classif 计算 ANOVA f-value
sklearn.feature_selection.mutual_info_classif 计算 mutual information

参考博客:
1.stackoverflow:https://stackoverflow.com/questions/64596532/problem-with-negative-numbers-in-sklearn-feature-selection-selectkbest-feautre-s
2.https://stackoverflow.com/questions/25792012/feature-selection-using-scikit-learn/46608239#46608239
3.推荐:统计学——卡方检验和卡方分布
4.sklearn特征选择doc:https://scikit-learn.org/stable/modules/feature_selection.html

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

sklearn:卡方分布输入不能是负数 的相关文章

  • 再见以前说再见 大数据存储复习

    创建一个数据库 数据库在HDFS上的默认存储路径是 user hive warehouse db 创建数据库 create database if not exists school 过滤显示查询的数据库 show databases li
  • JetBrains开发者日见闻(一)之Kotlin/Native 尝鲜篇

    简述 今天我们来讲点Kotlin中比较时髦的东西 有的人可能会说 不像你之前的风格啊 之前的文章不是一直在死扣语法以及语法糖背后秘密 当你还在死扣泛型语法的时候 别人的文章早就说了Kotlin Native和Kotlin1 3的新特性 瞬间
  • Java 中Math类的使用

    博主前些天发现了一个巨牛的人工智能学习网站 通俗易懂 风趣幽默 忍不住也分享一下给大家 点击跳转到网站 前言 Math类概述 Math类包含执行基本数字运算的方法 下面通过代码来演示 Math类的常用方法 public class Math
  • spring事务,TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();

    在aop配置事务控制或注解式控制事务中 try catch 会使事务失效 可在catch中抛出运行时异常throw new RuntimeException e 或者手动回滚TransactionAspectSupport currentT
  • AD20/Altium designer——如何对PCB添加图片丝印、自定义LOGO、专属图案

    本篇介绍如何在PCB添加图案丝印并调节大小 主要步骤 图片转单色图 bmp格式 复制粘贴进word文档 再次复制到AD 1 选择图片用电脑自带的画图软件打开 2 将图片另存为 bmp格式 3 查看图片效果是否理想 图片是否需要取反色 选做
  • 第三方支付API支付宝支付申请流程 支付宝新老版本

    新版本 Maven 引入jar包
  • foreach遍历出来总是取第一个值或最后一个值?怎么取出想要的id对应值

    这个问题还是比较常见的 问题原因 没有合理的取到相对应的id或者没有使id成为唯一性 解决方法 举个例子 建个表单
  • 华为OD机试真题- 任务混部

    题目描述 公司创新实验室正在研究如何最小化资源成本 最大化资源利用率 请你设计算法帮他们解决一个任务混部问题 有taskNum项任务 每个任务有开始时间 startTime 结束时间 endTime 并行度 parallelism 三个属性
  • LeetCode 剑指 Offer II 079. 所有子集

    给定一个整数数组 nums 数组中的元素 互不相同 返回该数组所有可能的子集 幂集 解集 不能 包含重复的子集 你可以按 任意顺序 返回解集 示例 1 输入 nums 1 2 3 输出 1 2 1 2 3 1 3 2 3 1 2 3 1 l
  • libgdx导入blender模型

    具体就是参考 官网 https libgdx com wiki graphics 3d importing blender models in libgdx blender 教程可以看八个案例教程带你从0到1入门blender 已完结 这里
  • 小米盒子打开adb调试模式

    1 先打开开发者模式 进入小米电视设置 gt 进入关于 gt 找到产品型号 gt 在产品型号上面连续多次按ok 确认 键 gt 然后就会提示 您已处于开发者模式 2 开启adb 经过第一步开启开发者模式之后 现在可以返回到设置页面 进入 账
  • stl库

    sort 读入n条学生成绩记录 包括学生姓名 总成绩 语文 数学和英语成绩 要求按总成绩从高到低输出 条记录 每条记录占一行 总成绩相同时按语文成绩从高到低输出 语文成绩相同时按数学成绩从高到低输出 没有两个人的成绩完全一样 include

随机推荐