- 用法:- pandas.read_table(filepath_or_buffer, sep=NoDefault.no_default, delimiter=None, header='infer', names=NoDefault.no_default, index_col=None, usecols=None, squeeze=None, prefix=NoDefault.no_default, mangle_dupe_cols=True, dtype=None, engine=None, converters=None, true_values=None, false_values=None, skipinitialspace=False, skiprows=None, skipfooter=0, nrows=None, na_values=None, keep_default_na=True, na_filter=True, verbose=False, skip_blank_lines=True, parse_dates=False, infer_datetime_format=False, keep_date_col=False, date_parser=None, dayfirst=False, cache_dates=True, iterator=False, chunksize=None, compression='infer', thousands=None, decimal='.', lineterminator=None, quotechar='"', quoting=0, doublequote=True, escapechar=None, comment=None, encoding=None, encoding_errors='strict', dialect=None, error_bad_lines=None, warn_bad_lines=None, on_bad_lines=None, delim_whitespace=False, low_memory=True, memory_map=False, float_precision=None, storage_options=None)
- 将通用分隔文件读入 DataFrame。 - 还支持可选地将文件迭代或分解成块。 - 更多帮助可以在 IO Tools 的在线文档中找到。 - filepath_or_buffer:str,路径对象或file-like对象
- 任何有效的字符串路径都是可接受的。该字符串可以是一个 URL。有效的 URL 方案包括 http、ftp、s3、gs 和文件。对于文件 URL,需要一个主机。本地文件可以是:file://localhost/path/to/table.csv。 - 如果你想传入一个路径对象,pandas 接受任何 - os.PathLike。- 通过file-like 对象,我们指的是具有 - read()方法的对象,例如文件句柄(例如通过内置- open函数)或- StringIO。
- sep:str,默认‘\t’ (tab-stop)
- 要使用的分隔符。如果 sep 为 None,C 引擎无法自动检测分隔符,但 Python 解析引擎可以,这意味着将使用后者并通过 Python 的内置嗅探工具 - csv.Sniffer自动检测分隔符。此外,长度超过 1 个字符且不同于- '\s+'的分隔符将被解释为正则表达式,并且还将强制使用 Python 解析引擎。请注意,正则表达式分隔符容易忽略引用的数据。正则表达式示例:- '\r\t'。
- delimiter:str,默认 None
- sep 的别名。 
- header:int,int 列表,无,默认 ‘infer’
- 用作列名的行号和数据的开头。默认行为是推断列名:如果没有传递名称,则行为与 - header=0相同,并且从文件的第一行推断列名,如果显式传递列名,则行为与- header=None相同.显式传递- header=0以便能够替换现有名称。标题可以是一个整数列表,指定列上 multi-index 的行位置,例如[0,1,3]。未指定的中间行将被跳过(例如,此示例中的 2 被跳过)。请注意,如果- skip_blank_lines=True,此参数将忽略注释行和空行,因此- header=0表示数据的第一行而不是文件的第一行。
- names:array-like,可选
- 要使用的列名列表。如果文件包含标题行,则应显式传递 - header=0以覆盖列名。不允许在此列表中重复。
- index_col:int, str, int /str 的序列,或 False,可选,默认 None
- 用作 - DataFrame的行标签的列,以字符串名称或列索引的形式给出。如果给出了 int /str 序列,则使用 MultiIndex。- 注意: - index_col=False可用于强制 pandas 不使用第一列作为索引,例如当您在每行末尾有一个带有分隔符的格式错误的文件时。
- usecols:list-like 或可调用,可选
- 返回列的子集。如果list-like,所有元素必须是位置元素(即文档列的整数索引)或与用户提供的列名相对应的字符串 - names或从文档标题行推断。如果- names已给出,则不考虑文档标题行。例如,有效的 list-like- usecols参数将是- [0, 1, 2]或者- ['foo', 'bar', 'baz'].元素顺序被忽略,所以- usecols=[0, 1]是相同的- [1, 0].实例化一个 DataFrame 从- data保留元素顺序使用- pd.read_csv(data, usecols=['foo', 'bar'])[['foo', 'bar']]对于列- ['foo', 'bar']排序或- pd.read_csv(data, usecols=['foo', 'bar'])[['bar', 'foo']]为了- ['bar', 'foo']命令。- 如果可调用,则可调用函数将根据列名进行评估,返回可调用函数评估为 True 的名称。一个有效的可调用参数的例子是 - lambda x:x.upper() in ['AAA', 'BBB', 'DDD']。使用此参数会导致更快的解析时间和更低的内存使用量。
- squeeze:布尔值,默认为 False
- 如果解析的数据只包含一列,则返回一个系列。 
- prefix:str,可选
- 没有标题时添加到列号的前缀,例如“X”代表 X0、X1、…… 
- mangle_dupe_cols:布尔值,默认为真
- 重复的列将被指定为“X”、“X.1”、……“X.N”,而不是“X”……“X”。如果列中存在重复名称,则传入 False 将导致数据被覆盖。 
- dtype:类型名称或列的字典 -> 类型,可选
- 数据或列的数据类型。例如: {‘a’:np.float64, ‘b’:np.int32, ‘c’:‘Int64’} 使用 - str或- object以及合适的- na_values设置来保留而不是解释 dtype。如果指定了转换器,则将应用它们代替 dtype 转换。
- engine:{‘c’, ‘python’, ‘pyarrow’},可选
- 要使用的解析器引擎。 C和pyarrow引擎更快,而python引擎目前更多feature-complete。目前仅 pyarrow 引擎支持多线程。 
- converters:字典,可选
- 用于转换某些列中的值的函数的字典。键可以是整数或列标签。 
- true_values:列表,可选
- 值视为 True。 
- false_values:列表,可选
- 要考虑为 False 的值。 
- skipinitialspace:布尔值,默认为 False
- 分隔符后跳过空格。 
- skiprows:list-like,int 或可调用,可选
- 文件开头要跳过的行号(0-indexed)或要跳过的行数(int)。 - 如果可调用,可调用函数将根据行索引进行评估,如果应该跳过该行,则返回 True,否则返回 False。一个有效的可调用参数的例子是 - lambda x:x in [0, 2]。
- skipfooter:整数,默认 0
- 要跳过的文件底部的行数(engine='c' 不支持)。 
- nrows:整数,可选
- 要读取的文件行数。对于读取大文件片段很有用。 
- na_values:标量、str、list-like 或 dict,可选
- 要识别为 NA/NaN 的附加字符串。如果 dict 通过,特定的 per-column NA 值。默认情况下,以下值被解释为 NaN:''、'#N/A'、'#N/AN/A'、'#NA'、'-1.#IND'、'-1.#QNAN'、 '-NaN'、'-nan'、'1.#IND'、'1.#QNAN'、'<NA>'、'N/A'、'NA'、'NULL'、'NaN'、'n /a',‘nan’, ‘null’。 
- keep_default_na:布尔值,默认为真
- 解析数据时是否包含默认的 NaN 值。根据是否传入 - na_values,行为如下:- 如果 - keep_default_na为 True,并且指定了- na_values,则将- na_values附加到用于解析的默认 NaN 值。
- 如果 - keep_default_na为 True,并且未指定- na_values,则仅使用默认的 NaN 值进行解析。
- 如果 - keep_default_na为 False,并且指定了- na_values,则仅使用指定的 NaN 值- na_values进行解析。
- 如果 - keep_default_na为 False,并且未指定- na_values,则不会将任何字符串解析为 NaN。
 - 请注意,如果 - na_filter作为 False 传入,则- keep_default_na和- na_values参数将被忽略。
- na_filter:布尔值,默认为真
- 检测缺失值标记(空字符串和na_values 的值)。在没有任何 NA 的数据中,传递 na_filter=False 可以提高读取大文件的性能。 
- verbose:布尔值,默认为 False
- 指示放置在非数字列中的 NA 值的数量。 
- skip_blank_lines:布尔值,默认为真
- 如果为 True,则跳过空行而不是解释为 NaN 值。 
- parse_dates:bool 或 int 列表或名称或列表或 dict 列表,默认为 False
- 行为如下: - 布尔值。如果 True -> 尝试解析索引。 
- int 或名称列表。例如如果 [1, 2, 3] -> 尝试将第 1、2、3 列分别解析为单独的日期列。 
- 列表列表。例如如果 [[1, 3]] -> 合并第 1 列和第 3 列并解析为单个日期列。 
- 字典,例如{‘foo’:[1, 3]} -> 将第 1、3 列解析为日期并调用结果 ‘foo’ 
 - 如果列或索引不能表示为日期时间数组,例如由于不可解析的值或时区的混合,列或索引将作为对象数据类型原样返回。对于非标准日期时间解析,请在 - pd.read_csv之后使用- pd.to_datetime。要解析具有混合时区的索引或列,请将- date_parser指定为 partially-applied- pandas.to_datetime()和- utc=True。有关更多信息,请参阅使用混合时区解析 CSV。- 注意:iso8601 格式的日期存在fast-path。 
- infer_datetime_format:布尔值,默认为 False
- 如果 True 和 - parse_dates被启用,pandas 将尝试推断列中日期时间字符串的格式,如果可以推断,则切换到更快的解析它们的方法。在某些情况下,这可以将解析速度提高 5-10 倍。
- keep_date_col:布尔值,默认为 False
- 如果 True 和 - parse_dates指定合并多个列,则保留原始列。
- date_parser:函数,可选
- 用于将字符串列序列转换为日期时间实例数组的函数。默认使用 - dateutil.parser.parser进行转换。 Pandas 将尝试以三种不同的方式调用- date_parser,如果发生异常则前进到下一种方式:1) 将一个或多个数组(由- parse_dates定义)作为参数传递; 2) 将- parse_dates定义的列中的字符串值连接(按行)到单个数组中并传递它; 3) 使用一个或多个字符串(对应于- parse_dates定义的列)作为参数为每一行调用一次- date_parser。
- dayfirst:布尔值,默认为 False
- DD/MM 格式日期,国际和欧洲格式。 
- cache_dates:布尔值,默认为真
- 如果为 True,则使用唯一的已转换日期缓存来应用日期时间转换。解析重复的日期字符串时可能会产生显著的speed-up,尤其是具有时区偏移的字符串。 
- iterator:布尔值,默认为 False
- 返回 TextFileReader 对象以进行迭代或使用 - get_chunk()获取块。
- chunksize:整数,可选
- 返回 TextFileReader 对象进行迭代。有关 - iterator和- chunksize的更多信息,请参阅 IO 工具文档。
- compression:str 或 dict,默认 ‘infer’
- 用于on-disk 数据的即时解压缩。如果 ‘infer’ 和 '%s' 是 path-like,则从以下扩展名中检测压缩:'.gz'、'.bz2'、'.zip'、'.xz' 或 '.zst'(否则没有压缩)。如果使用‘zip’,ZIP 文件必须只包含一个要读入的数据文件。设置为 - None无需减压。也可以是带键的字典- 'method'设置为 { 之一- 'zip',- 'gzip',- 'bz2',- 'zstd'} 和其他键值对被转发到- zipfile.ZipFile,- gzip.GzipFile,- bz2.BZ2File, 或者- zstandard.ZstdDecompressor, 分别。例如,可以使用自定义压缩字典为 Zstandard 解压缩传递以下内容:- compression={'method':'zstd', 'dict_data':my_compression_dict}.
- thousands:str,可选
- 千位分隔符。 
- decimal:str,默认“。”
- 识别为小数点的字符(例如,对欧洲数据使用“,”)。 
- lineterminator:str(长度 1),可选
- 将文件分成几行的字符。仅对 C 解析器有效。 
- quotechar:str(长度 1),可选
- 用于表示引用项的开始和结束的字符。引用的项目可以包含分隔符,它将被忽略。 
- quoting:int 或 csv.QUOTE_* 实例,默认 0
- 每个 - csv.QUOTE_*常量的控制字段引用行为。使用 QUOTE_MINIMAL (0)、QUOTE_ALL (1)、QUOTE_NONNUMERIC (2) 或 QUOTE_NONE (3) 之一。
- doublequote:布尔值,默认 True
- 当指定quotechar 并且quoting 不是 - QUOTE_NONE时,指示是否将字段内的两个连续quotechar 元素解释为单个- quotechar元素。
- escapechar:str(长度 1),可选
- One-character 用于转义其他字符的字符串。 
- comment:str,可选
- 指示不应解析行的其余部分。如果在一行的开头找到,则该行将被完全忽略。此参数必须是单个字符。与空行一样(只要 - skip_blank_lines=True),参数- header会忽略完全注释的行,但- skiprows不会。例如,如果- comment='#',用- header=0解析- #empty\na,b,c\n1,2,3将导致“a,b,c”被视为标头。
- encoding:str,可选
- 读取/写入时用于 UTF 的编码(例如“utf-8”)。 Python 标准编码列表。 
- encoding_errors:str,可选,默认 “strict”
- 如何处理编码错误。可能值列表。 
- dialect:str 或 csv.Dialect,可选
- 如果提供,此参数将覆盖以下参数的值(默认与否): - delimiter、- doublequote、- escapechar、- skipinitialspace、- quotechar和- quoting。如果需要覆盖值,将发出 ParserWarning。有关更多详细信息,请参阅 csv.Dialect 文档。
- error_bad_lines:布尔,可选,默认 None
- 默认情况下,字段过多的行(例如,逗号过多的 csv 行)会引发异常,并且不会返回任何 DataFrame。如果为 False,那么这些 “bad lines” 将从返回的 DataFrame 中删除。 
- warn_bad_lines:布尔,可选,默认 None
- 如果 error_bad_lines 为 False,并且 warn_bad_lines 为 True,则将输出每个 “bad line” 的警告。 
- on_bad_lines:{‘error’, ‘warn’, ‘skip’} 或可调用,默认 ‘error’
- 指定遇到错误行(包含太多字段的行)时要执行的操作。允许的值为: - ‘error’, raise an Exception when a bad line is encountered. 
- ‘warn’, raise a warning when a bad line is encountered and skip that line. 
- ‘skip’, skip bad lines without raising or warning when they are encountered. 
 
- delim_whitespace:布尔值,默认为 False
- 指定是否将空格(例如 - ' '或- ' ')用作 sep。相当于设置- sep='\s+'。如果此选项设置为 True,则不应为- delimiter参数传递任何内容。
- low_memory:布尔值,默认为真
- 在内部以块的形式处理文件,从而在解析时减少内存使用,但可能是混合类型推断。要确保没有混合类型,请设置 False,或使用 - dtype参数指定类型。请注意,无论如何,整个文件都被读入单个 DataFrame,请使用- chunksize或- iterator参数以块的形式返回数据。 (仅对 C 解析器有效)。
- memory_map:布尔值,默认为 False
- 如果为 - filepath_or_buffer提供了文件路径,则将文件对象直接映射到内存并直接从那里访问数据。使用此选项可以提高性能,因为不再有任何 I/O 开销。
- float_precision:str,可选
- 指定 C 引擎应对浮点值使用的转换器。普通转换器的选项是 - None或‘high’,原始低精度 Pandas 转换器的选项是‘legacy’,round-trip 转换器的选项是‘round_trip’。
- storage_options:字典,可选
- 对特定存储连接有意义的额外选项,例如主机、端口、用户名、密码等。对于 HTTP(S) URL,键值对作为标头选项转发到 - urllib。对于其他 URL(例如以 “s3://” 和 “gcs://” 开头),键值对被转发到- fsspec。有关详细信息,请参阅- fsspec和- urllib。
 
- DataFrame 或 TextParser
- 逗号分隔值 (csv) 文件作为带有标签轴的二维数据结构返回。 
 
 - 参数:- 返回:- 例子:- >>> pd.read_table('data.csv')
相关用法
- Python pandas.read_pickle用法及代码示例
- Python pandas.read_hdf用法及代码示例
- Python pandas.read_xml用法及代码示例
- Python pandas.read_sql_table用法及代码示例
- Python pandas.read_excel用法及代码示例
- Python pandas.read_fwf用法及代码示例
- Python pandas.read_stata用法及代码示例
- Python pandas.read_sql用法及代码示例
- Python pandas.read_csv用法及代码示例
- Python pandas.read_html用法及代码示例
- Python pandas.read_json用法及代码示例
- Python pandas.arrays.IntervalArray.is_empty用法及代码示例
- Python pandas.DataFrame.ewm用法及代码示例
- Python pandas.api.types.is_timedelta64_ns_dtype用法及代码示例
- Python pandas.DataFrame.dot用法及代码示例
- Python pandas.DataFrame.apply用法及代码示例
- Python pandas.DataFrame.combine_first用法及代码示例
- Python pandas.Index.value_counts用法及代码示例
- Python pandas.DatetimeTZDtype用法及代码示例
- Python pandas.DataFrame.cumsum用法及代码示例
注:本文由纯净天空筛选整理自pandas.pydata.org大神的英文原创作品 pandas.read_table。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。
