zoukankan      html  css  js  c++  java
  • 解决: DeprecationWarning: Passing 1d arrays as data is deprecated in 0.17 and will raise ValueError in 0.19

    错误信息:
    C:\Python27\lib\site-packages\sklearn\utils\validation.py:395: DeprecationWarning: Passing 1d arrays as data is deprecated in 0.17 and will raise ValueError in 0.19. Reshape your data either using X.reshape(-1, 1) if your data has a single feature or X.reshape(1, -1) if it contains a single sample.
      DeprecationWarning)

    这个warning纠结了一下午,一开始我以为是在GaussianNB().fit()里头出错 -_-b
    最后debug了一下发现原来是predict()的问题, predict的参数要求是数组, 而我传进去的是list.转换一下就OK了(红色部分)

    clf = GaussianNB().fit(trainMat2d, Y)
    s1 = u"关于 xzmxzm2323 和 他 马甲 XBOX360 高 教授 版主 还有 大家 都 进来 看下 兄弟 不要 和 神经病 较真 我 觉得 他 精神 真的 有点 不 正常"
    s2 = u"求 2016 ps4 中 超 队徽 申花 及 天津 权健 队服 及 队徽"
    s3 = u"PES 2016 Super Patch 0.2 好 快 都 出 0.2 了"
    ary1 = s1.split(' ')
    ary2 = s2.split(' ')
    ary3 = s3.split(' ')

    d = pb.setOfWords2Vec(C, ary1)
    print type(d)
    print d

    thisDoc1 = array(d).reshape((1,-1))
    print type(thisDoc1)
    print thisDoc1

    print 'S1 classifed as %d' %(clf.predict(thisDoc1))'

    运行结果:
    Building trainning matrix completed
    <type 'list'>
    [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, ..., 0, 0]
    <type 'numpy.ndarray'>
    [[0 0 0 ..., 0 0 0]]
    S1 classifed as 1

  • 相关阅读:
    git commit 合并
    git 管理 Linux 文件系统
    python 全局变量的使用
    JavaScript 中 类型转换
    canconfig 配置命令
    python 调用 shell 命令
    python 3 操作mysql数据库的方法
    python 字符串和整数,浮点型互相转换
    JavaScript 里面的整数 位 操作
    JavaScript 使用 php 的变量
  • 原文地址:https://www.cnblogs.com/okokok/p/6004871.html
Copyright © 2011-2022 走看看