EDIT:, że może to być przydatne wspominając dla każdego szukasz później, że dane jest wyjście dostałem od Biomart Kiedy próbowałem atrybuty kolejność wyświetlania.R: Zmiana kolejności konkretnych wierszy danych ramki pojedynczej kolumny do nowej kolumny
Mam następujące dane genomowego:
structure(list(Sequences = structure(c(2L, 10L, 3L, 8L, 9L, 1L,
5L, 4L, 6L, 7L), .Label = c(">ENSRNOG00000000902|Hsph1", ">ENSRNOG00000001136|Pebp1",
">ENSRNOG00000001214|Pfkl", "AGAGAGGCGAGCGGCGGAGAGCGGTGGCAAATACTGAACGCAGTCTCGCAGGGTAAGCCC",
"GAGCGATTGGGACCTCCCCTTTTGGATTGGTAGCTGAGCGGCAGTGGCGGCGGCTGCGTG",
"GAGGCATCTTCCCGGCCGGTCGGGAGCAGGAGGAGCACGCAGCGGATCCCAGGCAGAGGC",
"GGACCGGGCCAGCC", "GGCGGGGACAGGCGACAGCCGCGCGGAACGCAGAGCGGCGGGAGAGGAGCTCGGGCTCCT",
"GGTCTCTGCTGCCGTC", "GTTTAACTGCACTCGGGACTCGGCGCGCGCGTGTGTCTGTTCTCTCCATCGTC"
), class = "factor")), .Names = "Sequences", class = "data.frame", row.names = c(NA,
-10L))
Chciałbym zmienić dane więc pierwsza kolumna pokazuje informacje o gen identyfikatora (np pierwszym przypadku byłoby to: „> ENSRNOG00000001136 | Pebp1”), a następnie linie kodu genomowego pod nim pojawiłyby się razem w kolumnie obok niego. Zauważ, że wiersze 7-10 mają wiele linii kodu genetycznego. Tutaj wszystkie ciągi pod informacją o ID genu będą łączone razem w jedną linię, zamiast rozdzielać na 4 oddzielne rzędy. Wreszcie, chcę również usunąć symbol ">", który pojawia się przed każdym z identyfikatorów genów.
Wynik końcowy będzie zatem wynosić:
ID Sequence
ENSRNOG00000001136|Pebp1 GTTTAACTGCACTCGGGACTCGGCGCGCGCGTGTGTCTGTTCTCTCCATCGTC
ENSRNOG00000001214|Pfkl GGCGGGGACAGGCGACAGCCGCGCGGAACGCAGAGCGGCGGGAGAGGAGCTCGGGCTCCTGGTCTCTGCTGCCGTC
ENSRNOG00000000902|Hsph1 GAGCGATTGGGACCTCCCCTTTTGGATTGGTAGCTGAGCGGCAGTGGCGGCGGCTGCGTGAGAGAGGCGAGCGGCGGAGAGCGGTGGCAAATACTGAACGCAGTCTCGCAGGGTAAGCCCGAGGCATCTTCCCGGCCGGTCGGGAGCAGGAGGAGCACGCAGCGGATCCCAGGCAGAGGCGGACCGGGCCAGCC
Należy zauważyć, że jest to tylko kilka pierwszych linii ~ ramki danych 2500 wierszy. Rozwiązanie musi być na tyle ogólne, aby mogło analizować sytuacje, w których liczba wierszy pobranych przez sekwencję może być większa niż 4 wiersze pokazane w powyższym przykładzie.
jest identyfikator zawsze podobnego formatu (tzn jest częścią ENSRNO zawsze taka sama długość, a następnie symbol rury ogranicza go, a następnie jest inna sekcja)? – TARehman
Tak. Identyfikator ma zawsze ten sam format (w rzeczywistości jest to "ENSRNO ** G **") i długość, a następnie symbol rury i nazwa genu. Ten sam format dla wszystkich przypadków. – syntonicC
I nigdy nie będzie przypadkiem, w którym ID zaczyna się w tym samym wierszu, w którym zakończyła się sekwencja genomu, prawda? – TARehman