/ / R [डुप्लिकेट] में पंक्ति के प्रतिशत में परिवर्तन मूल्य - आर, प्रतिशत

R [डुप्लीकेट] - r, प्रतिशत में पंक्ति के प्रतिशत में मूल्य बदलें

यह मेरा डेटा है

  A B C
A 9 1 0
B 2 2 2
C 3 3 3

मैं प्रत्येक पंक्ति का प्रतिशत प्राप्त करना चाहता हूं

मेरा अपेक्षित डेटा है

     A    B    C
A  0.9  0.1    0
B 0.33 0.33 0.33
C 0.33 0.33 0.33

मैंने अपना डेटा "dcast" के साथ बनाया और A, B और C पर कॉलम नाम है। तो वास्तव में मेरा असली डेटा है

  Name    A    B    C
1    A  0.9  0.1    0
2    B 0.33 0.33 0.33
3    C 0.33 0.33 0.33

उत्तर:

उत्तर № 1 के लिए 12

के लिए एक उचित मामला लगता है

df/rowSums(df)
#           A         B         C
# A 0.9000000 0.1000000 0.0000000
# B 0.3333333 0.3333333 0.3333333
# C 0.3333333 0.3333333 0.3333333

यदि आप डॉट सेट के बाद इतने सारे अंक नहीं चाहते हैं options(digits = 2) या उपयोग करें print(df/rowSums(df), digits = 2) या उपयोग करें round

round(df/rowSums(df), 2)
#      A    B    C
# A 0.90 0.10 0.00
# B 0.33 0.33 0.33
# C 0.33 0.33 0.33

या जैसा कि @akrun द्वारा सुझाया गया है

round(prop.table(as.matrix(df1),1),2)