Sütunların her bir öğeyi ne kadar satın alabileceklerini belirten müşterilere karşılık gelen sütun ve öğelere karşılık geldiği bazı anket verileri var. Bu gibi görünüyor:Veri çerçevesinin sütunları arasında frekans sayımları elde etmenin daha verimli bir yolu
item1 = c("Likely", "Unlikely", "Very Likely","Likely")
item2 = c("Likely", "Unlikely", "Very Likely","Unlikely")
item3 = c("Very Likely", "Unlikely", "Very Likely","Likely")
df = data.frame(item1, item2, item3)
ben her öğe için her tepki yüzdesini veren bir özet tablo istiyorum. Şu anda bu işlem için her sütunda tablo() kullanıyorum ve işlemek için çok fazla kod var. Bunu plyr kullanarak nasıl uygulayabilirim veya daha hızlı mı uygulayabilirim?
Güncel çözüm: Gerçekten frekans sayılarını, sadece yüzde gerekmez
d1<-as.data.frame(table(df$item1))
d1$item1_percent<- d1$Freq/sum(d1$Freq)
names(d1)<-c("Response","item1_freqs","item1_percent")
d2<-as.data.frame(table(df$item2))
d2$item2_percent<- d2$Freq/sum(d2$Freq)
names(d2)<-c("Response","item2_freqs","item2_percent")
d3<-as.data.frame(table(df$item3))
d3$item3_percent<- d3$Freq/sum(d3$Freq)
names(d3)<-c("Response","item3_freqs","item3_percent")
results<-cbind(d1,d2[,2:3],d3[,2:3])
Not.
Şimdiden teşekkürler!
'lapply (df, function (x) prop.table (tablo (x))) – user20650