R 如何从字符串中获取日期信息,然后通过测试按主题捕获最早的结果
我有一个data.frame,看起来像这样: 我想建立一些变量来捕捉每个测试的最早日期和分数。我需要在变量R 如何从字符串中获取日期信息,然后通过测试按主题捕获最早的结果,r,date,R,Date,我有一个data.frame,看起来像这样: 我想建立一些变量来捕捉每个测试的最早日期和分数。我需要在变量Time之外为信息添加日期。然后捕获每个测试的日期。对于测试结果,如果在同一日期进行了两次相同的测试,得分分别为a和b,则将其记录为a+b。我想要的结果是这样的: 我卡在了第一个位置,那就是从时间中获取日期信息 我的代码是: df1$date<- as.Date(df1$Time, format = "%Y-%B-%dT%H:%M") 非常感谢,节日快乐 在创
Time
之外为信息添加日期。然后捕获每个测试的日期。对于测试结果,如果在同一日期进行了两次相同的测试,得分分别为a
和b
,则将其记录为a+b
。我想要的结果是这样的:
我卡在了第一个位置,那就是从时间
中获取日期信息
我的代码是:
df1$date<- as.Date(df1$Time, format = "%Y-%B-%dT%H:%M")
非常感谢,节日快乐 在创建按“ID”和“test”分组的列后,我们可以使用
pivot\u
library(dplyr)
library(tidyr)
library(stringr)
out <- df %>%
mutate(Date = as.Date(Time)) %>%
group_by(ID, test) %>%
mutate(time = as.Date(max(Date)),
level = str_c(score[Time == max(Date)], collapse="+")) %>%
ungroup %>%
pivot_wider(names_from = test, values_from = c(time, level))
库(dplyr)
图书馆(tidyr)
图书馆(stringr)
超出%
突变(日期=as.Date(时间))%>%
分组依据(ID,测试)%>%
变异(时间=截止日期(最大日期)),
级别=str_c(分数[时间==max(日期)],折叠=“+”)%>%
解组%>%
枢轴(名称=测试,值=c(时间,级别))
@Stataq更新为paste
或str\u c
对pivot\u wide
感到惊讶。谢谢你的介绍。节日快乐@Stataq您的时间列格式为2016-03-16T10:22
,即%Y-%m-%dT%H:%m
@Stataq同样,在这种情况下,您不需要该格式,因为as.Date
只检查格式正确的日期部分,即as.Date(df$Time)#[1]“2016-03-16”..
@Stataq也将较短的格式版本设置为as.Date(df$Time,format=“%FT%H:%M”)
。请注意,如果是%H:%M%S
,则可以使用作为.Date(df$Time,format=“%FT%T”)
library(dplyr)
library(tidyr)
library(stringr)
out <- df %>%
mutate(Date = as.Date(Time)) %>%
group_by(ID, test) %>%
mutate(time = as.Date(max(Date)),
level = str_c(score[Time == max(Date)], collapse="+")) %>%
ungroup %>%
pivot_wider(names_from = test, values_from = c(time, level))