当前位置: 首页 > 网络应用技术

多少行Python见CSV(2023年的最新答案)

时间:2023-03-08 11:48:36 网络应用技术

  简介:许多朋友询问与Python有关的多少东西,请参阅CSV。首席执行官在本文中注明将为您提供详细的答案,以供所有人参考。我希望这对每个人都会有所帮助!让我们一起看看!

  CSV表示“逗号的值(逗号分隔的值)”,CSV文件是一个简化的电子表,实际上是纯文本文件。

  CSV文件,格式为:

  因为CSV文件中的每个单元格除以逗号,所以有些人可以将每行文本调用split()方法来解析CSV文件。但是,CSV文件还具有其自己的传输字符。通过过境字符,允许逗号和其他字符作为值的一部分,但是使用split()方法无法处理这些刚性字符。由于这些潜在缺陷的原因,建议使用CSV模块来读取和读取和写CSV文件。

  CSV模块带有Python,因此可以直接导入。

  要从CSV文件中读取CSV模块的数据,我们需要创建一个读取器对象。通过阅读器对象,我们可以通过CSV文件中的每一行迭代。

  操作结果:

  要使用CSV模块读取CSV文件,请先使用open()函数打开它,就像打开其他任何文本文件一样。CSV.Reader()函数不接受文件名作为参数。

  要访问读者对象中的值,最直接的方法是使用list()将其转换为普通的python列表。它实际上是包含一个列表以表示两个维度数据的列表。

  我们还可以使用表达数据[row] [color]访问csv.mong中的特殊行和列的值,行是数据中列表的设置,col是项目的设置,我们想要在列表中访问:

  操作结果:

  操作结果:

  作者对象允许我们将数据写入CSV文件。

  操作结果:

  在Windows上,需要将Open()函数的NewLine关键字参数传递到一个空字符串中。如果未设置NewLine参数,则输出中的行。CSV中的行将是下图的两倍。

  如果书面内容包含逗号,则CSV模块将自动添加双引号以形成正义,如下示例所示。

  操作结果:

  我们还可以使用定界符制作TSV文件。TSV是对TABEAP值的缩写,即使用表作为分离主义文件;使用线粒体参数设置间距。

  操作结果:

  在这里使用lineminator ='

  '线和行之间的字符变成三行,其效果是达到三倍的行距离。

  导入大熊猫作为pd

  df = pd.read_csv(“您的文件路径”)

  df.loc [10:20]

  1.打开文件并返回行数。

  2.返回到列数,返回特定行,返回前几行,返回特定列,返回前几列,然后返回到行的行。

  3.一一读取CSV以满足条件并返回行号。

  最近,我去了一些数据竞赛网站进行观察和学习,发现许多数据都是通过CSV文件(胡说八道)处理的。因此,磨碎的刀错误地切断了柴火。我首先学习了Python的CSV库。

  CSV模块实现了CSV格式形式数据的读写。这可以以兼容的方式读取和编写其数据文件。CSV模块中的读者和作者类用于读取和编写序列化数据。您还可以使用Dictreader类和Dictwriter类读取词典中的数据。

  返回读取csvfile的读取对象(文件和列表适用,但文件应为newline =''。

  读取由字符串组成的列表(除非修改quote_nonumeric)。

  返回作者对象,负责将给定文件类上的数据转换为带有分隔符的字符串。

  这两种方法可以将名称字符串与方言/解耦相关联。方言可以是方言的子类,也可以是FMTPARAMS的关键字参数。

  将方言对象的变体返回为名称。如果未注册,请丢失错误。

  返回所有注册名称

  返回当前解析器允许的最大字段大小。如果要制定参数,则参数将成为最大的最大场大小。

  该对象类似于读者,但是每行中的信息都映射到字典。字典的键由字面名称给出

  字段名称的参数是序列序列[1]。如果参数为默认值,则第一行的第一行的值是字段名称。

  如果特定行中的字段大于字段名称(例如同意的5个属性,但在此行中显示6个数据),则其余字段将放置在列表中,并且该字段名称由Restkey指定(默认为无)。如果非蓝色线的字段小于字段名称,则缺乏值将没有填充。

  #实际上,这件事应该类似于各种电影中的言论。

  3.8中返回的线是dict类型。

  该对象类似于读者,但是每行中的信息都映射到字典。字典的钥匙由fieldnames给出。字段名称参数是必不可少的。用来指定字典缺少键时要编写的值的STVAL。删除用于指定键键在fieldName中找不到的处理机制。“触发'value eRernor,并且“忽略”将被忽略。

  此类用于格式化CSV文件

  以下类别在括号中标记。

  定义Excel生成的CSV文件的常规属性。('excel')

  定义Excel生成的CSV文件的常规属。

  性别。('excel-tab')

  定义在UNIX系统('Unix')上生成的CSV文件的常规属性:

  任意的CSV库功能错误。

  参考链接

  Python3.8.2文档中CSV库的相关文档

  阅读CSV文件

  最多

  简化版本

  filepath_or_buffer:str,pathlib.str,pathlib.path,py._path.local.local.localpath或任何带有read()方法的对象

  它可以是URL,URL类型包括:http,ftp,s3和files.multi -file正在准备

  阅读本地文件的示例:: //localhost/path/to/table.csv

  ** sep **:str,默认',’

  指定分隔符。如果您不指定参数,则将尝试将逗号分开。分离器成长为角色而不是“ s+”,它将使用Python语法分析仪。并忽略数据中的逗号。表达: ' '

  **定界符**:str,默认没有

  固定边界,替代部门(如果此参数指定,则SEP参数无效)

  delim_whitespace:布尔值,默认为false。

  指定空间(例如'或''')是否用作分离主义者。它等效于设置sep ='s+'。如果将此参数设置为ture,则定界符参数将失败。

  在新版本0.18.1中的支持

  标题:int或int列表,默认的“ ins”

  指定的行数被用作名称列表,并且数据数启动。如果文件中没有名称,则默认值为0,否则将其设置为无。如果标题= 0明确设置了,则原始存在被替换。Header参数可以是一个列表,例如:[0,1,3],此列表表明文件中的这些行用作列标题(每列中的多个标题),并且中间的线将被忽略。

  注意:如果skip_blank_lines = true,则标题参数忽略注释和空行,因此标头= 0表示第一行数据的第一行,而不是文件的第一行。

  **名称**:类似数组,默认没有

  结果的名称列表,如果数据文件中没有标题行,则需要在默认列表中执行header = none.no重复,除非设置参数mangle_dupe_cols = true。

  index_col:int或sequence或false,默认没有

  对于索引的列号或名称,如果给出了序列,则有多个行索引。

  如果文件不规则并且尾巴具有分离器,则可以设置index_col = false的pandas不适用于第一列作为行索引。

  UseCols:类似阵列,默认没有

  返回数据集,此列表中的值必须对应于文件中位置的位置(数字可以对应于指定的列)或字符传输的名称是文件的名称。例如:有效USERCOL的参数可能为[0,1,2]或['foo','bar','baz']。使用此参数可以加快加载并减少内存消耗。

  AS_RECARRAY:布尔值,默认为false

  不同意使用:将在未来版本中删除此参数。请使用pd.read_csv(...)。to_records()。

  返回一个numpy recarlay以替换数据框。如果将参数设置为true。它将首先使用。索引将不再可用,并且索引列将被忽略。

  **挤压**:布尔,默认为false

  如果文件值包含列,请返回服务器

  **前缀**:str,默认没有

  当没有标题时,将前缀添加到列。例如:添加'x'成为x0,x1,...

  ** mangle_dupe_cols **:布尔值,默认为true

  重复的列,将“ x” ... x'表示为“ x.0” ...'x.n。如果设置为false,则将覆盖所有重复。

  dtype:键入colmn -type的名称或dict,默认没有

  每列的数据类型。例如

  **引擎**:{‘c’,‘python’},可选

  解析器使用。当Python发动机目前更加完整时,C发动机的速度更快。

  使用的分析引擎。您可以选择C或Python.c引擎很快,但是Python发动机功能更完整。

  转换器:dict,默认没有

  转换函数的字典。关键可以是列或列的序列号。

  true_values:列表,默认没有

  值为真实的价值观

  false_values:列表,默认没有

  值为假的值

  ** skipinitialspace **:布尔值,默认为false

  分段后忽略空白(默认为false,即不忽略)。

  跳过:类似列表或整数,默认没有

  需要忽略的行数(从文件的开头开始)或需要跳过的行号列表(从0开始)。

  Skipfooter:int,默认值0

  从文件的末尾开始。(不支持C引擎)

  skip_footer:int,默认值0

  不建议这样做:建议使用skipfooter,该功能相同。

  nrows:int,默认没有

  需要读取的行数(从文件头开始)。

  na_values:scalan,str,类似于列表或dict,默认没有

  一组替换na/nan的值。如果您传递参数,则需要制定特定列的空值。默认值为“ 1.#ind”,'1.#qnan','n/a','na','null','nan','nan'。

  ** keep_default_na **:bool,默认为true

  如果指定了na_values参数并keep_default_na = false,则将涵盖默认的NAN,否则将其添加。

  ** na_filter **:布尔值,默认为true

  检查您是否丢失了值(空字符串还是空值)。对于大文件,没有空值,设置na_filter = false可以提高读取速度。

  冗长:布尔值,默认为false

  是否打印各种解析器的输出信息,例如:“非价值列中丢失值的数量”等等。

  skip_blank_lines:布尔值,默认为true

  如果您是真的,您将跳过空线;否则,它将被记录为Nan。

  ** parse_dates **:布尔值或ints或名称列表或列表或dict的列表,默认为false

  peash_datetime_format:boolean,默认错误false

  如果将其设置为True且Parse_dates可用,则PANDAS将尝试将其转换为日期类型。在某些情况下,它将快5-10倍。

  ** keep_date_col **:布尔值,默认为false

  如果连接多个列,请保持列参与连接。默认值为false。

  date_parser:函数,默认没有

  用于分析日期的功能,使用dateutil.parser.parser转换default.pandas尝试使用三种不同的方法来分析,并在遇到问题时使用下一个方法。

  1.将一个或多个数组(由PARSE_DATES指定)作为参数;

  2.将指定的多列字符串作为参数连接为列;

  3.调用date_parser函数一次将一行分析一个或多个字符串(由parse_dates指定)为参数。

  ** dayfirst **:布尔值,默认为false

  DD/mm格式日期类型

  **迭代器**:布尔值,默认为false

  返回textfilereader对象以通过块处理文件。

  块:int,默认没有

  文件块的大小,请参阅IO工具文档,以获取有关迭代器和块质量的更多信息。

  压缩:{{'推断',gzip','bz2','zip','xz',none},默认“ incer”

  如果您使用推论参数,使用gzip,bz2,zip或用'.gz','.bz2','.zip'或'xz'是一个是一个,请使用gzip,bz2,zip或'xz'是一个文件,否则不会解压缩。如果您使用zip,则zip软件包中国必须仅包含一个文件。如果没有解压缩,请否。

  新版本0.18.1版本支持ZIP和XZ减压

  这和:str,默认没有

  成千上万的积分划分,例如“”或“”。

  小数:str,默认为'。’

  字符中的小数点(例如:欧洲数据使用',’)。

  float_precision:字符串,默认没有

  

  指定

  **线粒体**:str(长度1),默认没有

  线路划分符号仅在C饼干下使用。

  ** quodechar **:str(长度1),可选

  引号被用作启动和解释的字符,引号中的分割符号将被忽略。

  引用:int或csv.quote_*实例,默认为0

  控制CSV中的引号常数。Optionalquote_minimal(0),quote_all(1),quote_nonnumeric(2)或quote_none(3)

  doublequote:布尔值,默认为真

  当定义单个引号并且引用参数不是QUOTE_NONE时,使用双引号将引号中的元素表示为元素。

  Escapechar:str(长度1),默认没有

  引用是quote_none时,请指定一个字符以实现无限限制。

  评论:str,默认没有

  如果字符出现在头部,则该行将被忽略。该参数只能是一个字符,空线的音符(就像skip_blank_lines = true一样)被header and skiprows.for忽略了。示例,如果注释='#'#'分析'#empty

  a,b,c

  1,2,3'为标题= 0,因此返回结果将基于“ A,B,C'为标头。

  编码:str,默认没有

  指定字符集的类型,通常指定为“ UTF-8”。Python标准编码列表

  方言:str或csv.dialect实例,默认没有

  如果没有特定的语言,则SEP大于字符,它将被忽略。检查csv.dialect文档

  tupleize_cols:boolean,默认为false

  在列上留下一个元组列表

  error_bad_lines:布尔值,默认为true

  如果一行包含太多列,则默认情况下不会返回数据框。如果将其设置为false,则将将其删除(仅在C Parster下使用)。

  warn_bad_lines:布尔值,默认为true

  如果error_bad_lines = false,并且warn_bad_lines = true,则将输出所有“坏线”(仅在C Parses下使用)。

  ** low_memory **:布尔值,默认为true

  将块加载到内存,然后在低内存消耗中分析。但是可能存在混淆类型。确保该类型不会混淆并设置为false.或使用dtype参数指定类型。注意使用chunksize或Itererator tyerator或Itererator参数,读取到一个块中会将整个文件读取到数据框中,而忽略该类型(仅在C Parster中有效)

  ** buffer_lines **:int,默认没有

  不建议,此参数将在未来版本中删除,因为不建议在解析器中使用其价值

  compact_ints:布尔值,默认为false

  不建议,此参数将在未来版本中删除

  如果设置compact_ints = true,则任何整数列都将根据最小整数类型存储。

  use_unsigned:布尔值,默认为false

  不建议:将来版本将删除此参数

  如果整数列被压缩(即compact_ints = true),则指定压缩列是符号还是非符号符号。

  memory_map:布尔值,默认为false

  如果存储器中使用的文件,请直接使用映射文件。使用此方法再次避免IO操作。

  参考:

  从理论上讲,无论可以读几行,这都是时间问题。与Excel不同,您只能阅读超过一百万行

  结论:以上是由CSV相关内容的CSV相关内容编制的主要CTO注释。希望它对您有所帮助!如果您解决了问题,请与更多关心此问题的朋友分享?