问题标签 [posixct]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
1271 浏览

r - 在 R 中使用 POSIXlt 向 X 添加一个月的问题 - 需要使用 as.Date(X) 重置值

这在 R 中对我有用:

但这不会:

我收到此错误:

as.Date.POSIXlt(NextH2OMonth) 中的错误:非空 POSIXlt 结构中的零长度分量

任何想法为什么?我需要系统地添加一年(对于一个循环)和一个月(对于另一个循环),并将生成的更改变量与 Date 类的值进行比较,这就是使用 as.Date() 将它们转换回的原因。

谢谢,汤姆

编辑:

下面是整个代码部分。我正在使用 RStudio(版本 0.97.306)。下面的代码表示一个函数,它传递了一个包含两列(日期(CLass=Date)和排放数据(Class=Numeric))的数组,用于计算每月平均值。因此,firstDate 和 lastDate 是类 Date 并由传递的数组。此代码改编自计算年度平均值的成功代码 - 可能还有一两件事我仍然需要更改,但由于我在使用 POSIXlt 时遇到的早期错误,我无法检查后面的部分. 这里是代码:

常规 R 中也会出现同样的错误。当逐行执行时,它不是问题,当它作为脚本运行时,它就是它。

0 投票
1 回答
103 浏览

r - POSIXct 数据的意外输出

我有这个df:

我首先使用 lubridate 将“y”因子变量转换为 POSIXct,如下所示:

然后我为计算生成参考数据并继续

我得到了一个奇怪的结果,朱利安天数很高

有些年份运行良好,这是我在不同数据帧中使用的常见程序

任何的想法?

谢谢!!

0 投票
3 回答
4521 浏览

r - 按每日的特定时间切割 POSIXct

我有兴趣计算时间序列数据集中特定时间段的平均值。

给定这样的时间序列:

在过去,我已经能够计算每日平均值

但现在我正试图将一天分成特定的时间段,我不知道如何设置我的“休息时间”。

与从 0:00:24:00 开始的每日平均值相反,例如,我怎样才能获得中午到中午的平均值?

或者更奇特的是,我如何设置中午到中午的平均值,不包括晚上 7 点到早上 6 点的夜间时间(或者相反,只包括早上 6 点到晚上 7 点的白天时间)。

0 投票
4 回答
7284 浏览

r - 将日期转换为年月表示

我有一个Date, 并且有兴趣将它表示为一个整数yyyymm形式。目前,我这样做:

对于大型数据集,这非常慢。有更快的方法吗?请为您的答案提供时间,以便可以轻松比较它们。使用上面的例子。

0 投票
6 回答
623 浏览

r - 按时间对数据帧进行子采样,保持第二个值的顶部

我有一个包含小数秒时间戳的数据框。每秒有不止一行,我想过滤到一行。我想在每秒的顶部或之前提取值。

以下是数据示例:

其中,我想选择第 1 行和第 11 行。

0 投票
2 回答
3648 浏览

r - 将日期作为整数和时间作为因素组合到 R 中的 POSIXct

我知道这已经被问过好几次了,我查看了问题并遵循了建议。但是,我无法解决这个问题。

datetime.csv 可以在https://www.dropbox.com/s/6bvhk4kei4pg8zq/datetime.csv上找到

我的代码如下所示:

我尝试了 rcs 在将两列日期和时间数据转换为一列中建议的解决方案,但这似乎给出了错误。

非常感谢任何帮助。

谢谢。

0 投票
4 回答
9696 浏览

r - 准确地从字符->POSIXct->字符转换为亚毫秒日期时间

我在文件中有一个字符日期时间列。我加载文件(到 a 中data.table)并执行需要将列转换为POSIXct. 然后我需要将POSIXct值写回文件,但日期时间不会相同(因为它打印不正确)。

这个打印/格式化问题是众所周知的,并且已经讨论过好几次了。我读过一些描述这个问题的帖子。我找到的最权威的答案是针对这个问题给出的。该问题的答案提供了两个应该解决此问题的函数(myformat.POSIXctform),但它们似乎不适用于此示例:

我的sessionInfo

0 投票
2 回答
1111 浏览

r - 将纪元的秒数​​转换为本地时间

假设我有几个从 Unix 纪元 (1970-01-01 00:00:00Z) 以整数(秒)形式给出的时间戳。

如何将它们转换为本地时区的正确日期时间?我一直在查看as.POSIXct帮助页面以及关于 SO 的相关问题。在 UTC 中很容易做到,但由于某种原因,我似乎无法在本地时区或另一个时区直接做到这一点(顺便说一句,我恰好在“America/Los_Angeles”或“PST5PDT”,其中根据白天节省是否在指定时间生效,变为“PST”或“PDT”;所以我通常指定基于位置的时区,而不是“PST”或“PDT”,这很挑剔)。

示例的设置:

perl 中的快速验证:

首先,显而易见的(UTC):

以下是我尝试过但不起作用的事情:

在我的智慧尽头,这给了我正确的结果

顺便说一句,在我的系统上:

所以看来我的设置和本地时区是正确的。

知道我在上面不起作用的线路上做错了什么吗?

同时,我将使用以下技巧,希望对其他人有用:

0 投票
3 回答
9873 浏览

r - 修改 POSIXct 对象的时区而不更改显示

我有一个POSIXct对象,并且想更改它的tz属性而不用 R 来解释它(解释它意味着更改日期时间在屏幕上的显示方式)。

一些背景:我正在使用fasttime来自 S.Urbanek 的包,它接受字符串并POSIXct非常快速地将其转换为。问题是字符串应该代表“GMT”中的日期时间,而我的数据不是这样。

我最终得到一个POSIXct对象tz=GMT,实际上它是tz=GMT+1,如果我改变时区

那么它将被“显示”为GMT+2(基础价值永远不会改变)。

编辑:这是一个例子

如何在没有 R 的情况下更改此属性来解释它,也就是如何更改 tzone 并仍然将日期时间显示为"2011-01-01 12:32:23.233"

编辑/解决方案,@GSee 的解决方案相当快,lubridate::force_tz 非常慢

0 投票
2 回答
611 浏览

r - 将 POSIXct 对象强制为 Date 对象

可重现的代码:

从代码中您可以看到,当我尝试将 POSIXct 对象强制为 Date 对象时,每个日期都会返回 1 天。

我想在运行此代码时保留原始日期:我应该在我的代码中修改什么?

这些是我的会话信息: