Мне нужно разделить матрицу (мат) на вектор (rowSums)
Моя матрица представляет собой фрейм данных:
mat = pd.DataFrame(
data=[
(1,0,0,0),
(1,1,1,0),
(0,0,1,0),
(0,1,0,0),
(1,0,1,0)],
columns=['ind_1','ind_2','ind_3','ind_4'],
index=['ct1','ct2','ct3','ct4','ct5'])
и вектор:
rowSums = mat.sum(axis=1)
rowSums is:
ct1 1
ct2 3
ct3 1
ct4 1
ct5 2
dtype: int64
Мне нужно разделить mat / rowSums, но я не могу найти способ.
Я пытаюсь повторить эту команду из R:
b = (mat / rowSums(mat))
И мне нужно получить следующий результат:
ind_1 ind_2 ind_3 ind_4
[ct1,] 1.0000000 0.0000000 0.0000000 0
[ct2,] 0.3333333 0.3333333 0.3333333 0
[ct3,] 0.0000000 0.0000000 1.0000000 0
[ct4,] 0.0000000 1.0000000 0.0000000 0
[ct5,] 0.5000000 0.0000000 0.5000000 0