Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/67.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
R 基于相对排名创建新列_R_Rank - Fatal编程技术网

R 基于相对排名创建新列

R 基于相对排名创建新列,r,rank,R,Rank,我想根据每个主题的奖励列的相对排名创建一个新列,但是如果赌博以不同的奖励重复,那么排名将跟随最高排名 这是我的数据,新列应该是这样的 subj gamble reward newcolumn 1 1 1 1.5 3.0 2 1 2 2.0 1.0 3 1 1 0.0 3.0 4 1 3 1.0 4.5 5 1 1

我想根据每个主题的奖励列的相对排名创建一个新列,但是如果赌博以不同的奖励重复,那么排名将跟随最高排名

这是我的数据,新列应该是这样的

     subj gamble reward newcolumn
 1     1      1    1.5       3.0
 2     1      2    2.0       1.0
 3     1      1    0.0       3.0
 4     1      3    1.0       4.5
 5     1      1    0.0       3.0
 6     1      4    1.0       4.5
 7     2      2    5.0       1.0
 8     2      1    0.5       2.5
 9     2      4    0.0       4.0
 10    2      1    0.0       1.5
到目前为止,我得到了这个密码

 newdata<-transform(newdata, 
      reward.rank = ave(reward, subj, 
                      FUN = function(x) rank(-x, )))
newdata
subj<-c(1,1,1,1,1,1,2,2,2,2)
gamble<-c(1,2,1,3,1,4,2,1,4,1)
reward<-c(1.5,2,0,1,0,1,5,0.5,0,0)
new<-data.frame(subj, gamble, reward)