删除向量(R)中前10个字符之后的所有字符

问题描述 投票:0回答:3

我是R的新手,希望从Salesforce数据的date/time字段中删除时间戳。这些日期的格式为"2019-09-06T07:44:59.9999997904524",我需要删除T之后的所有内容,包括T,然后转换为mm/dd/yyyy格式。我将如何完成?

r data-cleaning
3个回答
1
投票

根据需要解析日期和格式可能会更好

format(as.Date("2019-09-06T07:44:59.9999997904524"), "%m/%d/%Y")
#OR
format(lubridate::ymd_hms( "2019-09-06T07:44:59.9999997904524"), "%m/%d/%Y")
#[1] "09/06/2019"

0
投票

如果需要正则表达式解决方案,请捕获为一个组,然后重新排列反向引用

sub("(.{4})-(.{2})-(.{2}).*", "\\2/\\3/\\1", v1)
#[1] "09/06/2019"

或使用anytime

library(anytime)
format(anytime(v1), "%m/%d/%Y")
#[1] "09/06/2019"

或在base R中>

format(as.Date(v1), "%m/%d/%Y")

数据

v1 <- "2019-09-06T07:44:59.9999997904524"

0
投票

base R中的暴力解决方案,需要精确提取10个字符:

© www.soinside.com 2019 - 2024. All rights reserved.