将制表符分隔的文本文件读取到 Pandas 数据框中时出现 RunTimeError

2024-01-09

我正在将一个制表符分隔的文本文件读入 pandas 数据帧。在阅读本文时,我遇到了运行时错误。我已经浏览了与此错误相关的帖子,所有这些帖子都暗示了在迭代时不应修改字典的规则他们。就我而言,我所做的就是读取文件。这个问题如何与迭代和更改 dicts 的错误联系起来?

>>> import pandas as pd
>>> df=pd.read_csv("dummy_data.txt",header=None,chunksize=10000,error_bad_lines=False,warn_bad_lines=True,engine='c',sep="\t",encoding="latin-1")
Traceback (most recent call last):
  File "<input>", line 1, in <module>
    df=pd.read_csv("dummy_data.txt",header=None,chunksize=10000,error_bad_lines=False,warn_bad_lines=True,engine='c',sep="\t",encoding="latin-1")
  File "/home/avadhut/.virtualenvs/avadhut_virtual/lib/python3.5/site-packages/pandas/io/parsers.py", line 709, in parser_f
    return _read(filepath_or_buffer, kwds)
  File "/home/avadhut/.virtualenvs/avadhut_virtual/lib/python3.5/site-packages/pandas/io/parsers.py", line 431, in _read
    compression = _infer_compression(filepath_or_buffer, compression)
  File "/home/avadhut/.virtualenvs/avadhut_virtual/lib/python3.5/site-packages/pandas/io/common.py", line 270, in _infer_compression
    filepath_or_buffer = _stringify_path(filepath_or_buffer)
  File "/home/avadhut/.virtualenvs/avadhut_virtual/lib/python3.5/site-packages/pandas/io/common.py", line 157, in _stringify_path
    from py.path import local as LocalPath
  File "/home/avadhut/.virtualenvs/avadhut_virtual/lib/python3.5/site-packages/py/__init__.py", line 148, in <module>
    'Syslog'             : '._log.log:Syslog',
  File "/home/avadhut/.virtualenvs/avadhut_virtual/lib/python3.5/site-packages/py/_vendored_packages/apipkg.py", line 63, in initpkg
    for module in sys.modules.values():
RuntimeError: dictionary changed size during iteration

Edit 1:通过交互模式读取文件时,我在尝试读取文件时遇到相同的错误两次。第三次运行同一行不会引发任何错误。这种不稳定行为的原因可能是什么?

>>> df=pd.read_csv("product_name.txt",header=None,chunksize=10000,error_bad_lines=False,warn_bad_lines=True,engine='c',sep="\t",encoding="latin-1")

Edit 2: 要在此处复制错误,请使用指向 1000 行数据集的链接: S3 链接到数据集 https://s3.amazonaws.com/ai-labs-misc-files/dummy_data.txt

Edit 3: 找到一个有类似问题的链接:Pandas CSV 文件,偶尔有额外的列 https://stackoverflow.com/a/20062750/8229596但其中提到的标志(error_bad_lines)似乎不适用于我的情况。

>>> df = pd.read_csv("unclean.csv", error_bad_lines=False, header=None)

Edit 4:我开发了一个脚本,用于将虚拟数据(在编辑 2 中提到)加载到 pandas 数据帧,然后将其保存到 hdf5 文件。我运行这个脚本 20 次,并且没有一次遇到运行时错误。另一方面,在尝试时在交互模式下读取文件会暴露运行时错误和不稳定的行为。python 脚本与交互模式行为不同的原因可能是什么.我正在使用 Pandas ==0.22.0 和 Python==3.5.2 和 table==3.4.4

import pandas as pd
import tables

df=pd.read_csv("dummy.txt",header=None,error_bad_lines=False,warn_bad_lines=False,engine='c',sep="\t",encoding="latin-1",names=["product_name_id","current_product_name_id","product_n","active_f","create_d","create_user_n","change_d","change_user_n","ft_timestamp"])

df.to_hdf(path_or_buf="/home/avadhut/data_files/dummy_data.h5",key="dummy",mode="a",format="table")

df=pd.read_hdf("/home/avadhut/data_files/dummy_data.h5",key="dummy")
print(df.head(100))

在默认 python 解释器上运行代码,看看错误是否仍然存在。这应该是 bpython 的错误,因为我无法在默认 python 解释器上复制该问题

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

将制表符分隔的文本文件读取到 Pandas 数据框中时出现 RunTimeError 的相关文章

  • 如何配置散景图以具有响应宽度和固定高度

    我使用通过组件功能嵌入的散景 实际上我使用 plot sizing mode scale width 它根据宽度进行缩放并保持纵横比 但我想要一个响应宽度但固定或最大高度 这怎么可能实现呢 有stretch both and scale b
  • Python中#和"""注释的区别

    开始用 Python 编程 我看到一些带有注释的脚本 and comments 这两种评论方式有什么区别 最好的事情就是阅读PEP 8 Python 代码风格指南 https www python org dev peps pep 0008
  • 如何编写高效的配对算法?

    我需要一种算法的帮助 该算法可以有效地将人们分组 并确保以前的配对不会重复 例如 假设我们有 10 位候选人 candidates 0 1 2 3 4 5 6 7 8 9 并假设我们有一个先前匹配的字典 这样每个键值对即candidate
  • 01 无效令牌[重复]

    这个问题在这里已经有答案了 嘿 学习 python3有一段时间了 遇到字典和dictionary name get 方法并尝试获取随机键值 问题 data data get key 1 它有效并且返回 1 但如果我使用data get ke
  • 将 stdout 重定向到 Python 中的文件? [复制]

    这个问题在这里已经有答案了 如何将 stdout 重定向到 Python 中的任意文件 当长时间运行的 Python 脚本 例如 Web 应用程序 从 ssh 会话内启动并处于后台 并且 ssh 会话关闭时 应用程序将引发 IOError
  • Python 中的二进制相移键控

    我目前正在编写一些代码 以使用音频转换通过激光传输消息 文件 和其他数据 我当前的代码使用 python 中 binascii 模块中的 hexlify 函数将数据转换为二进制 然后为 1 发出一个音调 为 0 发出不同的音调 这在理论上是
  • Docker:通过 Gunicorn 运行 Flask 应用程序 - Worker 超时?表现不佳?

    我正在尝试创建一个用Python Flask编写的新应用程序 由gunicorn运行 然后进行dockerized 我遇到的问题是 docker 容器内的性能非常差 不一致 我最终得到了响应 但我不明白为什么性能会下降 有时我会在日志中看到
  • 检查对象数组中的多个属性匹配

    我有一个对象数组 它们都是相同的对象类型 并且它们有多个属性 有没有办法返回一个较小的对象数组 其中所有属性都与测试用例 字符串匹配 无论该属性类型是什么 使用列表理解all http docs python org 3 library f
  • 超时时杀死或终止子进程?

    我想尽可能快地重复执行子进程 然而 有时这个过程会花费太长的时间 所以我想杀死它 我使用 signal signal 如下所示 ppid pipeexe pid signal signal signal SIGALRM stop handl
  • 如何在Python中获取绝对文件路径

    给定一条路径 例如 mydir myfile txt 如何在Python中找到文件的绝对路径 例如 在 Windows 上 我最终可能会得到 C example cwd mydir myfile txt gt gt gt import os
  • 如何在Python中正确声明ctype结构+联合?

    我正在制作一个二进制数据解析器 虽然我可以依靠 C 但我想看看是否可以使用 Python 来完成该任务 我对如何实现这一点有一些了解 我当前的实现如下所示 from ctypes import class sHeader Structure
  • 从文档字符串生成 sphinx 文档不起作用

    我有一个具有以下结构的项目 我想保留 my project build here is where sphinx should dump into requirements txt make bat Makefile more config
  • 散景中的时间序列流

    我想在散景中绘制实时时间序列 我只想在每次更新时绘制新的数据点 我怎样才能做到这一点 散景网站上有一个动画情节的示例 但它每次都需要重新绘制整个图片 另外 我正在寻找一个简单的示例 我可以在其中逐点绘制时间序列的实时绘图 散景效果0 11
  • Scrapy - 不会爬行

    我正在尝试运行递归爬行 由于我编写的爬行不能正常工作 因此我从网络上提取了一个示例并进行了尝试 我真的不知道问题出在哪里 但是爬行没有显示任何错误 谁能帮我这个 另外 是否有任何逐步调试工具可以帮助理解蜘蛛的爬行流程 非常感谢任何与此相关的
  • 在 groupby 聚合函数中传递参数

    我有我引用的数据框df在代码中 我在每组的多个列上应用聚合函数 我还应用了用户定义的 lambda 函数f4 f5 f6 f7 有些功能非常相似 例如f4 f6 and f7其中只有参数值不同 我可以从以下位置传递这些参数吗字典 d 这样我
  • Pandas - 分割大的Excel文件

    我有一个大约有 500 000 行的 Excel 文件 我想将其拆分为多个 Excel 文件 每个文件有 50 000 行 我想用熊猫来做 这样它会是最快和最简单的 有什么想法如何制作吗 感谢您的帮助 假设您的 Excel 文件只有一个 第
  • 对 pandas 数据框中的每一列应用函数

    我如何以更多的熊猫方式编写以下函数 def calculate df columns mean self df means for column in df columns columns tolist cleaned data self
  • 带有整数的 np.sqrt 和 where 条件返回错误结果

    当我将 numpy sqrt 方法应用于带有 a 的整数数组时 我得到了奇怪的结果where健康 状况 见下文 对于整数 a np array 1 4 9 np sqrt a where a gt 5 Out 3 array 0 0 5 3
  • 在 pip 中为 Flask 应用程序构建 docker 映像失败

    from alpine latest RUN apk add no cache python3 dev pip3 install upgrade pip WORKDIR backend COPY backend RUN pip no cac
  • 获取长度为 n 的所有(n-选择-k)组合

    我怎样才能获得长度的所有组合 按顺序 n从数字列表中 例如 给定列表 1 2 3 4 并设置n 3 我怎样才能得到这些结果 1 2 3 1 2 4 1 3 4 2 3 4 For combinations of all possible l

随机推荐

  • 来自命令行的 ms 语音

    有没有办法从命令行使用 MS Speech 实用程序 我可以在 Mac 上执行此操作 但在 Windows XP 上找不到任何参考 我对这个主题的 2 美分 命令行俏皮话 在 Win 上使用PowerShell exe PowerShell
  • 嵌套类和 ADL

    这是代码 namespace Namespace struct L0 enum SomeEnum EnumVal struct L1 friend void f SomeEnum std cout lt lt f lt lt std end
  • Esc 键的作用类似于 html 中的重置按钮

    我有两个带有重置按钮和提交按钮的文本框 重置按钮工作正常 但是当我在这两个文本框中输入一些内容并按 esc 时 这些值就会消失 事件就像一个重置按钮 我不知道如何控制它 非常感谢您的帮助 谢谢
  • @SuppressLint 和 @TargetApi 哪个更好?

    我的应用程序存在以下问题StrictMode并添加了基本上禁用的代码片段StrictModeHelper 然而 林特抱怨setThreadPolicy 现在并建议添加 SuppressLint NewApi or TargetApi Bui
  • 如何从笔记本中查找jupyter笔记本的版本

    我希望从笔记本的单元格中返回 Jupyter Notebook 的版本 例如 要获取 python 版本 我运行 from platform import python version python version 或者获取 pandas
  • UnicodeDecodeError:“ascii”编解码器无法解码位置 304 中 0xc3 中的字节:序号不在范围内(128)

    我刚刚把电脑留在工作中 使用 Python 2 7 并有一个我刚刚完成的脚本 复制如下 它在工作中运行良好 我只想添加一两件事 但我回到家并使用 Mac 版本的 Python 3 2 2 并收到以下错误 Traceback most rec
  • 向 xcode 4 项目添加一个简单的库

    我知道这是一个非常简单的问题 但我已经为此苦苦挣扎了一段时间 我已经阅读了一些主题 但似乎仍然可以找到答案 我正在尝试添加这个DDMath解析器 https github com davedelong DDMathParser库到我现有的项
  • 有没有生成 3D 云的算法?

    所以我很想看到一种生成 3D 云对象的算法 尽可能现实 我知道有不同的云类型 https web archive org web 20130220071237 http www srh weather gov srh jetstream s
  • WPF 中的图像更新时发生 TargetInitationException

    我构建了一个显示图像的 WPF 控件 现在我想以非常快的速度改变这个形象 我构建了一个 ImageContainer 类 它保存图像并有一个 ChangedEventHandler 它在更改时更新我的 控件中的图像 执行的代码如下所示 vi
  • 接口的 XML 序列化

    我需要序列化项目中的复杂对象并将它们放入数据库中 我想使用 XML 序列化它们 以便更轻松地调试我的应用程序 我的情况与这篇文章中描述的非常相似 http geekswithblogs net SoftwareDoneRight archi
  • 将字典转换为带有属性的 XML

    我在 python 中使用 dicttoxml 将 dict 转换为 XML 我需要将 dict 转换为 XML 属性 例如 dict name Ravi age 21 college Anna University 输出 XML
  • 使用 webpacker 从 Rails 控制器渲染 js

    只是将我的 Rails 应用程序中的 js 管道替换为webpacker 大多数事情都可以正常工作 但是渲染 js 的控制器不再按预期工作 def action format js render javascript partial end
  • 将 null 与对象进行比较而不是将对象与 null 进行比较有什么问题

    我刚刚发现我可以比较null与Object像这样 if null Object 而不是比较Object with null like Object null 如果使用前一种方法可能会出现什么问题 那合法吗 如果不是那么为什么编译器接受它 它
  • 解析注册失败无论如何都会添加用户

    我正在使用 Java Parse 框架 并且有一个简单的页面 该页面调用使用电子邮件 用户名和密码注册用户的方法 如果所有输入正确 用户注册就不会出现问题 但是 即使用户注册过程失败 我也可以在其网站的 Parse 数据浏览器中看到用户已添
  • UITableView的动态高度

    如何通过约束获取 UITableView 的动态高度 它将根据行数增加 UITableView 高度 而无需在表中添加滚动条 我在 UIViewController 中添加 TableView 时遇到问题 并且 TableView 的高度不
  • 单击浏览器上的后退按钮时丢失表单数据[重复]

    这个问题在这里已经有答案了 当我单击任何浏览器时 我会丢失在下拉列表和文本输入类型的表单中输入的所有数据 这是服务器 浏览器还是编码问题 Thanks 这是浏览器问题 单击后退按钮时浏览器的行为有所不同 这种行为主要取决于用户的隐私设置 此
  • 在 Ubuntu 上使用 shell 脚本附加到 crontab

    我正在尝试在 Ubuntu 上的 crontab 中添加一行 现在 我正在做crontab e并在那里编辑 crontab 但是 我似乎找不到真正的 crontab 文件 因为crontab e似乎给你一个临时的工作副本 etc cront
  • 默认 Maven 插件版本是如何决定的?

    我想知道我何时没有在某些模块中指定插件版本pom xml像
  • Spring计划任务:监控执行持续时间

    我们在 Spring Web 应用程序中使用计划任务来发送提醒 每日摘要等
  • 将制表符分隔的文本文件读取到 Pandas 数据框中时出现 RunTimeError

    我正在将一个制表符分隔的文本文件读入 pandas 数据帧 在阅读本文时 我遇到了运行时错误 我已经浏览了与此错误相关的帖子 所有这些帖子都暗示了在迭代时不应修改字典的规则他们 就我而言 我所做的就是读取文件 这个问题如何与迭代和更改 di