Alv*_*edo 1 r dataframe dplyr data-cleaning tidyverse
我正在处理一个包含经度和纬度坐标的大型数据框,每个数据框位于不同的列中。仅当每个重复行具有相同的经度和纬度时,我才想删除它。这能解决问题吗?
distinct(dat, dat$longitude, dat$latitude, .keep_all = TRUE)
Run Code Online (Sandbox Code Playgroud)
这似乎有效,但我不确定是否要删除仅具有匹配经度和不同纬度的行或反之亦然。
假设您的意思是dplyr::distinct,用一个玩具示例来测试它非常容易:
dat <- data.frame(longitude = c(1, 2, 3, 1, 2, 3),
latitude = c(10, 11, 12, 10, 12, 10))
dat
#> longitude latitude
#> 1 1 10
#> 2 2 11
#> 3 3 12
#> 4 1 10
#> 5 2 12
#> 6 3 10
dplyr::distinct(dat, longitude, latitude, .keep_all = TRUE)
#> longitude latitude
#> 1 1 10
#> 2 2 11
#> 3 3 12
#> 4 2 12
#> 5 3 10
Run Code Online (Sandbox Code Playgroud)
您可以看到它只删除了两个变量重复的行。
顺便说一句,您可能想再次查看您自己的代码在此数据集上的结果:
distinct(dat, dat$longitude, dat$latitude, .keep_all = TRUE)
#> longitude latitude dat$longitude dat$latitude
#> 1 1 10 1 10
#> 2 2 11 2 11
#> 3 3 12 3 12
#> 4 2 12 2 12
#> 5 3 10 3 10
Run Code Online (Sandbox Code Playgroud)
正如 Akrun 指出的那样,您不想dat$在使用整洁评估时包含。
| 归档时间: |
|
| 查看次数: |
4384 次 |
| 最近记录: |