当前位置: 首页 > 面试题库 >

pandas过滤和比较日期

惠文彬
2023-03-14
问题内容

我有一个sql文件,其中包含以下数据,我将这些数据读入pandas中。

df = pandas.read_sql('Database count details', con=engine,
                     index_col='id', parse_dates='newest_available_date')

输出量

id       code   newest_date_available
9793708  3514   2015-12-24
9792282  2399   2015-12-25
9797602  7452   2015-12-25
9804367  9736   2016-01-20
9804438  9870   2016-01-20

下一行代码是获取上周的日期

date_before = datetime.date.today() - datetime.timedelta(days=7) # Which is 2016-01-20

我所试图做的是,比较date_beforedf并打印出所有行小于date_before

if (df['newest_available_date'] < date_before): print(#all rows)

显然,这会返回一个错误 The truth value of a Series is ambiguous. Use a.empty, a.bool(), a.item(), a.any() or a.all().

我应该怎么做?


问题答案:

我会做一个面具,像:

a = df[df['newest_date_available'] < date_before]

如果为date_before = datetime.date(2016, 1, 19),则返回:

        id  code newest_date_available
0  9793708  3514            2015-12-24
1  9792282  2399            2015-12-25
2  9797602  7452            2015-12-25


 类似资料:
  • 主要内容:创建数组,布尔索引,重塑数组形状,Pdans与NumPy区别,转换ndarray数组我们知道 Pandas 是在 NumPy 的基础构建而来,因此,熟悉 NumPy 可以更加有效的帮助我们使用 Pandas。 NumPy 主要用 C语言编写,因此,在计算还和处理一维或多维数组方面,它要比 Python 数组快得多。关于 NumPy 的学习,可以参考《 Python NumPy教程》。 创建数组 数组的主要作用是在一个变量中存储多个值。NumPy 可以轻松地处理多维数组,示例如下:

  • 我有一个rails生成的日期和一个jQuery生成的日期。 导轨日期打印如下: jQuery日期打印如下: 我想检查jQuery日期是大于还是小于rails日期。但是不管日期如何,jQuery日期总是被解释为比rails日期大。 为什么会这样,我怎样才能成功地比较这两个日期? 更新: 事实上,我刚刚发现问题在于它只允许1969年之前的日期。我打算代码只允许18岁以上的日期。有人知道为什么不同吗?

  • 所以今年早些时候,我在大学里接到了一个任务。任务是使用OOP程序创建一个停车场管理系统。例如,我们学习了如何使用继承、抽象类和实例。我已经完成了并通过了这个作业,所以这个问题只是为了知识目的。其中一个任务是按时间顺序对对象的 Array 列表进行排序。为此,我们学习了可比/比较器方法。但是,我无法理解它,也无法做到这一点。问题是,我们必须对数组列表中的“Vehicle”对象中的“DateTime”

  • 目前,我正努力争取与之相比的约会。更重要的是,我有一个属性Death的人,格式是YYYY-MM-DD,如果这个人已经死了(Death 我尝试了以下做法: 但我只收到来自浏览器的解析错误。我使用的是XSL1.0版,除了xmlns:XSL=“http://www.w3.org/1999/XSL/transform”之外,没有任何名称空间。

  • 用于排序的日期比较不起作用。请指教。 我的代码: 错误: 错误:找不到返回d1的符号。与(d2)比较 符号:方法比较到(日期) 位置:日期类型的变量d1 注意:某些输入文件使用或重写了不推荐的API 注意:使用-Xlint:deprecation重新编译以获取详细信息 注意:某些输入文件使用未检查或不安全的操作 注意:使用-Xlint重新编译:未选中以获取详细信息。

  • 问题内容: 我正在寻找比较应该相同的两个数据框。但是,由于浮点精度,我被告知值不匹配。我在下面创建了一个示例进行模拟。如何获得正确的结果,以便最终比较数据帧对两个单元格都返回true? 问题答案: 好的,您可以为此使用: 需要相对公差和绝对公差。这些有默认值:,分别