如何解决从R中的.wav文件名中提取日期和时间
我有一列site_date_time.wav文件,我需要解析它们的日期和时间段。每个文件名的命名如下:AF10_20160602_183000.wav。
我已经使用gsub(".wav","",filename)
删除了.wav,并且我已经使用as.Date(sub('[^_]+_(\\d+).*','\\1',df[,5]),"%Y%m%d")
提取了日期,但是我似乎无法使该方法在该时间段中起作用。 / p>
我尝试暂时使用sub('^[^_]+_[^_]+_(\\d{2})(\\d{2})_.*','\\1:\\2',5])
使其成为一个单独的值,然后再使用strptime,但这是行不通的。我不太确定自己缺少什么。
如果我可以将日期和时间放到一个栏中,那会更好。任何建议都会有所帮助。
解决方法
您可以删除所有内容,直到使用sub
下划线,然后使用as.POSIXct
转换为日期时间值。
x <- c('AF10_20160602_183000.wav','BF10_20160602_143000.wav')
as.POSIXct(sub('.*?_','',x),format = '%Y%m%d_%H%M%S.wav',tz = 'UTC')
#[1] "2016-06-02 18:30:00 UTC" "2016-06-02 14:30:00 UTC"
您也可以使用lubridate::ymd_hms
:
lubridate::ymd_hms(sub('.*?_',x))
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。