合并日期匹配数据集时duration_days列变为NA的解决方法
合并数据集后duration_days列全为NA的解决办法
问题根源
两个数据集的date列数据类型不匹配:
- ksM中的
date是字符型(格式示例:"01/01/2021") - group_duration中的
date是标准Date日期型(格式示例:对应数值18628的2021-01-01)
merge函数仅能匹配类型完全一致的列,类型不匹配时无法建立对应关联,因此duration_days列全部显示为NA。
解决步骤
将ksM的date列转换为Date类型
原字符格式为mm/dd/yyyy,转换时需指定对应格式:ksM$date <- as.Date(ksM$date, format = "%m/%d/%Y")重新执行合并操作
此时两个date列类型统一,merge可正常匹配关联:test <- merge(ksM, group_duration, by = "date", all.x = TRUE)
执行后查看head(test),即可看到duration_days列已正确填充对应数值。
内容的提问来源于stack exchange,提问作者Daworn
相关产品推荐
相关产品推荐

