我如何才能得到一个表的每一行除以每一行的总和,而不是以一种比我所做的更容易的方式(没有循环):
tab<-data.frame(a=c(1,2,3,4), b=c(3,6,7,2))
tab$tot<-rowSums(tab)
ult<-ncol(tab)
for (i in 1:nrow(tab))
{for (j in 1:(ult-1))
{
tab[i, (ult+j)]<- tab[i,j]/tab[i,ult]
}}发布于 2014-12-31 02:41:44
/的矢量化非常简单:
tab/tab$tot当然,您可以删除最后一列。
tab[,-ncol(tab)]/tab$tot https://stackoverflow.com/questions/27710727
复制相似问题