Mam ramkę danych, w której chcę użyć pewnych wartości jako klawiszy skrótu/słownika (lub jakkolwiek go nazwiesz w wybranym przez ciebie języku) dla innych wartości w tej ramce danych. Że mam dataframe takiego który czytałem z dużym pliku csv (tylko pierwszy rząd pokazany):Jak używać elementów ramek danych, takich jak klawisze skrótów/klucze słownika/klucze podstawowe?
Plate.name QN.number Well Allele.X.Rn Allele.Y.Rn Call
1 Plate 1_A1 QN2200 A 1.766 2.791 Both
które w kodzie R będzie:
structure(list(Plate.name = structure(1L, .Label = "Plate 1_A1", class = "factor"),
QN.number = structure(1L, .Label = "QN2200", class = "factor"),
Well = structure(1L, .Label = "A1", class = "factor"), Allele.X.Rn = 1.766,
Allele.Y.Rn = 2.791, Call = structure(1L, .Label = "Both", class = "factor")), .Names = c("Plate.name",
"QN.number", "Well", "Allele.X.Rn", "Allele.Y.Rn", "Call"), class = "data.frame", row.names = c(NA,
-1L))
THe QN.numbers są unikalne identyfikatory w moim zestawie danych. W jaki sposób następnie pobierać dane za pomocą QN.number jako odniesienia dla innych wartości, to znaczy chcę znać Call lub Allele.X.Rn dla danego numeru QN.? Wygląda na to, że row.names może zrobić lewę, ale jak mógłbym ich użyć w tym przypadku?
+1 dla powtarzalne przykład i dobrze zadane pytanie. –
Nazwy wierszy w ramce danych muszą być unikalne (jak w haszdzie lub słowniku), więc możesz chcieć zrobić to sprawdzić przed użyciem QN.number w row.names(). Coś w rodzaju 'sum (tapply (d $ a, d $ a, length)> 1)' powie ci, ile duplikatów znajduje się w kolumnie a ramki danych d. – Seth
Ah tak dzięki Seth, powinienem wspomnieć, że QN.number jest unikalnym identyfikatorem. Będę edytować pytanie – arandomlypickedname