python - 相同条件日期 True with Series 但 False using element

标签 python python-3.x pandas datetime series

为什么同样的条件用 Series 是 True 而直接用 Series 的同一个元素是 False?

import pandas as pd
df = pd.DataFrame({'date': pd.to_datetime('2013-11')},
     index=[0])
print(df['date'] == '2013-11')
print('')
print(df.loc[0,'date'] == '2013-11')

我得到:

0    True
Name: date, dtype: bool

False

最佳答案

因为:

  1. df['date']dtype datatime64[ns]pandas.Series
  2. df['date'] == '2013-11' 是对 pandas.Series.__eq__ 的调用,Pandas 在写入时可以做任何它想做的事情方法。

Pandas 所做的是帮助您意识到您正在将字符串与 dtype datetimeseries 进行比较。所以它试图将字符串解析为有用的东西,然后进行比较。这是 Pandas 提供的增值服务的一部分。

关于python - 相同条件日期 True with Series 但 False using element,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52841389/

相关文章:

使用单独(顺序)Python 进程的 Python Nose 单元测试

python-3.x - 电子邮件未发送excel附件

python - 使用 OrderedDict 进行 SQLAlchemy 关系()?

python - 在 Python 中格式化绘图上的时间

python - 是否有任何关于 scipy、numpy、pandas、scikit 生态系统中包之间相互依赖关系的文档? Python

python - 如何更改表单中显示的字段名称

python - 为什么我的水平滚动条在使用columnconfigure后停用

python - 如何管理服务器上的 CPU 密集型进程

python-3.x - Python-无法使Corr工作

python - 如何在pygame中存储对象先前的x位置(坐标)?