【发布时间】:2017-01-12 09:25:21
【问题描述】:
假设我有以下数据:
a <- data.frame(var1=letters,var2=runif(26))
假设我想缩放var2 中的每个值,使得var2 列的总和等于1(基本上将var2 列变成概率分布)
我尝试了以下方法:
a$var2 <- lapply(a$var2,function(x) (x-min(a$var2))/(max(a$var2)-min(a$var2)))
这不仅给出了大于 1 的总和,而且还将 var2 列变成了一个列表,我无法在该列表上执行像 sum 这样的操作
是否有任何有效的方法可以将此列转换为概率分布?
【问题讨论】:
标签: r dataframe probability distribution rescale