读取带有转义字符的 csv

2024-01-10

我有一个 csv 文件,其中包含一些文本。我想对这段文本进行标记(拆分为单词列表),但我遇到了如何处理的问题pd.read_csv解释转义字符。

我的 csv 文件如下所示:

text, number
one line\nother line, 12

代码如下:

df = pd.read_csv('test.csv')
word_tokenize(df.iloc[0,0])

输出是:

['one', 'line\\nother', 'line']

而我想要的是:

['one', 'line', 'other', 'line']

问题是pd.read_csv()不解释\n作为换行符但作为两个字符 (\ and n).

我尝试过设置escapechar论证'\' and to '\\'但两者都只是从字符串中删除斜杠,而不对换行符进行任何解释,即字符串变成on one linenon other line.

如果我明确设置df.iloc[0,0] = 'one line\nother line', word_tokenize工作得很好,因为\n这次实际上被解释为换行符。

理想情况下,我会简单地改变方式来做到这一点pd.read_csv()解释该文件,但其他解决方案也可以。


这个问题的措辞有点不好。我猜pandas逃离\字符串中很混乱nltk.word_tokenize. pandas.read_csv只能使用一个分隔符(或正则表达式,但我怀疑你想要这样),所以它总是将文本列读取为"one line\nother line",并转义反斜杠以保留它。如果你想进一步解析和格式化它,你可以使用转换器。这是一个例子:

import pandas as pd
import re

df = pd.read_csv(
         "file.csv", converters={"text":lambda s: re.split("\\\\n| ", s)}
)

以上结果为:

                       text   number
0  [one, line, other, line]       12

Edit:如果您需要使用nltk要进行拆分(假设拆分取决于语言模型),您需要在传递到之前对字符串进行转义word_tokenize;尝试这样的事情:

lambda s: word_tokenize(s.encode('utf-8').decode('unicode_escape')

Note:查询中的匹配列表非常棘手,因此您可能需要通过更改 lambda 将它们转换为元组,如下所示:

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

读取带有转义字符的 csv 的相关文章

  • 如何分组显示argparse子命令?

    对于具有许多子命令的程序 我想在 help 输出中显示它们按逻辑分组 Python argparse 有一个add argument group http docs python org library argparse html argp
  • 为什么 Python 中的无分支函数和内置函数速度较慢?

    我发现了 2 个无分支函数 它们可以在 python 中查找两个数字的最大值 并将它们与 if 语句和内置 max 函数进行比较 我认为无分支或内置函数将是最快的 但最快的是 if 语句函数 有人知道这是为什么吗 以下是功能 If 语句 2
  • str_getcsv到php中的多维数组

    我有这样的 csv 值 csv data test this thing hi there this is cool dude have fun 我想获取整个 CSV 字符串并将其读入多维数组 以便得到 array array test g
  • 如何检查Docker中是否安装了python包?

    我使用Dockerfile成功构建了一个容器 但是 我的代码在容器中不起作用 如果我手动安装所有软件包 它确实有效 我假设我搞砸了一些导致 docker 没有正确安装软件包的事情 所以 我想检查Docker容器中是否安装了python包 最
  • 如何获取一个类的所有实例

    我是一名初学者 正在学习 Python 我想创建一个课程Person 在构造函数中 我想将我创建的每个实例放入一个名为 实例 的集合中 然后我希望实例 方法返回所有实例 我怎样才能做到这一点 class Person Type annota
  • python下安装xgboost 32位msys失败

    尝试安装 xgboost 失败 Windows 和企业版版本为 Anaconda 2 1 0 64 位 我该如何继续 我一直在使用 R 似乎从 RStudio 在 R 中安装新包相当容易 但在间谍程序中则不然 因为我需要进入命令窗口来执行此
  • 计算两个节点之间的最长路径 NetworkX

    我正在尝试使用 Networkx 制作甘特图 网络中的所有节点都是完成项目所需执行的 任务 使用 Networkx 可以轻松计算项目的总时间 但是制作甘特图我需要每个节点的最新启动 NetworkX 包含一个函数 dag longest p
  • 如何在 django admin 中使用自定义字段进行搜索

    我有一个模型并已注册到管理员 并且我已使用自定义字段在列表中显示 class ReportsAdmin admin ModelAdmin def investment self inst return models OrderDetail
  • 调度算法,找到设定长度的所有非重叠区间

    我需要为我的管理应用程序实现一种算法 该算法将告诉我何时可以将任务分配给哪个用户 我实现了一个蛮力解决方案 它似乎有效 但我想知道是否有更有效的方法来做到这一点 为了简单起见 我重写了算法以对数字列表进行操作 而不是数据库查询等 下面我将尝
  • 如何在Python中的字符串中插入变量值

    这是一个简单的例子 amount1 input Insert your value amount2 input Insert your value print Your first value is amount1 your second
  • 如何在 django-rest-framework 查询集响应中添加注释数据?

    我正在为查询集中的每个项目生成聚合 def get queryset self from django db models import Count queryset Book objects annotate Count authors
  • Python 正则表达式中的 \B+ 与 [\B]+ 与 [^\b]+

    我在回答 SO 问题时遇到了一个我不明白的问题 我创建了一个简化的示例来说明该问题 场景 我正在测试两个标记 不是随机的英语单词 在字符串中至少相距一定距离 在这个例子中 我们有一个动物列表 我们要确保在羊和狼之间至少还有其他三种动物 否则
  • Python - 根据条件调用函数

    我想知道是否有一种简洁的方法来根据条件调用函数 我有这个 if list 1 some dataframe df myfunction 我想知道这是否有可能三元运算符 http book pythontips com en latest t
  • 在 Django 中使用 path() 找不到 404

    我刚刚查看 django 并尝试通过视图列出书籍id作为 URL 的参数books urls py 但出现 404 页面未找到错误 当我在浏览器中输入此网址时 我没有发现网址有什么问题 http 192 168 0 106 8000 boo
  • Mxnet - 缓慢的数组复制到 GPU

    我的问题 我应该如何在 mxnet 中执行快速矩阵乘法 我的具体问题 数组复制到 GPU 的速度很慢 对此我们能做些什么呢 我创建随机数组 将它们复制到上下文中 然后相乘 import mxnet as mx import mxnet nd
  • 如何在 Windows 10 上将 ipynb 文件与 Jupyter Lab(来自 Anaconda)关联

    我使用 Windows 10 Jupiter Lab 是从 Anaconda 安装的 我想交往ipynb使用 Jupyter Lab 保存文件 这样 当我双击ipynb文件应使用 Jupyter Lab 打开 我该怎么做 Install n
  • 删除aws beanstalk上的uuid python包

    这是针对所提出问题的后续帖子 问题here https stackoverflow com questions 44421761 flask beanstalk deployment errors 以防万一对其他人有用 自从第一篇文章以来
  • Pandas 数据透视表同时包含多列

    我怀疑是否pandas pivot table可以一次接受两列并单独处理它们 而不是分层处理 假设我有以下数据框 id date day val 101 11 1 1 1 2 1 101 11 1 2 2 2 2 101 11 1 3 3
  • 在绘图中的线间隙之间添加注释

    I have a graph like this 而不是在上面的日子symbol 我想知道是否有办法可以在行之间添加此注释 从一个点到另一个点 如果以防万一 这可能是重复的 我深表歉意 This is my expected output
  • 网站可以检测您何时将 Selenium 与 chromedriver 结合使用吗?

    我一直在使用 Chromedriver 测试 Selenium 我注意到有些页面可以检测到您正在使用 Selenium 即使根本没有自动化 即使我只是通过 Selenium 使用 Chrome 手动浏览 Xephyr https en wi

随机推荐

  • Xcode 看不到我的 iOS 设备,但 iTunes 可以

    我有一个奇怪的问题 我的 Mac 上安装了装有 iOS 5 0 1 9A405 的 iPad 和 iOS SDK 5 0 1 以及 Xcode 4 2 Build 4C199 Xcode 看不到我的设备 它像往常一样说 iOS设备 而不是
  • Kafka Streams.allMetadata() 方法返回空列表

    所以我正在尝试使用 Kafka 流进行交互式查询 我有 Zookeeper 和 Kafka 在本地运行 在 Windows 上 我使用 C temp 作为 Zookeeper 和 Kafka 的存储文件夹 我已经设置了这样的主题 kafka
  • 在 Flutter 中更新下拉数据出现错误

    我正在开发一个小部件 其中包含dropdownbutton在颤振中 该小部件创建dropdownmenuitems向用户传入的 url 发出请求后 我已经看到正在拨打的电话和有效的响应 但是当我使用setState要更新下拉列表的数据源 我
  • 你能从 lua 修改 C 结构体吗?

    我希望能够拥有这个 Lua 代码 function myfunc s print s value s value 7 end 它应该适用于以下 C 代码 struct MyStruct float value void func MyStr
  • Func 委托中的 out 参数修饰符 (C#)

    我是 C 的初学者 只是一个关于 Func delegate 的问题 public delegate TResult Func
  • angularjs:在 ui-bootstrap 模式中使用指令

    我不知道如何从使用 dialog 服务创建的模式中调用指令 该指令还应该能够看到模式上的按钮并覆盖它们的 ng click 操作 这是我的模态模板 div class modal header h1 Rechercher h1 div di
  • 如何为Apple Watch添加加载视图?

    我想在按下 WKInterfaceButton 后显示加载视图 苹果提供的视图 我需要这个 因为按下 WKInterface 按钮后 我将调用主 iPhone 应用程序来执行一些服务调用 这将需要一些时间才能返回响应 WKInterface
  • 从 Visual Studio 2012 签入 TFS 后,所有文件都标记为只读

    我有两个项目的解决方案 我刚刚标记了解决方案并签入了它 现在所有文件的左侧都有蓝色挂锁的小图像 这显然意味着它们被标记为只读 到目前为止 我一直只使用 Tortoise SVN 这是我第一次签入 TFS 那么为什么会发生这种情况 或者如果这
  • 防止TinyMCE删除span元素

    这是问题演示 你可以在这里尝试一下 http fiddle tinymce com SLcaab http fiddle tinymce com SLcaab 这是TinyMCE默认配置 减去所有插件 使用扩展有效元素 跨度 1 打开 Ht
  • 如何在 Linux 和 Solaris 上编译 C?

    我想制作一个可以在 Linux 和 Solaris 中编译的 Makefile 我知道如何单独执行此操作 但如何将两者结合起来并能够检测我正在使用哪种操作系统 我试图仅对一个简单的 C 文件执行此操作 但更改的是编译器的名称 GNU Aut
  • 在 C++ 中,编译器“内联”函数对象意味着什么?

    在维基百科中它表示此类对象与 for each 一起使用时具有性能优势 因为编译器可以 内联 它们 我对这在这种情况下的确切含义有点模糊 或者在我不好意思说的任何情况下 谢谢你的帮助 最后一个参数为for each模板是一个functor
  • iOS 12 在 QuickType 栏中建议电话号码

    Lyft 如何在 QuickType 栏中建议我的电话号码 以便我无需手动输入 我知道 Apple 在 iOS 12 中引入了自动填充用户名 密码 安全代码等功能 看起来此电话号码建议可能使用类似的功能 但我不知道如何让我的任何应用程序建议
  • http://schema.openid.net/contact/email 和 http://axschema.org/contact/email 之间的区别

    何时使用http schema openid net contact email http schema openid net contact email以及何时使用http axschema org contact email http
  • 捕获信号:使用成员函数作为信号处理程序

    我有一个对象在无限循环中执行一些工作 这main 实例化该对象并调用run 方法 由于我不想使用线程 因此我需要一个解决方案来使我的对象停止运行 下面你就可以看到我的想法了 struct Foo void run running 1 whi
  • 如何使用 C# 启动或停止远程计算机中的 IIS 和 Windows 服务

    这段代码出现异常 尽管我在远程计算机上拥有管理员权限 class Program static void Main string args var sc new System ServiceProcess ServiceController
  • Docker 在构建时组成缺失的纱线依赖项

    在Dockerfile中运行yarn install时无法获取node modules文件夹 test sof docker compose yml Dockerfile package json yarn lock docker comp
  • HTTP 错误 503。该服务在简单的 ASP.NET 4.0 网站下不可用 [关闭]

    Closed 这个问题是与编程或软件开发无关 help closed questions 目前不接受答案 我的本地笔记本电脑上发生了一些奇怪的事情 我在本地工作了很长时间的网站没有启动 为了解决这个问题 我创建了一个仅包含 index ht
  • AngularJS 会忽略 HTTP 标头中的 Set-Cookie

    我正在开发一个基于客户端 AngularJS 和服务器端 API Tomcat Jersey for WS 的 Java 应用程序 我的API的某些路径受到限制 如果用户没有会话 则返回的响应状态为401 在客户端 401 http状态被拦
  • 了解类对象构造

    我正在阅读 N3797 的第 12 7 条 给出以下示例 struct X int i struct Y X Y non trivial struct A int a struct B public A int j Y y non triv
  • 读取带有转义字符的 csv

    我有一个 csv 文件 其中包含一些文本 我想对这段文本进行标记 拆分为单词列表 但我遇到了如何处理的问题pd read csv解释转义字符 我的 csv 文件如下所示 text number one line nother line 12