如何提取3D NumPy数组的第一维度值?解决索引异常问题
获取NumPy数组第一维度大小的正确方法
你要对比两个数组第一维度的行数,不需要用索引提取元素,直接用NumPy数组的.shape属性就能拿到各维度的大小:
- 获取
true_values第一维度的大小:true_values.shape[0],结果就是464 - 获取
pred_values第一维度的大小:pred_values.shape[0],结果也是464
你之前用的trues_values[0,:,-1]是在提取数组中的元素:它取的是第一维度索引为0的元素、第二维度所有元素、第三维度最后一个元素,所以只会返回单个值,这和你要获取维度大小的需求不匹配。
如果要验证两个数组第一维度行数是否一致,直接对比这两个shape值即可:
if true_values.shape[0] == pred_values.shape[0]: print("第一维度行数一致") else: print(f"行数不一致,true是{true_values.shape[0]},pred是{pred_values.shape[0]}")
内容的提问来源于stack exchange,提问作者Mouna Ahmen
相关产品推荐
相关产品推荐

