R-更改具有不同格式的列

时间:2018-12-08 03:16:50

标签: r dplyr mutate tibble

我正在尝试从多个csv文件进行分析,并且为了创建可用于left_join的键,我认为我需要尝试合并两列。目前,我正在尝试使用tidyverse软件包(包括mutate),但是由于要合并的两列格式不同,我遇到了一个问题:1是双精度型,另一种是日期格式。我正在使用以下代码

 qlik2 <- qlik %>%
  separate('Admit DateTime', into = c('Admit Date', 'Admit Time'), sep = 10) %>%
  mutate(key = MRN + `Admit Date`)

并得到tis输出错误:

Error in mutate_impl(.data, dots) : 
  Evaluation error: non-numeric argument to binary operator.

如果还有其他解决方法(或者错误实际上与其他原因有关),那么我对此表示感谢。同样,如果人们知道使用多键left_join的方法,那也将起作用。

谢谢, 校准

1 个答案:

答案 0 :(得分:1)

没有可重复的例子。但是,如果我理解您的问题,您要么想要一个数字键,要么尝试用加号+来修饰一个字符串。

数字键

library(hablar)

qlik2 <- qlik %>%
  separate('Admit DateTime', 
           into = c('Admit Date', 'Admit Time'), 
           sep = 10) %>%
  convert(num(MRN, `Admit Date`)) %>% 
  mutate(key = MRN + `Admit Date`)

字符串键

qlik2 <- qlik %>%
  separate('Admit DateTime', 
           into = c('Admit Date', 'Admit Time'), 
           sep = 10) %>%
  mutate(key = paste(MRN, `Admit Date`))