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

如何使用“”读取CSV行?

司空坚
2023-03-14
问题内容

琐碎的CSV行可以使用字符串分割功能分割。但是有些行可能有",例如

"good,morning", 100, 300, "1998,5,3"

因此,直接使用字符串拆分将无法解决问题。

我的解决方案是先使用来分割行,,然后使用组合字符串",然后再在字符串的开头或结尾进行组合。

解决此问题的最佳做法是什么?

我对此是否有Python或F#代码段感兴趣。

编辑: 我对实现细节更感兴趣,而不是使用库。


问题答案:

Python中有一个csv模块,可以处理此问题。

编辑 :此任务属于“构建词法分析器”类别。完成此类任务的标准方法是构建状态机(或使用将为您完成任务的lexer库/框架)。

用于此任务的状态机可能仅需​​要两个状态:

  • 最初的一个,它读取除逗号和换行符以外的所有字符作为字段的一部分(例外:前导和尾随空格),逗号作为字段分隔符,换行符作为记录分隔符。当遇到开盘报价时,它进入
  • 读引号字段状态,其中不包括引号在内的每个字符(包括逗号和换行符)都被视为字段的一部分,引号后没有引号意味着读引号字段的结尾(返回初始状态),后跟引号用引号将其视为单引号(转义引号)。

顺便说一下,您的串联解决方案将在"Field1","Field2"或上中断"Field1"",""Field2"



 类似资料:
  • 我正在通过Spark使用以下命令读取csv文件。 我需要创建一个Spark DataFrame。 我使用以下方法将此rdd转换为spark df: 但是在将rdd转换为df时,我需要指定df的模式。我试着这样做:(我只有两列文件和消息) 然而,我得到了一个错误:java。lang.IllegalStateException:输入行没有架构所需的预期值数。需要2个字段,但提供1个值。 我还尝试使用以

  • 问题内容: 当我卷曲到API调用链接时http://example.com/passkey=wedsmdjsjmdd 我以csv文件格式获取员工输出数据,例如: 如何使用python解析。 我试过了: 但它不起作用,我出现了一个错误 谢谢! 问题答案: 您需要替换为urllib.urlopen或urllib2.urlopen。 例如 这将输出以下内容 最初的问题被标记为“ python-2.x”,

  • 问题内容: 我的csv正在读入System.out,但是我注意到任何带空格的文本都移到下一行(作为返回\ n) 这是我的csv的启动方式: 运行我的应用程序后,任何带有空格(地址1)的单元格都将扔到下一行。 因此,这是控制台中的结果: 我使用扫描仪的方式有误吗? 问题答案: 这应该工作。 对于CSV文件: 输出为:

  • 本文向大家介绍如何使用JavaScript从* .CSV文件读取数据?,包括了如何使用JavaScript从* .CSV文件读取数据?的使用技巧和注意事项,需要的朋友参考一下 要使用JavaScript读取.CSV,请使用开源CSV解析器Papa Parser。以下是功能- 开源的 使用多线程CSV解析器解析数百万个数据 支持多种网络浏览器 使用解析器,您可以轻松地跳过注释字符 假设您的CSV文件

  • 我在尝试生成一个简单DF的共线性分析时遇到了问题(见下文)。我的问题是,每次尝试运行该函数时,都会检索到以下错误消息: 下面是我正在使用的代码 我试图运行函数的DF如下所示。 我在这里有两个猜测;但不知道如何解决这个问题: -猜测1:np。arrange导致与标头发生某种冲突 -猜想2:问题来自blankseperator,它阻止函数正确地从一列跳转到另一列。问题是,我的CSV文件已经有分隔符(我

  • 问题内容: 我正在尝试在pandas中读取较大的csv文件(大约6 GB),并且遇到以下内存错误: 任何帮助吗? 问题答案: 该错误表明机器没有足够的内存来一次将整个CSV读入。假设你一次也不需要整个数据集都在内存中,那么避免该问题的一种方法是分批处理CSV(通过指定chunksize参数): 该参数指定每个块的行数。(当然,最后一块可能少于行。)

  • 我正在尝试使用spack-csv从spack-shell中的aws s3读取csv。 下面是我所做的步骤。使用下面的命令启动spack-shell 箱子/火花壳——包装com。数据块:spark-csv\u 2.10:1.2.0 在shell中,执行以下scala代码 获取以下错误 我在这里错过了什么?请注意,我可以使用 同样的scala代码在databricks笔记本中也可以正常工作 在spar

  • 问题内容: 我有一个包含内容的文件 如何使用Python 阅读? 同样,如果我有 如何data使用Python 写入CSV文件? 问题答案: 以下是一些最小的完整示例,这些示例如何读取CSV文件以及如何使用Python编写CSV文件。 Python 2 + 3:读取CSV文件 Python 之后,的内容data_read是 Unicode和Python 2.X 如果要编写Unicode,则必须安装