Ich bin neu bei R, Anregungen wären willkommen.
Dies sind die Daten:
coordinates <- "(-79.43591570873059, 43.68015339477487), (-79.43491506339724, 43.68036886994886), (-79.43394727223847, 43.680578504490335), (-79.43388162422195, 43.68058996121469), (-79.43281544978878, 43.680808044458765), (-79.4326971769691, 43.68079658822322)"
Ich möchte, dass dies wird:
Latitude Longitude
-79.43591570873059 43.68015339477487
-79.43491506339724 43.68036886994886
-79.43394727223847 43.680578504490335
-79.43388162422195 43.68058996121469
-79.43281544978878 43.680808044458765
-79.4326971769691 43.68079658822322
Latitude
undLongitude
als Faktor Variablen, die Schwierigkeiten verursachen könnten.Sie können
scan
mit ein wenig verwendengsub
:Die Präzision ist immer noch da - nur in der Matrixanzeige abgeschnitten.
Zwei klare Vorteile:
coordinates <- rep(coordinates, 10)
als Eingabe).Hier ist eine weitere Option:
Das
toString(coordinates)
ist für Fälle, in denenlength(coordinates) > 1
. Sie können auch verwendenfread(text = gsub(...), ...)
und überspringentoString
. Ich bin mir der Vor- oder Nachteile beider Ansätze nicht sicher.quelle
Hier ist eine Basis-R-Option:
Die Strategie hier besteht darin, zuerst die führenden nachfolgenden Klammern zu entfernen und dann die Zeichenfolge aufzuteilen
\), \(
, um mit jedem Breiten- / Längengradpaar einen einzelnen Zeichenvektor zu erzeugen. Schließlich generieren wir eine Datenrahmenausgabe.quelle
lat
undlng
als Faktor Variablen, die Schwierigkeiten verursachen könnten.stringsAsFactors=FALSE
beim Erstellen des Datenrahmens verwenden .Eine weitere Basis-R-Version mit ein wenig Regex, die sich auf die Tatsache stützt, dass das Ersetzen der Interpunktion durch Leerzeilen bedeutet, dass sie beim Import übersprungen werden.
Vorteile:
scan
Antwort.Nachteile:
quelle
Wir können
rm_round
von verwendenqdapRegex
Oder in Kombination mit
tidyverse
quelle