我有一系列持续时间,最长可达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 小时时间格式