2017-03-15 11 views
0

私は(n、n)個の配列を持っています。私はそれの各要素が対応する行の合計である列ベクトルを追加したいと思います。また、対応する列の合計である行列の最後に行ベクトルを追加します。しかし、これらの1Dアレイを追加することは、次元の立場からは互換性がありません。私はこれらを追加したいが、ポイント(-1、-1)が最後の行または列のいずれかの合計である(それらが等しいので)行列を持つ。行と列の合計を行列に追加する

例;

x = np.random.randint(5, size=(4, 4)) 
columns = np.sum(x,axis=1) 
rows = np.sum(np.transpose(x),axis=1) 
+0

'(n、n + 1)次元の配列を作成するために、行の合計を最初に列として追加し、_then_列の合計を行として追加してみてください。 – Praveen

答えて

1

あなたはそのようにそれを行うことができます。 まず者は、次のコマンドを実行しa

n=5 
k=4 
a=np.zeros([n,k]) 
for i in range(n): 
    for j in range(k): 
     a[i][j]=i+2*j 

いくつかの行列を生成してみましょう。 これは、行を追加します。

a=np.append(a,[np.sum(a,axis=0)],axis=0) 

これは

col=np.array([np.sum(a,axis=1)]) 

最後に、我々は、これはの世話をすることを柱

a=np.concatenate((a,col.T),axis=1) 
print(a) 

注意(-1、-1)を追加列を算出し、エントリも同様です。

関連する問題