首页 > 解决方案 > “AttributeError:‘numpy.ndarray’对象没有属性‘值’

问题描述

这是我的代码片段:

#code sample
for i in range(1, number_of_segments + 1):
    I1 = (dcm_pixel_array["array" + str(3 + (i - 1))]) * 2
    I8 = (dcm_pixel_array["array" + str(3 + (7*int((number_of_segments+2)/8)) + (i-1) + 2)]) * 2
    for j in range(I1.ndim):
        for k in range(I1.ndim):
            if (3.03 - (17.85 + 14.87)) / (math.log((I8[j].values[k]) / (I1[j].values[k]))) < 0:
                T2_map = np.zeros(shape = (j, k, i))
            elif (3.03-(17.85+14.87))/(math.log((I8[j].values[k]) / (I1[j].values[k]))) > 100:
                T2_map = np.full((i,j,k), 100)
# end of sample

我在第一个 if 语句中遇到了错误。它说:“AttributeError:'numpy.ndarray'对象没有属性'值'”。关于我应该做些什么来纠正错误的任何建议?

说明:“dcm_pixel_array”是从 dicom 文件中读取的数组(二进制掩码)字典。段数为 286。我正在尝试访问 I8 和 I1 数组的第 k 列的第 j 行中的信息。

谢谢!

标签: pythonnumpymatrixnumpy-ndarraymedical-imaging

解决方案


由于给定的数据集已经是一个数组,因此值将不起作用。使用调用数组I8[j][k]


推荐阅读