如何读取具有列分隔符和记录分隔符的 csv 文件

亚历山大

我的 CSV 文件有 3 列:姓名、年龄和性别,样本数据是:

AlexÇ39ÇM 
#Ç#SheebaÇ35ÇF 
#Ç#RiyaÇ10ÇF

列分隔符是“Ç”,记录分隔符是“#Ç#”。注意第一条记录没有记录分隔符(#Ç#),但所有其他记录都有记录分隔符(#Ç#)。你能告诉我如何读取这个文件并将其存储在数据框中吗?

艾伯特

无论csvpandas模块支持直接读取的CSV文件。但是,由于您需要在进一步处理之前逐行修改文件内容,因此我建议逐行读取文件,根据需要修改每一行并将处理后的数据存储在列表中以供进一步处理。

必要的步骤包括:

  • 打开文件
  • 逐行读取文件
  • 删除换行符(使用时它是行的一部分 readlines()
  • 替换记录分隔符(因为记录相当于一行)
  • 列分隔符处的分割线

由于.split()返回一个字符串元素列表,我们得到一个完整的列表列表,其中每个“子列表”包含/代表一行/记录的数据。可以读取这样格式化的数据,pandas.DataFrame.from_records()这在这一点上非常方便:

import pandas as pd

with open('myData.csv') as file:
    # `.strip()` removes newline character from each line
    # `.replace('#;#', '')` removes '#;#' from each line
    # `.split(';')` splits at given string and returns a list with the string elements
    lines = [line.strip().replace('#;#', '').split(';') for line in file.readlines()]

df = pd.DataFrame.from_records(lines, columns=['Name', 'Age', 'Sex'])

print(df)

评论:

  1. 我换Ç;哪个好工作对我来说,由于编码的问题。但是,算法的基本思想仍然相同。

  2. 像这样手动读取数据可能会占用大量资源,这在处理较大文件时可能会成为问题。可能有更优雅的方式,我不知道。当遇到性能问题时,尝试分块读取文件或寻找更有效的实现。

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

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

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何将仅具有空格分隔符的同时具有逗号和空格分隔符的CSV文件转换为csv

来自分类Dev

读取csv文件自动分隔符

来自分类Dev

如何更改CSV文件分隔符

来自分类Dev

如何导入没有分隔符和逗号表示缺失值的 csv 或 txt 文件

来自分类Dev

使用Pandas读取CSV文件:复杂的分隔符

来自分类Dev

用特定的分隔符分割CSV文件的列

来自分类Dev

vba复制带有分号分隔符的csv文件

来自分类Dev

如何更改文件中的分隔符以制作CSV

来自分类Dev

读取带有非标准行分隔符的 csv 文件时出错

来自分类Dev

如何通过python读取csv文件中存在的特殊字符分隔符?

来自分类Dev

读取带有分隔符的 CSV 文件,因为 delim 和数字数据也包含分隔符,以使用 Scala 在 Spark 中创建 RDD

来自分类Dev

如何根据第二列中的分隔符将CSV文件的单行拆分为多个

来自分类Dev

Scala:自动检测CSV文件中的分隔符/分隔符

来自分类Dev

使用pandas.read_csv删除分号作为行分隔符,读取csv文件

来自分类Dev

如何找到txt文件中使用的分隔符并将其转换为逗号分隔的csv?

来自分类Dev

读取带双引号和逗号分隔符的csv文件,其中包含双打和字符串(任意数量的行和列)

来自分类Dev

如何使用定界符“;”导入CSV文件 和小数点分隔符作为“,”成SAS?

来自分类Dev

在UNIX中更改CSV文件分隔符

来自分类Dev

在Typescript(或Javascript)中生成CSV文件的本地分隔符

来自分类Dev

在Typescript(或Javascript)中生成CSV文件的本地分隔符

来自分类Dev

R:如何读取带有data.table :: fread的CSV文件,该文件的逗号为小数,点为千位分隔符=“。

来自分类Dev

如何在 Python/Pandas 中读取 .csv 文件,其中逗号 (,) 是分隔符并出现在列名中?

来自分类Dev

如何使用 Pandas 读取最后一个字段中存在分隔符的 CSV 文件?

来自分类Dev

使用逗号作为分隔符并在 psql 中转义引号读取 csv 文件

来自分类Dev

PySpark 2.4 - 使用自定义行分隔符读取 CSV 文件

来自分类Dev

如何读取带有特殊分隔符和回车符的txt文件?

来自分类Dev

如何从带有“ x”个字符后的列分隔符的txt文件中创建一个csv文件

来自分类Dev

我的 CSV 文件中有 NaN 不是 NaN 由于逗号在被视为分隔符的列中

来自分类Dev

Python:在DataFrame中加载csv文件,但字符串和列表逗号分隔符例外

Related 相关文章

  1. 1

    如何将仅具有空格分隔符的同时具有逗号和空格分隔符的CSV文件转换为csv

  2. 2

    读取csv文件自动分隔符

  3. 3

    如何更改CSV文件分隔符

  4. 4

    如何导入没有分隔符和逗号表示缺失值的 csv 或 txt 文件

  5. 5

    使用Pandas读取CSV文件:复杂的分隔符

  6. 6

    用特定的分隔符分割CSV文件的列

  7. 7

    vba复制带有分号分隔符的csv文件

  8. 8

    如何更改文件中的分隔符以制作CSV

  9. 9

    读取带有非标准行分隔符的 csv 文件时出错

  10. 10

    如何通过python读取csv文件中存在的特殊字符分隔符?

  11. 11

    读取带有分隔符的 CSV 文件,因为 delim 和数字数据也包含分隔符,以使用 Scala 在 Spark 中创建 RDD

  12. 12

    如何根据第二列中的分隔符将CSV文件的单行拆分为多个

  13. 13

    Scala:自动检测CSV文件中的分隔符/分隔符

  14. 14

    使用pandas.read_csv删除分号作为行分隔符,读取csv文件

  15. 15

    如何找到txt文件中使用的分隔符并将其转换为逗号分隔的csv?

  16. 16

    读取带双引号和逗号分隔符的csv文件,其中包含双打和字符串(任意数量的行和列)

  17. 17

    如何使用定界符“;”导入CSV文件 和小数点分隔符作为“,”成SAS?

  18. 18

    在UNIX中更改CSV文件分隔符

  19. 19

    在Typescript(或Javascript)中生成CSV文件的本地分隔符

  20. 20

    在Typescript(或Javascript)中生成CSV文件的本地分隔符

  21. 21

    R:如何读取带有data.table :: fread的CSV文件,该文件的逗号为小数,点为千位分隔符=“。

  22. 22

    如何在 Python/Pandas 中读取 .csv 文件,其中逗号 (,) 是分隔符并出现在列名中?

  23. 23

    如何使用 Pandas 读取最后一个字段中存在分隔符的 CSV 文件?

  24. 24

    使用逗号作为分隔符并在 psql 中转义引号读取 csv 文件

  25. 25

    PySpark 2.4 - 使用自定义行分隔符读取 CSV 文件

  26. 26

    如何读取带有特殊分隔符和回车符的txt文件?

  27. 27

    如何从带有“ x”个字符后的列分隔符的txt文件中创建一个csv文件

  28. 28

    我的 CSV 文件中有 NaN 不是 NaN 由于逗号在被视为分隔符的列中

  29. 29

    Python:在DataFrame中加载csv文件,但字符串和列表逗号分隔符例外

热门标签

归档