【发布时间】:2020-06-08 08:07:32
【问题描述】:
我有以下数据框
FileNumber<-c("510708396","510708396","510708396","510708485","510667325")
EventCode<-c("CASCRT","DISCSENT","DISCSENT","CASCRT","DISCSENT")
EventDate<-c("8/21/2018 12:00:00 AM","12/3/2018 2:41:18 PM","12/3/2018 3:50:16 PM","8/23/2018 12:00:00 AM","12/12/2018 9:11:28 AM")
df<-data.frame(FileNumber,EventCode,EventDate)
FileNumber EventCode EventDate
1 510708396 CASCRT 8/21/2018 12:00:00 AM
2 510708396 DISCSENT 12/3/2018 2:41:18 PM
3 510708396 DISCSENT 12/3/2018 3:50:16 PM
4 510708485 CASCRT 8/23/2018 12:00:00 AM
5 510667325 DISCSENT 12/12/2018 9:11:28 AM
我想将这个长格式数据框更改为宽格式数据,并使用 EventCodes CASRT 和 DISCSENT 作为列名。我尝试了以下
library(reshape2)
dcast(df,FileNumber~EventCode,value.var = "EventDate")
但是我收到以下消息和一条消息,即 “缺少聚合函数:默认为长度”,正如我所期望的 EventDate 值。
FileNumber CASCRT DISCSENT
1 510667325 0 1
2 510708396 1 2
3 510708485 1 0
我猜这与FileNumber 中的非唯一值有关我如何确保获得事件日期值而不是 1 和 0。
【问题讨论】:
-
表示有重复,可以找
subset(df, FileNumber == 510667325 & EventCode == 'DISCSENT')