【发布时间】:2018-06-27 20:49:03
【问题描述】:
我有一个数据框df,其中包含带有东、西、北和南名称的纬度和经度字符值。将Latitude 和Longitude 列转换为数字并将任何South 和West 值设为负值,将df 转换为所需输出df2 的优雅方法是什么?
#MRE
library(tibble)
#input data set
df <- tribble(
~Country, ~Capital, ~Latitude, ~Longitude,
"Afghanistan", "Kabul", "34.28N", "69.11E",
"Albania", "Tirane", "41.18N", "19.49E",
"Algeria", "Algiers", "36.42N", "03.08E",
"American Samoa", "Pago Pago", "14.16S", "170.43W",
"Andorra", "Andorra la Vella", "42.31N", "01.32E",
"Angola", "Luanda", "08.50S", "13.15E"
)
# desired output
df2 <- tribble(
~Country, ~Capital, ~Latitude, ~Longitude,
"Afghanistan", "Kabul", 34.28, 69.11,
"Albania", "Tirane", 41.18, 19.49,
"Algeria", "Algiers", 36.42, 03.08,
"American Samoa", "Pago Pago", -14.16, -170.43,
"Andorra", "Andorra la Vella", 42.31, 01.32,
"Angola", "Luanda", -08.50, -13.15
)
提前感谢您的友好建议
【问题讨论】:
-
heyydrien,其中一个答案能解决您的问题吗?如果是这样,请不要忘记接受它。 (如果没有,请告诉我们有什么不同...)