如何在PyCharm的SciView中调整NumPy数组乘积的显示视图
调整NumPy数组行/列乘积的显示形状
你当前计算行、列乘积的逻辑是对的,但行乘积结果是一维数组(形状为(3,)),所以默认显示为单行多列。要让它变成单列多行的形式,只需要把一维数组重塑为二维列向量(形状为(3,1))即可,以下是几种简单实现方式:
方法1:用reshape(-1, 1)自动适配行数
import numpy as np array2 = np.array([[2,3,5,1], [5,1,2,8], [5,1,6,-1]]) # 列乘积保持原样(形状(4,),单行多列) multiply_columns_array2 = array2.prod(axis=0) # 行乘积转为单列多行(-1表示自动计算行数) multiply_rows_array2 = array2.prod(axis=1).reshape(-1, 1) print("列乘积(单行多列):") print(multiply_columns_array2) print("\n行乘积(单列多行):") print(multiply_rows_array2)
方法2:用np.newaxis新增维度
# 直接通过索引给一维数组增加一个列维度 multiply_rows_array2 = array2.prod(axis=1)[:, np.newaxis]
方法3:显式指定形状参数
# 已知原数组有3行,直接指定为(3,1)的二维形状 multiply_rows_array2 = array2.prod(axis=1).reshape(3, 1)
调整后输出效果示例:
列乘积(单行多列):
[50 3 60 -8]行乘积(单列多行):
[[ 30]
[ 80]
[-30]]
内容的提问来源于stack exchange,提问作者blacky
相关产品推荐
相关产品推荐

