Teilen Sie Tausende von Spalten gleichzeitig durch '/' in mehreren Zeilen auf, sortieren Sie die Werte in den neuen Zeilen und fügen Sie 'NA'-Werte hinzu
Ich möchte einen Datenrahmen mit Tausenden von Spalten teilen. Der Datenrahmen sieht folgendermaßen aus:
# sample data of four columns
sample <-read.table(stdin(),header=TRUE,sep="")
POS v1 v2 v3 v4
152 0 0/1 0/2 0/1/2
73 1 0 0/1 0/1
185 0 1 0/3 0
Die Ausgabe sollte sein:
POS v1 v2 v3 v4
152 0 0 0 0
152 NA 1 NA 1
152 NA NA 2 2
73 NA 0 0 0
73 1 NA 1 1
185 0 NA 0 0
185 NA 1 NA NA
185 NA NA NA NA
185 NA NA 3 NA
Die Werte 0, 1, 2 und 3 sollten in den so erhaltenen neuen Zeilen geordnet werden, während der Wert im Feld POS wiederholt werden sollte. Dann sollte der NA-Wert eingefügt werden, um Spalten gleicher Länge zu erhalten.