【发布时间】:2016-10-17 02:40:57
【问题描述】:
我正在尝试使用此程序获取 211 个数组的列表 (phi0ex),每个数组包含 251*251 个元素 我得到的只是 251 个元素的数组列表,请帮助
data=loadtxt('data.csv',delimiter=',')
data1=data.transpose()
ngrains=loadtxt('nombre_grain.csv',delimiter=',')
phi0ex1=211*[zeros(shape(251*251))]
gr1=zeros(shape=(251,251))
for k in range(0,len(ngrains)):
for i,j in enumerate(data1):
for s in range(0,251):
gr1[i]=where(s==ngrains[k],1,0)
phi0ex1[k]=gr1
print phi0ex1
#
【问题讨论】:
-
第一个循环体需要缩进。
-
这个问题不清楚,能不能把你想要的东西说清楚一点?
-
我有一个列表,其中包含我通过“ngrains”文件加载的 210 个不同值。然后另一个文件“数据”包含 250 * 250 个元素,我想查看“数据”的每个元素,看看它是否等于“ngrains”的第一个元素,如果不是,则将其替换为一个,而不是零。然后我得到的 250*250 的数组包含两个零或我想把它放在另一个数组列表(phi0ex)中的数组。等等“ngrains”中的所有值,我希望我能解释清楚,谢谢
-
我找到了解决方案,谢谢你们表现出兴趣,完全是函数 where() 自己进行迭代(我不知道)没有必要把它放在另一个循环中,只有“ngrains 的循环才能解决问题”。