【发布时间】:2021-04-30 05:41:02
【问题描述】:
我有一个数据集,其名称和日期中有一些重复项,但是第三列有一个数字或空值,当删除重复项时,我想让条件保持第三列中的非空值
示例:
我想保留所有蓝色的,所以你可以看到我不想去掉所有的空值。如果我突出显示日期和名称列并删除它首先保留的重复项,并且没有关于数字在重复项中显示为第一个还是第二个的模式。
任何帮助将不胜感激。
谢谢
【问题讨论】:
标签: powerbi-desktop
我有一个数据集,其名称和日期中有一些重复项,但是第三列有一个数字或空值,当删除重复项时,我想让条件保持第三列中的非空值
示例:
我想保留所有蓝色的,所以你可以看到我不想去掉所有的空值。如果我突出显示日期和名称列并删除它首先保留的重复项,并且没有关于数字在重复项中显示为第一个还是第二个的模式。
任何帮助将不胜感激。
谢谢
【问题讨论】:
标签: powerbi-desktop
试试这个:
library(gdata)
your.data <- tibble(
Name = c("Wanita Jones" , "Wanita Jones", "Corbin Dallas", "Corbin Dallas", "Corbin Dallas", "Corbin Dallas", "Alex Mills", "Alex Mills", "Andrea Coyle", "Andrea Coyle"),
Date = c("01/24/2021" , "01/24/2021", "03/28/2021", "03/28/2021", "03/29/2021", "03/31/2021", "01/24/2021", "01/24/2021", "03/27/2021", "04/01/2021"),
Request = c("null" , 6, 7, "null", "null", 1, "null", 10, "null", "null")
)
your.data %>% filter(
!duplicated2(interaction(Name,Date)) | Request != "null"
)
输出:
# A tibble: 7 x 3
Name Date Request
<chr> <chr> <chr>
1 Wanita Jones 01/24/2021 6
2 Corbin Dallas 03/28/2021 7
3 Corbin Dallas 03/29/2021 null
4 Corbin Dallas 03/31/2021 1
5 Alex Mills 01/24/2021 10
6 Andrea Coyle 03/27/2021 null
7 Andrea Coyle 04/01/2021 null
如果您对安装gdata 没有兴趣,可以先按要求排序,确保重复项的第一项始终是不带空值的项:
your.data %>% arrange( Request == "null" ) %>%
filter(
!duplicated(interaction(Name,Date)) | Request != "null"
) %>% arrange( Date, Name )
或者只是粘贴source中的函数
【讨论】: