ValueError: too many values to unpack (expected 4)错误,小波变换函数 wavedec2 使用时提示的「建议收藏」

ValueError: too many values to unpack (expected 4)错误,小波变换函数 wavedec2 使用时提示的「建议收藏」    错误信息还算简单,解包成太多的值,意思就是说你要赋值的变量多了,你的values少了结论    你要赋值的变量多了,你的values少了,这是根本原因,就比如a,b,c,d=20,5,5,就会报错我的出错代码importpywtimportxlrdimportnumpyasnpdefexcel2matrix(path):#把x

大家好,又见面了,我是你们的朋友全栈君。

        错误信息还算简单,解包成太多的值,意思就是说你要赋值的变量多了,你的 values 少了

结论

        你要赋值的变量多了,你的 values 少了,这是根本原因,就比如 a, b, c, d = 20, 5, 5 就会报错

我的出错代码

import pywt
import xlrd
import numpy as np

def excel2matrix(path):    # 把xlsx文件的数据变成np.array数组
    data = xlrd.open_workbook(path)
    table = data.sheets()[0]
    nrows = table.nrows  # 行数
    ncols = table.ncols  # 列数
    datamatrix = np.zeros((nrows, ncols))
    for i in range(nrows):
        rows = table.row_values(i)
        datamatrix[i,:] = rows
    return datamatrix

pathX = '11.xlsx'  # 数据路径
x = excel2matrix(pathX)  
a = np.mean(x)
print(a)

w = 'sym4'  # 小波基类型
l = 3       # 小波变换层次
coeffs = pywt.wavedec2(x,w,l)
[cl, (cH3, cV3, cD3), (cH2, cV2, cD2), (cH1, cV1, cD1)] = coeffs

        这个代码报错

ValueError: too many values to unpack (expected 4)

       

原因

        调用 pywt.wavedec2 时参数错误,其大概形式如下

pywt.wavedec2(data, wavelet, mode=’symmetric’, level=None, axes=(-2, -1))
    data:    输入的数据
    wavelet: 小波基
    level:   尺度(要变换多少层)
    return: 返回的值要注意,每一层的高频都是包含在一个tuple中,例如三层的话返回为 [cl, (cH3, cV3, cD3), (cH2, cV2, cD2)(cH1, cV1, cD1)]

        为什么会错呢,因为我直接使用了参数位置匹配,但是中间有一个 mode=’symmetric’ 我没有指定,自然错了所以换成 coeffs = pywt.wavedec2(data=x, wavelet=w, level=l) 按名称绑定参数,就没错了

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/163782.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 学习笔记-正则表达式[通俗易懂]

    学习笔记-正则表达式[通俗易懂]学习笔记-正则表达式

    2022年4月20日
    46
  • 微软edge浏览器无法访问此页面_0x80070035无法访问

    微软edge浏览器无法访问此页面_0x80070035无法访问转载于:https://www.cnblogs.com/real9527/p/6705752.html

    2025年11月23日
    3
  • yuicompressor java_YUI Compressor使用配置方法 JS/CSS压缩工具

    yuicompressor java_YUI Compressor使用配置方法 JS/CSS压缩工具YUICompressor是一个用来压缩JS和CSS文件的工具,采用Java开发。YUICompressor下载地址:https://www.jb51.net/softs/25860.html使用方法://压缩JSjava-jaryuicompressor-2.4.2.jar–typejs–charsetutf-8-vsrc.js>packed.js//…

    2022年7月18日
    19
  • JAVA对象、数组转JSON[通俗易懂]

    JAVA对象、数组转JSON[通俗易懂]1.需要库:commons-beanutils-1.7.0.jarcommons-collections-3.1.jarcommons-lang-2.1.jarcommons-logging-1.1.3.jarezmorph-1.0.2.jarjson-lib-2.4-jdk15.jar2.转换方法:  //对象转json sqlModelmodel…

    2022年6月21日
    57
  • 学计算机男生喜欢的礼物,十大00后男生喜欢的礼物大集合

    学计算机男生喜欢的礼物,十大00后男生喜欢的礼物大集合每个时代都有它流行的东西,自然不同时代的人喜欢的东西也不一样。00后的男生作为二十一世纪的第一批年轻男士,自然也有他们喜欢的东西。在这主要为大家盘点一些00后男生喜欢的礼物,每一件都充满创意和新奇的元素,送给00后男生不会拒绝。NO.1男士钛钢军牌00后男生并不是娇弱的妈宝男,他们也有血性方刚的一面,自然他们也想表现出霸气的一面。这款男士钛钢刻字军牌,美国大兵同款军牌项链,可以定制文字和照片,0…

    2022年7月25日
    26
  • 修改asmx样式

    修改asmx样式今天看到一张图,asmx的WebService。长这样:当时就感觉有意思,这个页面风格和我们平时的不一样,我们平时的WebService长这样:我们如果在WebMetohd上面加注释,即[WebMethod(Description=”注释”)],那么长这样:那么问题就来了,第一张图里面的样式是如何实现的呢?在浏览器上进入调试模式观察,可以发现它的html和我们的有点不…

    2022年4月29日
    40

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号