Нужна помощь в написании ответа в R - PullRequest
0 голосов
/ 17 октября 2018

Reverse Rank Question in R

Я не знаю, как вектор X или Y соотносится друг с другом в этом вопросе.Тот факт, что ответ является единственным вектором, является тем, что смущает меня больше всего.

Я пытался сделать отрицательный ранг (т.е. ранг (-ы)), а затем попытался

rev (rank (X)) и rev (rank (Y)), и я получаю неверные ранги.Вот мой код:

x <- c(-1, 0, 1, 2, -3) #vector x
y <- c(1, 3, 2, 5, 8) # Vector y 
S <- x[order(match(x,y))] #orders and matches x with y 
R <- rank(-S) #ranks S in element number order 
print(R) #I want R = (5 2 1 3 4)

Вместо этого я получаю [2 1 4 3 5]

с этим другим кодом:

never <- rev(rank(-x)) #takes the reverse rank of x 
bird <- rev(rank(y)) #takes the reverse rank of y
kid <- x[order(match(never, bird))] #orders the match of the reverse ranks
tr <- rank(kid) #ranks the match of the reverse ranks 
print(tr) 

Я получаю [2 1 3 4 5].

Ответы [ 2 ]

0 голосов
/ 18 октября 2018

Я понял это.

x <- c(-1,0,1,2,-3)
y <- c(1,3,2,5,8)

myrank <- function(x,y)
{
  R=c()
     {
       for(i in 1:length(x))
          {
             b=length(y)+1-rank(y)
             a=length(y)+1-rank(x[b]) # here x[b] is to order the x values according to b
             R=c(a)
          }
     }
  print(R)
}
myrank(x,y)
0 голосов
/ 17 октября 2018

Как я понимаю вопрос (который не ясен, я согласен), кажется, что есть ошибка, но $ x $ и $ y $ связаны индексом $ s_i $ .

После вопроса: Найдем индекс $ s_1 $ благодаря $ y $ .Мы знаем, что $ y_ {s_1} $ является наибольшим значением $ y $ , поэтому в этом случае $ y_5 $ .Таким образом, $ s_1 = 5 $ , поэтому нам нужно найти обратный ранг $ x_5 = -3 $ .Поскольку это наименьшее значение, у нас есть $ r_1 = 5 $ .

Теперь при таком подходе у нас будет $ s_2 = 4 $ , поэтому я предполагаю, что есть ошибкав примере или вопросе.

В этом примере у меня $ R = (5, 1, 3, 2, 4) $ .

Вы можете заметить, чтоесли вы сортируете $ y $ , затем применяете правило сортировки к $ x $ , чтобы создать $ x '$ , вектор $ R $ является правилом сортировки $ x' $ .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...