Ich habe eine riesige Daten, die ich hier nicht hochladen kann.Sortieren Strings basierend auf der Nummer in einem Teil der Zeichenfolge
Ich habe zwei Arten von Spalten, ihre Namen beginnen mit T.H.L
oder . Beide Typen sind im Format So####
, z. B. T.H.L.So1_P1_A2
bis T.H.L.So10000_P1_A2
, nummeriert.
Für jede T.H.L-Spalte gibt es eine Spalte mit der gleichen Endung.
Ich möchte mit dem ersten der T.H.L
die Spalten durch die Zahlen nach So
, um zu bestellen und dann die entsprechende T.H.L.varies....
Version für jede So
Nummer.
Was ich versucht zu tun
library(gtools)
mySorted<- df2[,mixedorder(colnames(df2))]
die in der Nähe ist, ist es sie nach ihrer Nummer richtig sortiert, aber zuerst alle T.H.L
und dann alle T.H.L.varies
statt sie abwechselnd.
Ich habe die Spaltennamen auf Github veröffentlicht:
Dies ist alles über Spaltennamen. Teilen Sie einfach Ihre Datenrahmenzeilen, teilen Sie einfach 'dput (Namen (df))' oder vielleicht 'dput (Namen (df) [1: 100])', wenn der erste zu lang ist. – Gregor
Probieren Sie auch 'df2 = df [, grep (Muster ="^T \\. H \.. L \\. ", X = Namen (df))]' ... es könnte sein, was Sie wollen. Wenn das nicht das ist, was du willst, vielleicht kannst du klären, der Satz * "Bedeutet, ich will einen T.H.L. und einen T.H.L.Varies, die beide das gleiche Ende haben" * ergibt für mich keinen Sinn. – Gregor
@Gregor Ich teilte es oben auf Github, weil ich es hier nicht setzen konnte – nik