pandas - 使用 pandas 从日期时间列中选择行

标签 pandas datetime slice

我有一个包含许多列的数据框,其中一列(接收时间)已正确转换为日期时间

id   receivedtime   
1    2020-09-08 00:35:12  
2    2020-09-09 06:16:09  
3    2020-09-10 12:47:04
4    2020-09-08 15:57:05

等等。我只想选择特定日期的那些(这类似于这篇文章: subsets from a datetime column ,这有帮助,但对我不起作用)。我尝试做一个简单的替换:

df[df["receivedtime"]=="2020-09-10"] 

但我得到了一个空的数据框作为返回。我相信它与小时、分钟和秒有关。显然,一种方法是从日期时间中删除该信息,但我想保留整个结构。我什至尝试使用 dt.datetime 但似乎没有任何效果。这里出了什么问题?

感谢任何帮助。

最佳答案

这是因为您的receivedtime并不总是准确的日期,即时间等于00:00:00。例如,尝试使用 dt.normalize() 从时间戳中获取日期:

 df[df["receivedtime"].dt.normalize()=="2020-09-10"] 

输出:

   id        receivedtime
2   3 2020-09-10 12:47:04

关于pandas - 使用 pandas 从日期时间列中选择行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64068683/

相关文章:

python pandas如何将不同数据框中的其他值乘以列

python - 将 'th' 格式的日期转换为日期时间以进行日期比较?

go - 如何在不进行迭代的情况下打印指针 slice 以获取值而不是它们的地址?

python - 使用日期时间之前和之后的位置从 DataFrame 中插入位置

perl - 出乎意料的短 Perl 切片

javascript - 为什么 .slice() 不能与 Float32Array() 一起使用,但可以与 Array() 一起使用? [JavaScript]

Python Pandas : Updating row based on value from another column

python-3.x - 如何用 python 中 null 之前的所有前值和 null 之后的第一个后续值的平均值填充空值?

python - 是否有一个用于构建平均价格的 Python 函数,它以 2 个数组作为参数

android - 在 Kotlin 中将时间戳值转换为 12/24 小时时间值