Convert Coordinate Format
as_degminsec.Rd
Convert the format of geographic or GPS coordinates to decimal degrees, to degrees and minutes or to degrees, minutes and seconds.
Usage
as_degminsec(object, ...)
# S3 method for class 'numeric'
as_degminsec(
object,
...,
.fmt = c("decdeg", "degmin", "degminsec"),
.as_numeric = FALSE
)
as_degmin(object, ...)
# S3 method for class 'numeric'
as_degmin(
object,
...,
.fmt = c("decdeg", "degmin", "degminsec"),
.as_numeric = FALSE
)
as_decdeg(object, ...)
# S3 method for class 'numeric'
as_decdeg(
object,
...,
.fmt = c("decdeg", "degmin", "degminsec"),
.as_numeric = FALSE
)
Arguments
- object
a
"coord"
object or anumeric
vector.- ...
further arguments passed to or from other methods.
- .fmt
character
string indicating the format ofobject
; must be one of"decdeg"
(default),"degmin"
or"degminsec"
.- .as_numeric
logical, signifying whether to return a
"coord"
object or anumeric
value; defaultFALSE
, the former.
Value
A "coord"
object or numeric
value in the desired format.
Details
Converts between coordinates represented in decimal degrees ("decdeg"), integer degrees and
decimal minutes ("degmin"), and integer degrees, integer minutes, and decimal seconds
("degminsec"). Works with individual "coord"
objects returned using the
coord()
function, or with vectors of simple numeric values.
See "coord"
for further details.
See also
Other coord:
coord()
Examples
## `"coord"` objects in decimal degrees; in degrees and minutes;
## and in degrees, minutes, and seconds
(coord_dd <- coord(51.507765, "decdeg"))
#> 51.507765°
(coord_dm <- coord(5130.4659, "degmin"))
#> 51°30.4659' (N/E)
(coord_dms <- coord(513027.95, "degminsec"))
#> 51°30'27.95" (N/E)
## as_degminsec
coord_dd |> as_degminsec()
#> 51°30'27.95" (N/E)
coord_dm |> as_degminsec()
#> 51°30'27.95" (N/E)
## as_degmin
coord_dd |> as_degmin()
#> 51°30.4659' (N/E)
coord_dms |> as_degmin()
#> 51°30.4658' (N/E)
## as_decdeg
coord_dm |> as_decdeg()
#> 51.507765°
coord_dms |> as_decdeg()
#> 51.507764°
## `"latnlon"` objects in decimal degrees; in degrees and minutes;
## and in degrees, minutes, and seconds
(latnlon_dd <- coord(c(51.507765, -0.127924), "decdeg", "both"))
#> 51.507765° lat -0.127924° lon
(latnlon_dm <- coord(c(5130.4659, -7.6754), "degmin", "both"))
#> 51°30.4659' N 0°07.6754' W
(latnlon_dms <- coord(c(513027.95, -740.53), "degminsec", "both"))
#> 51°30'27.95" N 0°07'40.53" W
## as_degminsec
latnlon_dd |> as_degminsec()
#> 51°30'27.95" N 0°07'40.53" W
latnlon_dm |> as_degminsec()
#> 51°30'27.95" N 0°07'40.52" W
## as_degmin
latnlon_dd |> as_degmin()
#> 51°30.4659' N 0°07.6754' W
latnlon_dms |> as_degmin()
#> 51°30.4658' N 0°07.6755' W
## as_decdeg
latnlon_dm |> as_decdeg()
#> 51.507765° lat -0.127923° lon
latnlon_dms |> as_decdeg()
#> 51.507764° lat -0.127925° lon
## Numeric vectors in decimal degrees; in degrees and minutes;
## and in degrees, minutes, and seconds
(num_dd <- c(51.507765, 49.546210, 48.107232, 38.889494, 0.000000, -37.111740, -53.104781))
#> [1] 51.50776 49.54621 48.10723 38.88949 0.00000 -37.11174 -53.10478
(num_dm <- c(5130.4659, 4932.7726, 4806.4339, 3853.3696, 0.0000, -3706.7044, -5306.2869))
#> [1] 5130.466 4932.773 4806.434 3853.370 0.000 -3706.704 -5306.287
(num_dms <- c(513027.95, 493246.36, 480626.04, 385322.18, 0.00, -370642.26, -530617.21))
#> [1] 513028.0 493246.4 480626.0 385322.2 0.0 -370642.3 -530617.2
## as_degminsec
num_dd |> as_degminsec(.fmt = "decdeg")
#> [[1]]
#> 51°30'27.95" (N/E)
#> [[2]]
#> 49°32'46.36" (N/E)
#> [[3]]
#> 48°06'26.04" (N/E)
#> [[4]]
#> 38°53'22.18" (N/E)
#> [[5]]
#> 0°00'00.00" (N/E)
#> [[6]]
#> 37°06'42.26" (W/S)
#> [[7]]
#> 53°06'17.21" (W/S)
num_dm |> as_degminsec(.fmt = "degmin")
#> [[1]]
#> 51°30'27.95" (N/E)
#> [[2]]
#> 49°32'46.36" (N/E)
#> [[3]]
#> 48°06'26.03" (N/E)
#> [[4]]
#> 38°53'22.18" (N/E)
#> [[5]]
#> 0°00'00.00" (N/E)
#> [[6]]
#> 37°06'42.26" (W/S)
#> [[7]]
#> 53°06'17.21" (W/S)
num_dd |> as_degminsec(.fmt = "decdeg", .as_numeric = TRUE)
#> [1] 513028.0 493246.4 480626.0 385322.2 0.0 -370642.3 -530617.2
num_dm |> as_degminsec(.fmt = "degmin", .as_numeric = TRUE)
#> [1] 513028.0 493246.4 480626.0 385322.2 0.0 -370642.3 -530617.2
## as_degmin
num_dd |> as_degmin(.fmt = "decdeg")
#> [[1]]
#> 51°30.4659' (N/E)
#> [[2]]
#> 49°32.7726' (N/E)
#> [[3]]
#> 48°06.4339' (N/E)
#> [[4]]
#> 38°53.3696' (N/E)
#> [[5]]
#> 0°00.0000' (N/E)
#> [[6]]
#> 37°06.7044' (W/S)
#> [[7]]
#> 53°06.2869' (W/S)
num_dms |> as_degmin(.fmt = "degminsec")
#> [[1]]
#> 51°30.4658' (N/E)
#> [[2]]
#> 49°32.7727' (N/E)
#> [[3]]
#> 48°06.4340' (N/E)
#> [[4]]
#> 38°53.3697' (N/E)
#> [[5]]
#> 0°00.0000' (N/E)
#> [[6]]
#> 37°06.7043' (W/S)
#> [[7]]
#> 53°06.2868' (W/S)
num_dd |> as_degmin(.fmt = "decdeg", .as_numeric = TRUE)
#> [1] 5130.466 4932.773 4806.434 3853.370 0.000 -3706.704 -5306.287
num_dms |> as_degmin(.fmt = "degminsec", .as_numeric = TRUE)
#> [1] 5130.466 4932.773 4806.434 3853.370 0.000 -3706.704 -5306.287
## as_decdeg
num_dm |> as_decdeg(.fmt = "degmin")
#> [[1]]
#> 51.507765°
#> [[2]]
#> 49.546210°
#> [[3]]
#> 48.107232°
#> [[4]]
#> 38.889493°
#> [[5]]
#> 0.000000°
#> [[6]]
#> -37.111740°
#> [[7]]
#> -53.104782°
num_dms |> as_decdeg(.fmt = "degminsec")
#> [[1]]
#> 51.507764°
#> [[2]]
#> 49.546211°
#> [[3]]
#> 48.107233°
#> [[4]]
#> 38.889494°
#> [[5]]
#> 0.000000°
#> [[6]]
#> -37.111739°
#> [[7]]
#> -53.104781°
num_dm |> as_decdeg(.fmt = "degmin", .as_numeric = TRUE)
#> [1] 51.50776 49.54621 48.10723 38.88949 0.00000 -37.11174 -53.10478
num_dms |> as_decdeg(.fmt = "degminsec", .as_numeric = TRUE)
#> [1] 51.50776 49.54621 48.10723 38.88949 0.00000 -37.11174 -53.10478
rm(coord_dd, coord_dm, coord_dms, num_dd, num_dm, num_dms)