相关疑难解决方法(0)

ValueError:使用序列设置数组元素

这个Python代码:

import numpy as p

def firstfunction():
    UnFilteredDuringExSummaryOfMeansArray = []
    MeanOutputHeader=['TestID','ConditionName','FilterType','RRMean','HRMean',
                      'dZdtMaxVoltageMean','BZMean','ZXMean','LVETMean','Z0Mean',
                      'StrokeVolumeMean','CardiacOutputMean','VelocityIndexMean']
    dataMatrix = BeatByBeatMatrixOfMatrices[column]
    roughTrimmedMatrix = p.array(dataMatrix[1:,1:17])


    trimmedMatrix = p.array(roughTrimmedMatrix,dtype=p.float64)  #ERROR THROWN HERE


    myMeans = p.mean(trimmedMatrix,axis=0,dtype=p.float64)
    conditionMeansArray = [TestID,testCondition,'UnfilteredBefore',myMeans[3], myMeans[4], 
                           myMeans[6], myMeans[9], myMeans[10], myMeans[11], myMeans[12],
                           myMeans[13], myMeans[14], myMeans[15]]
    UnFilteredDuringExSummaryOfMeansArray.append(conditionMeansArray)
    secondfunction(UnFilteredDuringExSummaryOfMeansArray)
    return

def secondfunction(UnFilteredDuringExSummaryOfMeansArray):
    RRDuringArray = p.array(UnFilteredDuringExSummaryOfMeansArray,dtype=p.float64)[1:,3]
    return

firstfunction()
Run Code Online (Sandbox Code Playgroud)

抛出此错误消息:

File "mypath\mypythonscript.py", line 3484, in secondfunction
RRDuringArray = p.array(UnFilteredDuringExSummaryOfMeansArray,dtype=p.float64)[1:,3]
ValueError: setting an array element with a sequence.
Run Code Online (Sandbox Code Playgroud)

任何人都可以告诉我如何解决上面破坏的代码中的问题,以便它停止抛出错误消息?


编辑: 我做了一个打印命令来获取矩阵的内容,这是打印出来的:

UnFilteredDuringExSummaryOfMeansArray是:

[['TestID', 'ConditionName', 'FilterType', 'RRMean', 'HRMean', 'dZdtMaxVoltageMean', 'BZMean', 'ZXMean', …
Run Code Online (Sandbox Code Playgroud)

python arrays numpy slice

167
推荐指数
5
解决办法
73万
查看次数

将float从两列文本文件读取到Python中的数组时出错

我有一个文本文件,其中包含由选项卡分隔的2列,包含一些我想要读入数组的数据,并执行一些简单的操作,例如绘制数据.第二列中的数据是科学记数法,并且可以采用极小的值,例如从数量级10e-27 10e-50变化.例如,这是一个数据样本

0.00521135   -1.197189e-31
0.00529274   -7.0272737e-32
0.00530917   -6.0163467e-32
0.00532565   -4.9990405e-32
0.00534218   -3.9747722e-32
0.00535876   -2.9457271e-32
0.0053754    -1.9094542e-32
0.00539208   -8.6847519e-33
0.00540882    1.7851373e-33
0.00542561    1.2288483e-32
0.00544245    2.2850705e-32
0.00545934    3.3432858e-32
0.00547629    4.4084594e-32
0.00549329    5.4765499e-32
0.00551034    6.5491709e-32
Run Code Online (Sandbox Code Playgroud)

这是我的代码的样子:

import numpy as np
import matplotlib.pyplot as plt
with open('data.dat', 'r') as f2:
lines = f2.readlines()
data = [line.split()for line in lines] 
data2 = np.asfarray(data)
x1 = data2[:,0]
y1 = data2[:,1]
plt.plot(x1, y1)
plt.show()
Run Code Online (Sandbox Code Playgroud)

我已经使用此代码测试样本数据(.dat格式)文件,它似乎工作正常,但是当我在我的数据集上运行此代码时,它给我以下错误.

Traceback (most recent call last):
File "read_txt_col.py", line 17, in <module>
data2 …
Run Code Online (Sandbox Code Playgroud)

python numpy matplotlib

6
推荐指数
1
解决办法
3400
查看次数

标签 统计

numpy ×2

python ×2

arrays ×1

matplotlib ×1

slice ×1