在r中将多个列合并为一个字符串
我有一个数据集,它将日期和时间分割为多个列,我希望将它们全部放在一个列中进行绘图。任何帮助都将不胜感激,到目前为止,我的数据如下在r中将多个列合并为一个字符串,r,string,merge,multiple-columns,R,String,Merge,Multiple Columns,我有一个数据集,它将日期和时间分割为多个列,我希望将它们全部放在一个列中进行绘图。任何帮助都将不胜感激,到目前为止,我的数据如下 YY MM DD HH MM 2012 03 04 03 50 2012 03 04 03 40 2012 03 04 03 30 2012 03 04 03
YY MM DD HH MM
2012 03 04 03 50
2012 03 04 03 40
2012 03 04 03 30
2012 03 04 03 20
2012 03 04 03 10
我希望它看起来像这样
DateTime
2012-03-04 03:50
2012-03-04 03:40
2012-03-04 03:30
2012-03-04 03:20
2012-03-04 03:10
提前感谢。我们可以使用
sprintf
df1$DateTime <-do.call(sprintf, c(df1,
list(fmt = '%04d-%02d-%02d %02d:%02d')))
df1$datetime
#[1] "2012-03-04 03:50" "2012-03-04 03:40" "2012-03-04 03:30" "2012-03-04 03:20" "2012-03-04 03:10"
df1$DateTime我们可以使用sprintf
df1$DateTime <-do.call(sprintf, c(df1,
list(fmt = '%04d-%02d-%02d %02d:%02d')))
df1$datetime
#[1] "2012-03-04 03:50" "2012-03-04 03:40" "2012-03-04 03:30" "2012-03-04 03:20" "2012-03-04 03:10"
df1$DateTime使用粘贴的另一种方法
text1 <- "YY MM DD HH MM
2012 03 04 03 50
2012 03 04 03 40
2012 03 04 03 30
2012 03 04 03 20
2012 03 04 03 10"
d1 <- read.table(text=text1, head=T, as.is=T, colClasses = rep("character", 5))
library(dplyr)
d1 %>% transmute(DateTime=paste(paste(YY, MM, DD, sep="-"),
paste(HH, MM.1, sep=":")))
text1另一种使用paste
的方法
text1 <- "YY MM DD HH MM
2012 03 04 03 50
2012 03 04 03 40
2012 03 04 03 30
2012 03 04 03 20
2012 03 04 03 10"
d1 <- read.table(text=text1, head=T, as.is=T, colClasses = rep("character", 5))
library(dplyr)
d1 %>% transmute(DateTime=paste(paste(YY, MM, DD, sep="-"),
paste(HH, MM.1, sep=":")))
text1查看paste()
查看paste()
@OscarTheGrouch您可以使用$
或[
创建一个新列。更新帖子我必须等待5分钟才能接受您的解决方案,但非常感谢!@OscarTheGrouch没问题。谢谢feedback@OscarTheGrouch您可以使用$
或[
创建一个新列。更新了帖子。我需要等待5分钟才能接受您的解决方案,但非常感谢!@OscarTheGrouch没问题。感谢您的反馈