df = pd.DataFrame({'From':['a','b','c','a','d'], 'To':['b', 'c', 'a', 'd', 'e'], 'Rates':[1e-4, 2.3e-2, 1e-2, 100, 70]})
df2 = df.pivot(index="From", columns="To", values="Rates")
full_index = df2.index.union(df2.columns)
df2 = df2.reindex(labels=full_index, axis=0).reindex(labels=full_index, axis=1).fillna(0.0)
df2
Out[21]:
a b c d e
a 0.00 0.0001 0.000 100.0 0.0
b 0.00 0.0000 0.023 0.0 0.0
c 0.01 0.0000 0.000 0.0 0.0
d 0.00 0.0000 0.000 0.0 70.0
e 0.00 0.0000 0.000 0.0 0.0
Мне нужно преобразовать df2
в матрицу для умножения матриц.
df2.as_matrix()
__main__:1: FutureWarning: Method .as_matrix will be removed in a future version. Use .values instead.
Out[22]:
array([[0.0e+00, 1.0e-04, 0.0e+00, 1.0e+02, 0.0e+00],
[0.0e+00, 0.0e+00, 2.3e-02, 0.0e+00, 0.0e+00],
[1.0e-02, 0.0e+00, 0.0e+00, 0.0e+00, 0.0e+00],
[0.0e+00, 0.0e+00, 0.0e+00, 0.0e+00, 7.0e+01],
[0.0e+00, 0.0e+00, 0.0e+00, 0.0e+00, 0.0e+00]])
Есть ли другой способ преобразовать тревожный кадр данных в матрицу, которая также будет работать в будущем? df2.to_numpy()
то же самое?