我想制作包含分数的矩阵,比如1/4,作为元素。
我做了以下矩阵:
import numpy as np
alpha = 10
B = np.array([ [0, -0.25, -1/20, alpha/40], [1/(alpha+3), 0, -1/(alpha+3), -(alpha-1)/(alpha+3) ], [ 1/(2*alpha+2), 1/(alpha+1), 0, 1/(10*alpha+10) ], [ -1/2, -9/20, 0, 0 ] ])
print(B)
然而,输出是这样的:
[[ 0. -0.25 -1. 0. ]
[ 0. 0. -1. -1. ]
[ 0. 0. 0. 0. ]
[-1. -1. 0. 0. ]]
我的问题是:为了计算和功能,如何将分数保留在矩阵内? 如果它不是变量alpha,我会将值转换为小数。
修改的
标记的dublicate线程似乎没有解决这个问题:
这里矩阵中的元素是从头开始手动分配的。而在链接的线程中,元素以等式的形式分配给矩阵。我觉得这让事情变得混乱。
答案 0 :(得分:0)
显然有些事情做错了。然而,
B = np.array([ [0, -1/4, -1/20, alpha/40], [1/(alpha+3), 0, -1/(alpha+3), -(alpha-1)/(alpha+3) ], [ 1/(2*alpha+2), 1/(alpha+1), 0, 1/(10*alpha+10) ], [ -1/2, -9/20, 0, 0 ] ])
print(B)
现在提供有效输出。