我在尝试从时间戳查找数据中的值时出错。我的df有一个时间戳索引。
我的时间戳是:
time = datetime.datetime.fromtimestamp(sub_data_2[0, itime])
print(time)
2021-06-29 09:53:08.805039
我的df索引是这样的:
print(df.index)
DatetimeIndex(['2021-06-30 08:45:43', '2021-06-30 08:45:45',
'2021-06-30 08:45:46', '2021-06-30 08:45:47',
'2021-06-30 08:45:48', '2021-06-30 08:45:50',
'2021-06-30 08:45:51', '2021-06-30 08:45:52',
'2021-06-30 08:45:53', '2021-06-30 08:45:54',
...
'2021-06-28 16:34:22', '2021-06-28 16:34:23',
'2021-06-28 16:34:24', '2021-06-28 16:34:25',
'2021-06-28 16:34:26', '2021-06-28 16:34:27',
'2021-06-28 16:34:28', '2021-06-28 16:34:29',
'2021-06-28 16:34:30', '2021-06-28 16:34:31'],
dtype='datetime64[ns]', name='T', length=54143, freq=None)
使用index.get_loc函数:
index = df.index.get_loc(time, method='nearest')
错误是:
pandas.errors.InvalidIndexError: Reindexing only valid with uniquely valued Index objects
我看到这个错误可能来自于数据帧的串联和索引的冲突,但这里的情况并非如此。有什么想法吗?
我有两个问题:重复和排序时间戳索引。
df = df.sort_index()
df = df.drop_duplicates()
您可以找到如下重复索引:
df[df.index.duplicated(keep=False)]
您必须首先从索引中删除重复项。这里已经回答了这个问题-回答
问题内容: 我有一个带有通常时间戳的索引: 如何为具有相同时间戳但四舍五入到最接近的第5分钟间隔的该数据帧创建一列?像这样: 问题答案: 使用算术的解决方案是正确的,但是很复杂而且很慢。而是在pandas中使用漂亮的东西: 让我们比较一下速度: 快大约1000倍!
问题内容: 我在SQL中有两个表,并且我需要能够基于早于或等于表A中的时间戳的表B中的时间戳进行联接。 因此,这是两个表和所需输出的一些虚假数据: 结案案例(表A) 分类(表B) 所需结果 因此,我知道代码需要如下所示,我只是想不出该如何处理部分($ 1和$ 2是将要传入的变量): 我知道我可以使用子选择,但这将在至少几千行,甚至可能更多的行上进行,我需要它真的要快。所以我希望有一个简单的子句可以
我需要将两个数据集与CLOSE时间戳连接起来。第一个数据集是来自移动应用程序的日记数据集: 在这里: 第二个数据集是来自加速度计日志的数据集,显示移动(=INVH)或空闲(=NIVH): 在这里: 我需要根据时间戳字段之间的时间差连接两个数据帧。例如,在df1上留下join,以查看应用程序日志数据如何与实际加速度计日志一致。简单的左连接在这里不起作用,因为在大多数情况下有一个滞后时间。所以我的问题
问题内容: 我必须索引包含“时间”字段的文档,该字段的值是一个整数,表示自纪元以来的秒数(又称为Unix时间戳)。 我一直在阅读ES文档,发现了这一点: http://www.elasticsearch.org/guide/reference/mapping/date- format.html 但是似乎如果我要提交unix时间戳并将其存储在“日期”字段中(整数字段对我没有用),我只有两个选择: 实
假设我有一个包含元素的列表。 使用Java8 streams,如何找到列表最小元素的索引(例如,在本例中为1)?
问题内容: 当我尝试将我的数据框分组到一个列上,然后尝试查找每个分组的最小值时,似乎无法在非数字列上执行此操作。然后,如何正确过滤分组依据上的最短(最早)日期? 我正在从Postgresql S3实例流式传输数据帧,因此已经配置了数据。 问题答案: 只需直接执行聚合,而不使用辅助程序即可: 与之不同的是,它将适用于任何类型。