我有一系列持续时间,最长可达118小时,格式如此"118:34:42",其中118小时,34小时,42小时.输出应该是几秒钟.
我想将它转换为R中的某种时间类型,但我看过的大多数库都想添加一个日期(lubridate,zoo,xts),或者返回"NA",因为时间超出了24小时不等.我可以解析字符串并返回几秒钟,但我想知道是否有更快的方法.
我对R来说有点新手(可能还有3个月的工作时间).
任何帮助搞清楚如何处理这一点将不胜感激.
例:
library(lubridate)
x <- c("118:34:42", "114:12:12")
tt <- hms(x)
Error in parse_date_time(hms, orders, truncated = truncated, quiet = TRUE) :
No formats could be infered from the training set.
#try another route
w <- "118:34:42"
tt2 <- hms(w)
tt2
#[1] NA
z <- "7:02:02"
tt3 <- hmw(z)
tt3
#[1] "7H 2M 2S"
Run Code Online (Sandbox Code Playgroud) 我试图了解我的数据库上设置的时间戳中的字节是什么意思。它们如何计算以生成更具可读性的日期?
我正在使用以下查询来获取我需要的数据:
SELECT systimestamp
,DUMP (systimestamp)
,sessiontimezone
FROM dual;
Run Code Online (Sandbox Code Playgroud)
我上面查询的输出是:
+-------------------------------------+-----------------------------------------------------------------+------------------+
| systimestamp | dump(systimestamp) | sessiontimezone |
+-------------------------------------+-----------------------------------------------------------------+------------------+
| 31-JUL-15 08.55.06.157047000 +00:00 | Typ=188 Len=20: 223,7,7,31,8,55,6,0,216,88,92,9,0,0,5,0,0,0,0,0 | Europe/Bucharest |
+-------------------------------------+-----------------------------------------------------------------+------------------+
Run Code Online (Sandbox Code Playgroud)
我在网上找到了一些资源来解释字节的含义(这里),但规则在我的场景中不匹配。
例如:223 不是世纪 + 100 等。
我尝试这样做的原因是因为我在比较timestamp(3)
列中的值时遇到了一个问题systimestamp
,我正在尝试编写一个脚本来验证我的问题/解决方案是否与此处解释的相同。
任何帮助表示赞赏。
我有一个航班行程计划,需要获取出发时间和到达时间之间的差额。我从数据中获得这些指定的时间作为String。这是我的问题:
import static java.time.temporal.ChronoUnit.MINUTES;
import java.time.LocalTime;
import java.time.format.DateTimeFormatter;
public class test2 {
public static void main(String[] args) {
DateTimeFormatter dateFormat = DateTimeFormatter.ofPattern("HHmm");
LocalTime departure = LocalTime.parse("1139", dateFormat);
LocalTime arrival = LocalTime.parse("1435", dateFormat);
LocalTime a = LocalTime.parse("0906", dateFormat);
System.out.println(MINUTES.between(departure, arrival));
System.out.println(MINUTES.between(arrival, a));
}
}
Run Code Online (Sandbox Code Playgroud)
输出:
176
-329
Run Code Online (Sandbox Code Playgroud)
第一次返回11:39和14:35之间的差异就好了。但是第二个区别只是5小时,而应该是19小时。我该怎么解决,我在做什么错呢?
任何帮助将不胜感激。
编辑:我正在使用图来存储我的数据。两个机场之间的最短路线的示例是这样的:
Route for Edinburgh to Sydney
1 Edinburgh, 1139, TK3245, Istanbul, 1435
2 Istanbul, 0906, TK4557, Singapore, 1937
3 Singapore, 0804, QF1721, Sydney, 1521
Run Code Online (Sandbox Code Playgroud)
这些是使我们从EDI飞往SYD的3航班。上面输出的格式是(城市,出发时间,航班号,目的地,到达时间)。
我最近开始使用jqPlot.生成的图形看起来很棒,我喜欢它.这里和那里有一些小东西需要学习,但总的来说它很棒.
我正在使用堆叠条生成并遇到了一个令人讨厌的问题.基本上,我希望从Y轴的0到24小时,X轴上的天数,以及在图表上绘制某个活动的秒数的12小时时间.但是,我希望这些日子(午夜)从图表的顶部开始,然后到底部.
我可以使用'min'和'max'的倒数轻松地翻转数据,但是当我试图翻转滴答声时会出现问题; 基本上,"时间".
我的系列默认设置为隐藏轴:
seriesDefaults: {
renderer: $.jqplot.BarRenderer,
yaxis: 'y2axis'
},
Run Code Online (Sandbox Code Playgroud)
我把一个占位符系列(值为全0,例如:[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0])与单独的yaxis联系以绘制日期刻度:
series: [
{ show: true, yaxis: 'yaxis', }
],
Run Code Online (Sandbox Code Playgroud)
我可以通过更改默认y轴上的最小值和最大值并隐藏它来翻转值:
y2axis:{
min: 24,
max: 0,
showTicks: false
}
Run Code Online (Sandbox Code Playgroud)
然后我设置刻度,并使用DateAxisRenderer格式化它们:
yaxis:{
renderer:$.jqplot.DateAxisRenderer,
ticks: ['0', '2', '4', '6', '8', '10', '12', '14', '16', '18', '20', '22', '24'],
tickOptions: { formatString: '%I:%M %p' }
}
Run Code Online (Sandbox Code Playgroud)
这将创建一个yaxis,时间为从上午12:00到下午12:00,以该格式返回12:00 AM.但是从图的底部开始递增.
显然,在'yaxis'上翻转min和max将没有任何结果,因为只有占位符值,它只会翻转值.我将如何翻转轴值,以便时间(从底部)24,22,20 ......等等,?
感谢您的帮助.
我的要求是以 hh:mm 格式在网页上显示日期。但是,如果它是一位数字,则不应在小时值之前显示零。
例如 - 它应该显示为:11:30 AM、9:15 AM、1:00 PM。
我试图解决这个问题,但唯一的问题是从 1 位小时值中删除额外的 0。
输入时间格式为 - hh:mm:ss
。
日期值最初是一个字符串。它首先被解析为以下格式的日期 -
final SimpleDateFormat dfParse = new SimpleDateFormat("HH:mm:ss");
startTimeFmt = dfParse.parse(startTime);
Run Code Online (Sandbox Code Playgroud)
然后它被格式化为以下格式 -
final SimpleDateFormat dfFormat = new SimpleDateFormat("hh:mm a");
startTime = dfFormat.format(startTimeFmt);
Run Code Online (Sandbox Code Playgroud) 是否可以以倒计时样式格式化秒?例如,如果我有var seconds = 3662
,我该如何显示:1 hour 1 minute 2 seconds
。
我尝试使用,formatDistanceStrict(3662)
但这只是打印小时:1 hour
。
是否有内置方法来显示分钟和秒?我不想写 100 行代码来让它工作(就像互联网上的其他例子一样)
我们显示一列日期和时间,并使用 Moment.js 来格式化显示的文本:
假设日期是 2013 年 9 月 9 日,时间是 08:00 AM。
var formatted = moment(adate).format("L LT");
Run Code Online (Sandbox Code Playgroud)
日期是完美的并且用零填充,例如:09/22/2013
时间未补零;我 8:00 到
有没有办法告诉 Moment.js 将时间填零,以便我的日期和时间列看起来不错?
我使用的是2.1.0版本。
这怎么可能存储在东西转换DB
为varchar(6)
(例如,180000这实际上是在一种格式HHmmss
)来的时候,我尝试以下,但不会工作
select convert(time,'180000')
select cast('180000' as time)
Run Code Online (Sandbox Code Playgroud) 我正在使用Go with logrus,但我发现时间字段始终以本地时间格式化.如何将logrus的时间更改为UTC时间?
谢谢
如何使用 Javascript 检查用户是否使用 12 小时或 24 小时时间格式,无论是否使用像 moment.js 这样的第三方库我也尝试过,new Date().toLocaleString()
但它没有在 Firefox 和 google chrome 中进行测试。firefox 始终显示 12 小时格式,chrome 始终显示 24 小时时间格式