如何从CSV中获取标题。在CSV文件中仅在ruby中有标题行的情况下读取

thonanth西德夫

因此,我一直在弄乱Ruby中的CSV文件,遇到了一个问题。在我的测试中,在仅包含标题行的文件上调用x = CSV.read(file,headers:true)将返回一个表,该表转换为数组时将返回[[]],并调用x .headers返回[]。我可以通过设置return_headers:true来解决此问题,但实际上我不希望文件返回其标题,我只想要标题。当我添加伪造的第二行时,x.headers实际上返回标头,并且:return_headers不需要设置为true。

这是添加一行之前和之后的一些代码,以帮助可视化该问题。

在只有标题行的csv文件中使用headers:true和return_headers:true:

a = CSV.read("June.csv", headers:true, return_headers:true) # <CSV::Table mode:col_or_row row_count:1>
a[0] # <CSV::Row "Day":"Day" "Time":"Time">
a.headers # => ["Day", "Time"]

仅标头:仅标头行的csv文件上为true:

b = CSV.read("June.csv", headers:true) #<CSV::Table mode:col_or_row row_count:1>
b[0] # => nil
b.headers # => []

仅标头:在带有伪第二行的csv文件上为true:

c = CSV.read("June.csv", headers:true) #<CSV::Table mode:col_or_row row_count:2>
c.headers # => ["Day", "Time"]
c["Day"] # => ["6/1"]

我不能依赖CSV文件,我必须始终有第二行,因为我的程序打算以此为基础。我究竟做错了什么?这是预期的行为,还是我的设置出现问题?我是否必须只读取标题,然后再读取一次才能获得我想要的行为?我已经搜寻了好一阵子,但仍然遇到麻烦

迈克·S

您所遇到的行为是预期的。两年前有一个类似的问题,其答案指出了您遇到的相同问题该人为Ruby打开了一个错误报告, Ruby开发人员对此做出了回应并拒绝了它。根据某些人的说法,从技术上讲,这不是格式正确的CSV。

但是,我同意您和打开错误的人的意见。headers: true选项应填写,CSV.headers无论以下几行中是否实际有数据。当前的行为似乎令人困惑,只会导致代码中的错误。

作为您问题的快速解决方案,我将简单return_headers: true地忽略并跳过结果中的第一个条目,该条目将始终是标题行。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何从CSV中获取标题。在CSV文件中仅在ruby中有标题行的情况下读取

来自分类Dev

在R中没有列标题的情况下将数据帧写入csv文件

来自分类Dev

在R中没有列标题的情况下将数据帧写入csv文件

来自分类Dev

在python中读取没有标题行的csv文件

来自分类Dev

如何在不加载整个文件的情况下将标题行添加到 CSV?

来自分类Dev

如何在Python中没有标题的情况下将图例添加到CSV数据图中?

来自分类Dev

如何仅在Ruby中读取URL的标题?

来自分类Dev

如何读取.CSV文件的标题行以外的所有内容?

来自分类Dev

如何在字段中有换行符和逗号的情况下逐行读取csv文件

来自分类Dev

如何在不使用shell重复标题的情况下串联压缩的csv文件

来自分类Dev

从带有标题的 CSV 文件中查找行的总和

来自分类Dev

如何读取csv文件,并根据csv中的数据添加标题和新列并输出新的csv

来自分类Dev

如何在不删除Linux中其他行的情况下删除标题?

来自分类Dev

读取具有多个标题的CSV文件

来自分类Dev

获取csv文件的标题

来自分类Dev

从终端中的csv文件读取列而忽略标题

来自分类Dev

如何仅在Windows命令行中没有路径的情况下获取文件名?

来自分类Dev

读取 CSV 文件时如何有一个可选的标题行?

来自分类Dev

在不读取的情况下找到csv中的行数

来自分类Dev

如何在不影响现有行的情况下将新行添加到现有 CSV 文件中

来自分类Dev

如何使用Ruby更改CSV文件的标题

来自分类Dev

如何将 CSV 文件的第一行视为 python csv.reader 中的标题

来自分类Dev

条形图:在没有标题的情况下从csv设置轴域

来自分类Dev

如何从csv读取不带标题的列,并使用Python将输出保存到txt文件中?

来自分类Dev

在 NIFI 中,如何在没有 CSV 标头的情况下从 CSV 转换为 JSON

来自分类Dev

在没有 the_post 的情况下获取 WordPress 标题

来自分类Dev

如何在pyspark数据帧中以第二行作为标题读取csv

来自分类Dev

仅在选定列中有值的情况下,如何才能在MySQL中执行“选择插入”操作?

来自分类Dev

如何使用Ruby修复csv文件中的标题然后复制到postgresql数据库?

Related 相关文章

  1. 1

    如何从CSV中获取标题。在CSV文件中仅在ruby中有标题行的情况下读取

  2. 2

    在R中没有列标题的情况下将数据帧写入csv文件

  3. 3

    在R中没有列标题的情况下将数据帧写入csv文件

  4. 4

    在python中读取没有标题行的csv文件

  5. 5

    如何在不加载整个文件的情况下将标题行添加到 CSV?

  6. 6

    如何在Python中没有标题的情况下将图例添加到CSV数据图中?

  7. 7

    如何仅在Ruby中读取URL的标题?

  8. 8

    如何读取.CSV文件的标题行以外的所有内容?

  9. 9

    如何在字段中有换行符和逗号的情况下逐行读取csv文件

  10. 10

    如何在不使用shell重复标题的情况下串联压缩的csv文件

  11. 11

    从带有标题的 CSV 文件中查找行的总和

  12. 12

    如何读取csv文件,并根据csv中的数据添加标题和新列并输出新的csv

  13. 13

    如何在不删除Linux中其他行的情况下删除标题?

  14. 14

    读取具有多个标题的CSV文件

  15. 15

    获取csv文件的标题

  16. 16

    从终端中的csv文件读取列而忽略标题

  17. 17

    如何仅在Windows命令行中没有路径的情况下获取文件名?

  18. 18

    读取 CSV 文件时如何有一个可选的标题行?

  19. 19

    在不读取的情况下找到csv中的行数

  20. 20

    如何在不影响现有行的情况下将新行添加到现有 CSV 文件中

  21. 21

    如何使用Ruby更改CSV文件的标题

  22. 22

    如何将 CSV 文件的第一行视为 python csv.reader 中的标题

  23. 23

    条形图:在没有标题的情况下从csv设置轴域

  24. 24

    如何从csv读取不带标题的列,并使用Python将输出保存到txt文件中?

  25. 25

    在 NIFI 中,如何在没有 CSV 标头的情况下从 CSV 转换为 JSON

  26. 26

    在没有 the_post 的情况下获取 WordPress 标题

  27. 27

    如何在pyspark数据帧中以第二行作为标题读取csv

  28. 28

    仅在选定列中有值的情况下,如何才能在MySQL中执行“选择插入”操作?

  29. 29

    如何使用Ruby修复csv文件中的标题然后复制到postgresql数据库?

热门标签

归档