Domanda

@Aniko sottolinea che un modo per visualizzare il mio problema è che devo trovare i componenti collegati di un grafico, in cui i vertici sono chiamati gruppi e variabili group e nominated_group Indicare un bordi tra questi due gruppi. Il mio obiettivo è creare una variabile parent_Group che indicizza i componenti collegati. O come ho messo prima:

Ho un frame dati con quattro variabili: ID, group, e nominated_ID, e nominated_Group.

Considera i gruppi gemelli: i gruppi A e B sono gruppi gemelli se c'è almeno un caso nei dati in cui Group == A e Nominated_Group == B o viceversa.

Vorrei creare una variabile parent_group che assume un valore unico per ogni serie di gruppi gemelli. In altre parole, non dovrebbero verificarsi nomination tra i casi in diversi parent_groupS. Fare il parent_group I numeri sequenziali sembrano una buona idea.

Molte grazie per l'aiuto che ho già ricevuto qui! Non posso davvero contribuire qui, ma nota che provo a pagarlo su Stats.Exchange e su Wikipedia.

Nei miei dati falsi, A e B sono gruppi gemelli. Entrambi i casi ID = 4 o ID = 5 sono sufficienti per renderlo vero. Ogni gruppo è anche il loro gruppo gemello. L'obiettivo, la creazione di parent_group, dovrebbe provocare uno parent_group Per tutti i casi in A o B e in un altro parent_group per il gruppo c

df <- data.frame(ID = c(9, 5, 2, 4, 3, 7), 
  group = c("A", "A", "B", "B", "A", "C"),
  nominated_ID = c(9, 8, 4, 9, 2, 7)     )

df$nominated_group <- with(df, group[match(nominated_ID, ID)])

df

  ID group nominated_ID nominated_group
1  9     A            9               A
2  5     A            8            <NA>
3  2     B            4               B
4  4     B            9               A
5  3     A            2               B
6  7     C            7               C

Nessuna soluzione corretta

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top