我想请你帮忙解决我的数据框问题。它是一个有许多阶段的向量,每个阶段我们都有变量名称。可以说根据值的出现频率分配权重
vec<-data.frame(phase1= c("var1","var2","var3","var4","var5","var6"),
phase2= c("var1","var3","var4","var2","var6","var5"),
phase3= c("var4","var3","var2","var1","var6","var5"))
vec
phase1 phase2 phase3
1 var1 var1 var4
2 var2 var3 var3
3 var3 var4 var2
4 var4 var2 var1
5 var5 var6 var6
6 var6 var5 var5
现在,可以说我们对前3行感兴趣,因此其中一个变量的权重为1/3,否则为零。我的功能将理想地输出某物那样:
phase1 phase2 phase3
var1 0.33 0.33 0
var2 0.33 0 0.33
var3 0.33 0.33 0.33
var4 0 0.33 0.33
var5 0 0 0
var6 0 0 0
该函数应该也是第4,5或所有6行(即权重会改变然后)是适用的。 问候, 亚历