각 열에 최대 하나가되도록 행렬의 값을 조정하려고합니다. 나는 시도했다 :열을 colSum 단위로 나누기 R
m = matrix(c(1:9),nrow=3, ncol=3, byrow=T)
[,1] [,2] [,3]
[1,] 1 2 3
[2,] 4 5 6
[3,] 7 8 9
colSums(m)
12 15 18
m = m/colSums(m)
[,1] [,2] [,3]
[1,] 0.08333333 0.1666667 0.25
[2,] 0.26666667 0.3333333 0.40
[3,] 0.38888889 0.4444444 0.50
colSums(m)
[1] 0.7388889 0.9444444 1.1500000
명백하게 이것은 작동하지 않는다. 나는 다음이 시도 :
m = m/matrix(rep(colSums(m),3), nrow=3, ncol=3, byrow=T)
[,1] [,2] [,3]
[1,] 0.08333333 0.1333333 0.1666667
[2,] 0.33333333 0.3333333 0.3333333
[3,] 0.58333333 0.5333333 0.5000000
m = colSums(m)
[1] 1 1 1
그래서이 작품을,하지만 난 여기에 뭔가 빠진 것 같은이 느낌. 이것은 일상적으로 수행되는 방법이 될 수 없습니다. 나는 여기서 바보가된다고 확신한다. 당신이 줄 수 어떤 도움 건배,
브릴리언트. 고맙습니다! 부끄러워 내가 prop.table()에 대해 완전히 잊었다. –