Ich habe einen großen räumlichen Datensatz im Text. Ich muss degree minute.decimal Werte in Dezimalgrade umwandeln. mein Code wie folgt. Es funktioniert gut Werte außer 0 bis -1. Werte in 0 bis -1 konvertieren in positive Werte von as.numeric() Koordinatenumrechnungsverfahren ist in Ordnung, aber Problem ist, wie minus Null (-0) Werte in Iflese-Anweisung übergeben. Wie überwinde ich dieses Problem?R Minuszeichen fehlt beim Umwandeln von Zeichen in Zahlen von as.numeric
data <- c("-7ø12.2","-1ø23.0","-0ø50.3","0ø14.6","2ø59.7")
# latitudes in degree minutes.decimal format
lat1 <- as.numeric(gsub("ø.*$", "", data)) # substring befor ø
lat2 <- as.numeric(sub(".*ø", "", data)) # substring after ø
lat <- ifelse(lat1 < 0, lat1 - lat2/60, lat1 + lat2/60)
LAT1 [1] -7 -1 0 0 2
Das stellt ein mögliches Duplikat [Konvertieren von Geo-Koordinaten von Grad in Dezimalzahlen] (http : //stackoverflow.com/questions/14404596/converting-geo-coordinates-from-degree-to-decimal) – Uwe
@UweBlock Hier ist die Frage nicht die Konvertierung von Grad zu Dezimal, aber vermeiden minus Nullwerte (0 bis -1) in ifelse Aussage positiv zu sein. – sudheera