Domyślam się, że to jest łatwe przy użyciu ddply, ale jestem wciąż początkującym w R i nie mogę się z tym pogodzić.Jak obliczyć procent dla każdej komórki w ramce danych za pomocą ddply?
mam data.frame patrząc jak ten
txt <- "label var1 var2 var3 var4 var5 var6 var7
lab1 401 80 57 125 118 182 83
lab2 72 192 80 224 182 187 178
lab3 7 152 134 104 105 80 130
lab4 3 58 210 30 78 33 87
lab5 1 2 3 1 1 2 6"
mydata <- read.table(textConnection(txt), sep = " ", header = TRUE)
ten sposób można przekształcić jedną zmienną w czasie, w procentach
mydata$var1 <- round(prop.table(mydata$var1),3)*100
Ale jak to zrobić ze wszystkimi zmiennymi (var1: var7) w data.frame za jednym pociągnięciem?
UWAGA: Przechodzi do funkcji, w której długość i liczba zmiennych różni się od czasu do czasu, a zatem kod powinien być na to wrażliwy.
góry dziękuję
Dziękuję bardzo. działa idealnie – Einnor
@Einnor jeśli to odpowiedział na twoje pytanie powinieneś * rozważyć * (przeczytaj - nie zobowiązany) akceptując go, aby pokazać, że to pytanie zostało wysłuchane. Zauważyłem, że nie zaakceptowałeś jeszcze żadnych odpowiedzi na swoje 6 pytań. Możesz przeczytać [** about **] (http://stackoverflow.com/about), aby zobaczyć, jak działa SO, aby pomóc Ci w pełni wykorzystać możliwości witryny. –
@ Simon0101 Nie wiedziałem, że powinienem przyjąć odpowiedzi. Ale zrobi :) – Einnor