Qual è il modo migliore per determinare un fattore o creare un nuovo campo di categoria in base a un numero di campi booleani? In questo esempio, ho bisogno di contare il numero di combinazioni uniche di farmaci.Come contare il numero di combinazioni di dati booleani in R
> MultPsychMeds
ID OLANZAPINE HALOPERIDOL QUETIAPINE RISPERIDONE
1 A 1 1 0 0
2 B 1 0 1 0
3 C 1 0 1 0
4 D 1 0 1 0
5 E 1 0 0 1
6 F 1 0 0 1
7 G 1 0 0 1
8 H 1 0 0 1
9 I 0 1 1 0
10 J 0 1 1 0
Forse un altro modo per dirlo è che ho bisogno di ruotare o incrociare le coppie tabulate. I risultati finali hanno bisogno di guardare qualcosa di simile:
Combination Count
OLANZAPINE/HALOPERIDOL 1
OLANZAPINE/QUETIAPINE 3
OLANZAPINE/RISPERIDONE 4
HALOPERIDOL/QUETIAPINE 2
Questa cornice di dati può essere replicata in R con:
MultPsychMeds <- structure(list(ID = structure(1:10, .Label = c("A", "B", "C",
"D", "E", "F", "G", "H", "I", "J"), class = "factor"), OLANZAPINE = c(1L,
1L, 1L, 1L, 1L, 1L, 1L, 1L, 0L, 0L), HALOPERIDOL = c(1L, 0L,
0L, 0L, 0L, 0L, 0L, 0L, 1L, 1L), QUETIAPINE = c(0L, 1L, 1L, 1L,
0L, 0L, 0L, 0L, 1L, 1L), RISPERIDONE = c(0L, 0L, 0L, 0L, 1L,
1L, 1L, 1L, 0L, 0L)), .Names = c("ID", "OLANZAPINE", "HALOPERIDOL",
"QUETIAPINE", "RISPERIDONE"), class = "data.frame", row.names = c(NA,
-10L))
+1 di fornire i dati. Tuttavia, credo che sia necessario aggiornare il titolo, in quanto non sembrano esserci booleani (logiche) coinvolti, né c'è alcuna "conversione" in corso. Puoi rivederlo a qualcosa come 'contare il numero di co-occorrenze' o simili? –
Grazie. Rivisto il titolo per abbinare la domanda reale. Per quanto riguarda Boolean, i dati grezzi includono 0 per FALSE e 1 per TRUE e R sta impostando tali variabili su Numeri interi durante il caricamento da file .csv. Questo processo sarebbe meglio se prima venissero convertiti in variabili logiche? – Rollie
Penso che il riferimento a booleana è fine e intuitivo, R equivale 1 & TRUE per essere uno e lo stesso per quanto ne so (ci possono essere casi in cui questo non è vero). Ad esempio, '> 1 == TRUE [1] TRUE – Chase