Ho un frame di dati R che assomiglia:Come si ordina un frame di dati R in base all'id di richiesta e all'ID di richiesta precedente?
User |request_id |previous_request_id ------------------------------------- A |9 |5 A |3 |1 A |5 |NA A |1 |9 B |2 |8 B |8 |7 B |7 |NA B |4 |2
Ogni riga corrisponde ad una richiesta di un particolare utente made. Ogni riga ha un ID utente, un ID richiesta e l'ID della richiesta precedente. Dove non ci sono richieste precedenti il campo previous_request_id è NA.
Per ogni utente voglio ordinare ogni richiesta utilizzando la richiesta precedente id, con:
- L'ordine che è 1 se il previous_request_id è NA
- L'ordine che è 2 se il previous_request_id è uguale a un request_id con un ordine di 1
- l'ordine che è 3 se il previous_request_id è uguale a un request_id con un ordine di 2
- ecc
Il risultato delle regole di cui sopra applicata alla prima tabella dovrebbe essere simile:
User |request_id |previous_request_id |Order --------------------------------------------- A |9 |5 |2 A |3 |1 |4 A |5 |NA |1 A |1 |9 |3 B |2 |8 |3 B |8 |7 |2 B |7 |NA |1 B |4 |2 |4
C'è un modo per fare questo all'interno di R? Credo che un pacchetto di database grafico potrebbe essere il modo per farlo, ma finora non sono stato in grado di trovare nulla nella mia ricerca (incentrata sulla lingua Cypher di Neo4j).
Qualsiasi aiuto qui sarebbe molto apprezzato!
è il tuo dati in Neo4j ? –
Non è - è nel formato del frame di dati. – shancrane