pandas.read_parquet 错误地解释了日期字段

2023-12-03

我有一个镶木地板文件,其中有一个日期字段,名为'BusinessDate'。当我将其导入数据框时,它会自动确定字段 BusinessDate 是日期(datetime64[ns, UTC]).

然而,由于这种格式'BusinessDate'场是'YYYY-MM-DD',其中一些日期导入不正确。例如。 2013-02-01 应该是 2013 年 2 月 1 日,但实际上被解释为 2013 年 1 月 2 日。

是否可以设置正确的格式'BusinessDate'导入镶木地板文件时的字段?

最初我使用:

df.read_parquet('data.parquet')

如果我有一个 csv 文件,我的解决方案是:

custom_date_parser = lambda x: datetime.strptime(x, '%Y-%m-%d')
df.read_csv('data.csv',parse_dates=['BusinessDate'], date_parser=custom_date_parser)

但是,当我尝试使用类似的代码来尝试修复日期问题时,它会给出错误:

custom_date_parser = lambda x: datetime.strptime(x, '%Y-%m-%d')
df.read_parquet('data.parquet',parse_dates=['BusinessDate'], date_parser=custom_date_parser)

该错误是由于以下事实引起的:read_parquet函数没有parse_dates or date_parser属性,read_csv功能确实有。

所以我的问题是:如何在 pandas 中导入镶木地板文件,以便'BusinessDate'字段以正确的格式正确导入为日期,即'YYYY-MM-DD'就我而言。或者如果熊猫无法做到这一点read_parquet功能,是否可以导入'BusinessDate'字段作为 a 中的字符串字段pandas.DataFrame以便我之后可以更改它?


很好的问题。 Pandas 还没有这方面的功能。

阅读 parquet 后,我​​建议您使用 lambda 函数,如下所示:

df['new_col'] = df['col'].apply(lambda x: datetime.strptime(x, '%Y-%m-%d'))
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

pandas.read_parquet 错误地解释了日期字段 的相关文章

随机推荐

  • 扩展命令提示符的环境变量

    我想运行一个 cmd exe 它会在调用时而不是在解析命令时评估环境变量 如果我将 BASE 设置为 2 并回显它 我应该会看到数字 2 尽管运行此脚本无法正确设置基数 预期行为 C Users schristo gt cmd exe X
  • 如何从 ASP.Net MVC 列表页面使用 jQuery UI 模态表单

    我正在尝试使用这个 http jqueryui com demos dialog modal form I have
  • 从数据库获取自动编号值

    代码如下 在我的代码中 我更新现有行 从现有表 程序从文本框中获取所有更新的值 表的末尾 最后一列 有一个名为 codonsAutoNum 的自动编号字段 我不知道如何从数据库获取值 自动编号值 我需要 在代码中 有 的位置的值 感谢大家的
  • ES6 生成器 - 第一个 next() 没有 Yield 表达式的示例

    对于 ES6 生成器 为什么作者这篇博文 say from http davidwalsh name es6 generators 第一个 next 调用 我们不发送任何内容 为什么 因为没有yield 表达式来接收我们传入的内容 不是第一
  • 消息:使用 selenium python 发送密钥 [search_bar.send_keys(course_name)] 到 Youtube 搜索栏时元素不可交互错误

    我尝试了 StackOverflow 的大部分解决方案 但对我不起作用 我正在尝试使用 selenium python 将一些课程名称发送到 youtube 搜索栏 它以前工作正常 但现在在执行此操作时出现此错误 search bar se
  • Azure AD 重定向 URI 从 https 更改为 http

    Overview 我在 Azure AD 门户注册了一个应用程序 重定向机制在开发过程中一直运行良好 但 Oauth 重定向 URI 上发生了奇怪的转换 客户端应用程序是使用 Django 框架并使用 MSAL for Python 库构建
  • 防止 UISearchDisplayController 隐藏导航栏

    每当用户开始编辑UISearchDisplayController的搜索栏 搜索控制器将变为活动状态 并在显示搜索表视图时隐藏视图的导航栏 是否可以预防UISearchDisplayController隐藏导航栏而不重新实现它 我刚刚对 U
  • 检查 varchar2 中声明的有效日期

    我的表如下所示 在 VARCHAR2 中声明 YMD 20101010 20101112 20100231 20150101 20160101 我必须检查有效日期并从 sysdate 中过滤未来日期 这些日期的格式有效 我编写如下函数来检查
  • 如何在 Struts 2 中创建一个 Action 来接受来自用户界面的动态 JSON 数据?

    我想要一个Action类应该接受从用户界面构造的 JSON 字符串 其中没有 setter 和 getterAction class 是否可以 如果是这样 我需要遵循哪些约定Action类和配置文件中 struts xml 将它们发布为带有
  • 最通用的高阶约束,描述相对于关系排序的整数序列

    在 CLP FD 中 我们经常需要声明 这是整数和有限域变量的列表 有时 strictly 升序 降序 是否有任何 CLP FD 系统为此任务提供通用 可参数化 内置约束 SWI Prolog 提供了一个称为chain 2 这与我正在寻找的
  • 如何在 Jackson 中反序列化多个嵌套元素?

    我需要构建一个解析器来解析XML文件到一个Java目的 我用Jackson为此 请按照中提供的步骤操作THIS教程 在教程中有一节 操作 XML 中的嵌套元素和列表 我遵循了它 但不幸的是我无法获得所有所需元素的所需输出 我想输出所有作者的
  • 转到特定路线的 div 元素

    我有两条路线 从一条路线我需要通过单击按钮获取另一条路线的 div 元素 我做了类似的方式id 我们在 HTML 中这样做 但它不起作用 你能建议一个在 Angular 中做的最好的方法吗 一号公路 route1 div class div
  • RESTAssured 禁用 URL 编码无法正常工作

    我正在使用如下 URL 测试 HTTP Post 请求 https myurl com api logs 2Fvar 2flogin 2f 消息 Api Token 12332429nmdsafs 我禁用了 URL 编码 这里是我的发布请求
  • 检查机器中安装的模块列表

    我制作了一个脚本来告知管理员需要在计算机上安装的模块列表 我正在尝试检查模块是否通过下面的代码安装 奇怪的是 它显示机器中已安装的模块为not installed usr bin perl w my module list Smart Co
  • 如何使用带有预填充数据库的房间持久性库?

    我想将 Room 与预填充的数据库一起使用 但我不明白如何告诉 Room 在哪里可以找到我的数据库 我现在已经把它放进去了src main assets databases当我为 Room 数据库创建实例时 我这样创建 Room datab
  • Android:从资产文件夹复制数据库 (Sqliite) 时出错

    我在 SQLite 浏览器中设计了数据库 现在我正在尝试将其复制到我的根路径 面临的问题 复制数据库时出错 LINK 我从这个例子中得到帮助 将外部 Sqlite Db 添加到应用程序的链接 我的 DBhelper 类 package co
  • 在 Python multiprocessing.Pool 中共享可变全局变量

    我正在尝试更新共享对象 dict 使用以下代码 但这不起作用 它给了我输入dict作为输出 Edit Exxentially 我在这里想要实现的是将数据 列表 中的项目附加到字典的列表中 数据项给出字典中的索引 预期产出 2 2 1 1 4
  • MAMP PRO 崩溃; MySQL 不会在重启时启动

    今天上班时 我的电脑突然死机 崩溃了 重新启动时 MAMP 拒绝启动 mysql 我不明白为什么 肯定没有其他mysql进程在运行 我已经检查过好几次了 所以killall 9 mysqld不是解决方案 实际上我也完全重新安装了 MAMP
  • twitter4j 未发现身份验证挑战

    几天来一直尝试使用 twitter4j 发布推文 但没有运气 我想做的是让一个人在一轮结束时从应用程序的时间轴上发布他们的新最高分 这是我的代码 Override protected void onCreate Bundle savedIn
  • pandas.read_parquet 错误地解释了日期字段

    我有一个镶木地板文件 其中有一个日期字段 名为 BusinessDate 当我将其导入数据框时 它会自动确定字段 BusinessDate 是日期 datetime64 ns UTC 然而 由于这种格式 BusinessDate 场是 YY