如何在R中的POSIXct中格式化小数秒

我已经阅读了有关此主题的其他问题,但它们似乎不适用于我的数据集:

              Timestamp Bid.price Ask.price Bid.volume Ask.volume
 20070313 07:01:04:762  11.14122  11.14478   4.539397   1.891416
 20070313 07:01:07:608  11.13930  11.14670   1.277812   3.066750
 20070313 07:01:08:701  11.14095  11.14505   0.050396   0.050396
 20070313 07:01:11:275  11.14098  11.14502   0.226505   0.543613
 20070313 07:01:13:884  11.13930  11.14670   0.322856   0.774855
 20070313 07:01:16:588  11.13930  11.14670   0.405654   0.973569

我试过了:

as.POSIXct(fx[,1], format="%y%m%d %H:%M:%S:%OS3")
as.POSIXct(paste(fx[,1]), format="%y%m%d %H:%M:%S:%OS3")
as.POSIXct(paste(fx[,1]), format="%y%m%d %H:%M:%S")

但是我得到的只是NA...

我该如何解决?

这是数据集:

fx <- structure(list(Timestamp = c("20070313 07:01:04:762", "20070313 07:01:07:608", 
"20070313 07:01:08:701", "20070313 07:01:11:275", "20070313 07:01:13:884", 
"20070313 07:01:16:588"), Bid.price = c(11.14122, 11.1393, 11.14095, 
11.14098, 11.1393, 11.1393), Ask.price = c(11.14478, 11.1467, 
11.14505, 11.14502, 11.1467, 11.1467), Bid.volume = c(4.5393967628479, 
1.27781200408936, 0.0503959991037846, 0.226504996418953, 0.3228560090065, 
0.405654013156891), Ask.volume = c(1.89141595363617, 3.06675004959106, 
0.0503959991037846, 0.543613016605377, 0.774855017662048, 0.973568975925446
)), .Names = c("Timestamp", "Bid.price", "Ask.price", "Bid.volume", 
"Ask.volume"), row.names = c(NA, 6L), class = "data.frame")
利斯特尔

因为Timestamp一个有:整秒和分数秒之间,并没有时间解析字符串(“转换说明”,例如%Y为秒的分数)不整,你需要到最后改变:.,所以你可以解析它%OSsub可以照顾它,寻找

  • 冒号 :
  • 后跟3位数字\\d{3},已捕获(...)
  • 接下来是该行的结尾$

并替换为

  • 一段时间 .
  • 其次是被俘虏的团体。

此外,如果要查看解析的小数秒,则需要设置以下digits.secs选项:

options(digits.secs = 3)
strptime(sub(':(\\d{3})$', '.\\1', fx$Timestamp), '%Y%m%d %H:%M:%OS')
# [1] "2007-03-13 07:01:04.762 EDT" "2007-03-13 07:01:07.608 EDT" "2007-03-13 07:01:08.700 EDT"
# [4] "2007-03-13 07:01:11.275 EDT" "2007-03-13 07:01:13.884 EDT" "2007-03-13 07:01:16.588 EDT"

请注意,它会strptime插入本地时区(EDT此刻对我而言),但是您可以使用其tz参数将其设置为任何您喜欢的内容(或对数据来说应该是任何内容)

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在C中格式化小数?

来自分类Dev

如何在Pandas DataFrame中格式化特殊小数

来自分类Dev

如何在PowerBI中的群集柱形图中格式化小数?

来自分类Dev

如何在R中格式化这些时间

来自分类Dev

如何在R中格式化货币

来自分类Dev

如何在R中格式化describeBy表?

来自分类Dev

如何在 R 中格式化日期?

来自分类Dev

如何在 R 中格式化日期

来自分类Dev

如何在Grape中的参数中格式化DateTime

来自分类Dev

如何在Struts 2中格式化货币?

来自分类Dev

如何在Struts 2中格式化货币?

来自分类Dev

在外壳中格式化并显示间隔(以小数秒为单位)

来自分类Dev

如何在Excel中格式化数字和小数位数?

来自分类Dev

如何在 Flutter 中格式化 DateTime,如何在 Flutter 中获取当前时间?

来自分类Dev

如何在Angular 2中格式化JS对象中的日期?

来自分类Dev

如何在Django模板中格式化XMLtext

来自分类Dev

如何在Jmeter中格式化JSON响应?

来自分类Dev

如何在AngularJS的视图中格式化数据?

来自分类Dev

如何在Java中格式化日期范围?

来自分类Dev

如何在SQL SERVER中格式化日期时间

来自分类常见问题

如何在Vue组件中格式化货币?

来自分类Dev

如何在Aspose中格式化单元格

来自分类Dev

你如何在python中格式化日期时间

来自分类Dev

如何在Html.TextBoxFor中格式化DateTimeOffset?

来自分类Dev

如何在Qt小部件中格式化文本

来自分类Dev

如何在流星模板中格式化日期

来自分类Dev

如何在python中格式化电话号码

来自分类Dev

如何在Webmatrix中格式化GET请求的URL

来自分类Dev

如何在VBA中格式化日期和时间?