2016-12-15 5 views
-1

Ich habe Millionen von Beobachtungen in verschiedenen Spalten und eine Spalte enthält Datensätze von zwei Faktoren zusammen. Zum Beispiel 136789 und ich möchte das erste Zeichen (1) und den Rest (36789) als separate Spalten für alle Beobachtungen aufteilen.Wie spalte ich eine Spalte, die zwei Datensätze getrennt

Das Feld sieht wie folgt aus

#136789 

Ich mag dieses

#1 36789 
+2

eine Beispieleingabedatei Geben und eine erwartete Ausgabedatei. – Inian

+0

Aktualisieren Sie die Beispieldatei in der Frage als Referenz für alle Verweise – Inian

+0

@ Gibt es weitere Spalten danach? (und) Gibt es davor Spalten? Wie erwarten Sie, dass es identifiziert wird, wenn es in der Mitte ist? – Inian

Antwort

1

sehen möchten, können Sie den Einsatz von sub() Funktion machen.

Zum Beispiel:

kent$ awk 'BEGIN{x="123456";sub(/^./,"& ",x);print x}' 
1 23456 

In Ihrem Code, müssen Sie sub() auf einige Spalte anwenden ($x)

+0

die Spalte ($ 17) Ich möchte am Ende der anderen Spalten aufgeteilt werden. Wie kann ich das Skript schreiben? – Alula

+0

'awk '{sub (/^./,"&", $ 17)} 7' Datei' @Alula – Kent

Verwandte Themen