快捷方式

CSVDictParser

class torchdata.datapipes.iter.CSVDictParser(source_datapipe: IterDataPipe[Tuple[str, IO]], *, skip_lines: int = 0, decode: bool = True, encoding: str = 'utf-8', errors: str = 'ignore', return_path: bool = False, **fmtparams)

接受一个由文件名和 CSV 数据流元组组成的数据管道,读取并按行返回 CSV 文件中的内容(函数名称:parse_csv_as_dict)。

默认情况下,每个输出都是一个 Dict,但它取决于 fmtparams。每个文件的首行(除非被跳过)将用作标题;标题行中的内容将用作从剩余行生成的 Dict 的键。

参数:
  • source_datapipe – 具有文件名和 CSV 数据流元组的源数据管道

  • skip_lines – 在每个文件开头要跳过的行数

  • strip_newline – 如果 True,则将剥离换行符

  • decode – 如果 True,这将根据指定的 encoding 解码文件的内容

  • encoding – 文件的字符编码 (default=’utf-8’)

  • errors – 解码时使用的错误处理方案

  • return_path – 如果 True,则每行将返回路径和内容的元组,而不是仅返回内容

示例

>>> from torchdata.datapipes.iter import FileLister, FileOpener
>>> import os
>>> def get_name(path_and_stream):
>>>     return os.path.basename(path_and_stream[0]), path_and_stream[1]
>>> datapipe1 = FileLister(".", "*.csv")
>>> datapipe2 = FileOpener(datapipe1, mode="b")
>>> datapipe3 = datapipe2.map(get_name)
>>> csv_dict_parser_dp = datapipe3.parse_csv_as_dict()
>>> list(csv_dict_parser_dp)
[{'key': 'a', 'item': '1'}, {'key': 'b', 'item': '2'}]

文档

访问 PyTorch 的综合开发者文档

查看文档

教程

获取针对初学者和高级开发人员的深入教程

查看教程

资源

查找开发资源并获得问题的解答

查看资源