簡體   English   中英

將多行與日期數據組合在不同的列中

[英]Combining multiple rows with date data in different columns

我有一個類似於以下格式的數據框,雖然我在orderID后面有更多的組,它們需要保持不變:

orderID <- c('1234', '1234')
incoming <- as.Date(c('2019-3-3',NA))
outgoing <- as.Date(c(NA,'2019-3-25'))
df <- data.frame(orderID, incoming, outgoing)

df
  orderID   incoming   outgoing
1    1234 2019-03-03       <NA>
2    1234       <NA> 2019-03-25

我正在嘗試將每個組的行組合到下面:

df_expected
  orderID   incoming   outgoing
1    1234 2019-03-03 2019-03-25

我嘗試使用下面的dplyr代碼,但它沒有按預期工作 - 我得到了NA。 非常感謝一些幫助,並在dplyr。

#code that didn't work
df %>% group_by(orderID) %>% 
    summarise(incoming=min(incoming), outgoing = min(outgoing))

它應該完成這項工作但你缺少min函數的na.rm = TRUE選項才能使它工作(因為如果不忽略它, NA值將被認為是最小值)。 所以,這應該工作:

df %>% 
group_by(orderID) %>% 
summarise(incoming = min(incoming, na.rm = TRUE),
          outgoing = min(outgoing, na.rm = TRUE)
         )

輸出:

# A tibble: 1 x 3
#   orderID incoming   outgoing  
#   <fct>    <date>       <date>    
#1  1234     2019-03-03   2019-03-25

希望能幫助到你。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM