0
假設我有整數值的矩陣。我想使它成爲隨機矩陣(即矩陣中每行的總和等於1)整數矩陣到隨機矩陣歸一化
我創建了隨機矩陣,計算每行的總和並將行中的每個元素劃分爲行總和。
dt = pd.DataFrame(np.random.randint(0,10000,size=10000).reshape(100,100))
dt['sum_row'] = dt.sum(axis=1)
for col_n in dt.columns[:-1]:
dt[col_n] = dt[col_n]/dt['sum_row']
之後,每一行的總和應該等於1.但事實並非如此。
(dt.sum_row_normalized == 1).value_counts()
> False 75
> True 25
> Name: sum_row_normalized, dtype: int64
據我所知,有些值並不完全是1,但非常接近它。不過,我怎樣才能正確地標準化矩陣?
注意'3/2 == 1'在Python 2.嘗試轉換的兩個數字中的一個分工'float'first:'dt [col_n]/float(dt ['sum_row'])'。 –