在R中添加共享相同日期的不同行的数据

在R中添加共享相同日期的不同行的数据,r,time-series,R,Time Series,我在R中有以下数据帧: Date A B C 1 2015-01-17 1 NA 1 2 2015-01-18 NA NA NA 3 2015-01-19 1 2 3 4 2015-01-19 1 NA 1 ... 目标是具有相同日期的不同行在A、B、C列中添加其值: Date A B C 1 2015-01-17 1 NA 1

我在R中有以下数据帧:

      Date        A   B    C

1  2015-01-17     1   NA   1
2  2015-01-18     NA  NA   NA
3  2015-01-19     1   2    3
4  2015-01-19     1   NA   1
...
目标是具有相同日期的不同行在A、B、C列中添加其值:

      Date        A   B    C

1  2015-01-17     1   NA   1
2  2015-01-18     NA  NA   NA
3  2015-01-19     2   2    4
...
感谢您的帮助。

库(dplyr)
library(dplyr)
df %>%
  group_by(Date)%>%
  summarise_at(.,c("A","B","C"),function(x) if(any(!is.na(x)))sum(x,na.rm = T) else NA)


# A tibble: 3 x 4
  Date           A     B     C
  <fct>      <int> <int> <int>
1 2015-01-17     1    NA     1
2 2015-01-18    NA    NA    NA
3 2015-01-19     2     2     4
df%>% 分组单位(日期)%>% 在(、c(“A”、“B”、“c”)、函数(x)和(x,na.rm=T)和(x,na.rm=T)和(n)中总结 #一个tibble:3x4 日期A B C 1 2015-01-17 1不适用1 2 2015-01-18不适用 3 2015-01-19 2 2 4
数据:

df
library(dplyr)
df%>%
分组单位(日期)%>%
在(、c(“A”、“B”、“c”)、函数(x)和(x,na.rm=T)和(x,na.rm=T)和(n)中总结
#一个tibble:3x4
日期A B C
1 2015-01-17 1不适用1
2 2015-01-18不适用
3 2015-01-19     2     2     4
数据:


df另一个选项是
sum\uu
from
hablar

library(hablar)
library(dplyr)
df %>% 
    group_by(Date) %>%
    summarise_if(is.numeric, sum_)
# A tibble: 3 x 4
#  Date           A     B     C
#  <fct>      <int> <int> <int>
#1 2015-01-17     1    NA     1
#2 2015-01-18    NA    NA    NA
#3 2015-01-19     2     2     4
库(hablar)
图书馆(dplyr)
df%>%
分组单位(日期)%>%
如果(是数字,求和)则汇总
#一个tibble:3x4
#日期A B C
#          
#1 2015-01-17 1不适用1
#2 2015-01-18不适用
#3 2015-01-19     2     2     4
数据
df另一个选项是
sum\uu
from
hablar

library(hablar)
library(dplyr)
df %>% 
    group_by(Date) %>%
    summarise_if(is.numeric, sum_)
# A tibble: 3 x 4
#  Date           A     B     C
#  <fct>      <int> <int> <int>
#1 2015-01-17     1    NA     1
#2 2015-01-18    NA    NA    NA
#3 2015-01-19     2     2     4
库(hablar)
图书馆(dplyr)
df%>%
分组单位(日期)%>%
如果(是数字,求和)则汇总
#一个tibble:3x4
#日期A B C
#          
#1 2015-01-17 1不适用1
#2 2015-01-18不适用
#3 2015-01-19     2     2     4
数据
df
df <- structure(list(Date = structure(c(1L, 2L, 3L, 3L), .Label = c("2015-01-17", 
"2015-01-18", "2015-01-19"), class = "factor"), A = c(1L, NA, 
1L, 1L), B = c(NA, NA, 2L, NA), C = c(1L, NA, 3L, 1L)), 
class = "data.frame", row.names = c("1", 
"2", "3", "4"))