【发布时间】:2021-11-18 13:55:57
【问题描述】:
我正在努力弄清楚如何在 id2 具有 value = NA 和相同的 date1 时重复 value。
我有以下数据框:
test = data.frame(date1 = c("2020-11-02", "2020-11-02","2020-11-02", "2020-11-03","2020-11-04","2020-11-04"),
value = c(676, 676, NA, 400, 505, NA),
id1 = c("16-4-L", "16-3-L", "16-3-R", "16-3-F", "17-6-L", "17-1-L"),
id2 = c("16", "16", "16", "16", "17", "17"))
# date1 value id1 id2
# 1 2020-11-02 676 16-4-L 16
# 2 2020-11-02 676 16-3-L 16
# 3 2020-11-02 NA 16-3-R 16
# 4 2020-11-03 400 16-3-F 16
# 5 2020-11-04 505 17-6-L 17
# 6 2020-11-04 NA 17-1-L 17
#and I need the following:
#> result
# date1 value id1 id2
# 1 2020-11-02 676 16-4-L 16
# 2 2020-11-02 676 16-3-L 16
# 3 2020-11-02 676 16-3-R 16
# 4 2020-11-03 400 16-3-F 16
# 5 2020-11-04 505 17-6-L 17
# 6 2020-11-04 505 17-1-L 17
请注意,id2 是不同的,但我希望在同一日期使用相同的 id1 以使用相同的值。
我想做类似:if value is an NA, then we look to rows that have the same id2 and date1, then just copy that value.
任何提示我该怎么做?
【问题讨论】:
-
您的描述令人困惑,因为您指的是id2,但实际上是在id1上做的。
-
你可以应用这个逻辑:
-
正是@deschen,我需要将相同的
id1和date1的值设置为id2,当它的值是NA时。 -
@AmandaSB,哪一个?