"AttributeError: 'numpy.ndarray' object has no attribute 'values'
"AttributeError: 'numpy.ndarray' object has no attribute 'values'
这是我的代码片段:
#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' 对象没有属性 'values'”。关于我应该如何纠正错误有什么建议吗?
澄清:“dcm_pixel_array”是从 dicom 文件中读取的数组(二进制掩码)字典。段数为286,我正在尝试访问I8和I1数组第k列第j行的信息。
谢谢!
由于给定的数据集已经是一个数组,因此值将不起作用。
使用 I8[j][k]
调用数组
这是我的代码片段:
#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' 对象没有属性 'values'”。关于我应该如何纠正错误有什么建议吗?
澄清:“dcm_pixel_array”是从 dicom 文件中读取的数组(二进制掩码)字典。段数为286,我正在尝试访问I8和I1数组第k列第j行的信息。
谢谢!
由于给定的数据集已经是一个数组,因此值将不起作用。
使用 I8[j][k]