您的位置:首页 > 科技 > IT业 > 网页qq注册新账号免费_免费推广平台有哪些?_理发培训专业学校_爱站网站长seo综合查询工具

网页qq注册新账号免费_免费推广平台有哪些?_理发培训专业学校_爱站网站长seo综合查询工具

2024/11/18 4:26:36 来源:https://blog.csdn.net/IT_Beijing_BIT/article/details/142675795  浏览:    关键词:网页qq注册新账号免费_免费推广平台有哪些?_理发培训专业学校_爱站网站长seo综合查询工具
网页qq注册新账号免费_免费推广平台有哪些?_理发培训专业学校_爱站网站长seo综合查询工具

Python库pandas之四

  • 输入/输出
    • read_json
      • 函数
      • 应用实列

输入/输出

read_json

函数

词法:pandas.read_json(path_or_buf, *, orient=None, typ=‘frame’, dtype=None, convert_axes=None, convert_dates=True, keep_default_dates=True, precise_float=False, date_unit=None, encoding=None, encoding_errors=‘strict’, lines=False, chunksize=None, compression=‘infer’, nrows=None, storage_options=None, dtype_backend=<no_default>, engine=‘ujson’)

read_json将JSON 字符串转换为 pandas 对象。

参数说明

  • path_or_buf,该参数类型是一个有效的JSON字符串, 路径对象,或类似文件的对象。
    任何有效的字符串路径都是可接受的。该字符串可以是URL。有效的 URL 方案包括 http、ftp、s3 和 file。对于文件 URL,需要一个主机。本地文件可以是:file://localhost/path/to/table.json。
    如果你想传入一个路径对象,pandas 接受任何 os.PathLike。
    通过类文件对象,指的是具有 read() 方法的对象,例如文件句柄(例如通过内置 open 函数)或 StringIO。

  • orient,该参数类型是字符串, 是可选的。
    该参数指出期望的JSON。to_json() 可以使用相应的 orient 值生成兼容的 JSON 字符串。可能的orient集是:
    ‘split’ : 字典,值有 {index -> [index], columns -> [columns], data -> [values]} 的形式。
    ‘records’ :列表,值有 [{column -> value}, … , {column -> value}] 的形式。
    ‘index’ : 字典,值有{index -> {column -> value}} 的形式。
    ‘columns’ : 字典,值有 {column -> {index -> value}} 的形式。
    ‘values’ :只是值数组
    ‘table’ : 字典,值有 {‘schema’: {schema}, ‘data’: {data}} 的形式。

    允许的值和默认值取决于typ参数的值。
    当 type == ‘系列’ 时,
    允许的orient是 {‘split’,‘records’,‘index’}
    默认值为“index”
    Series索引对于orient的’index’必须是唯一的。
    当 type == ‘frame’ 时,
    允许的orient为 {‘split’,‘records’,‘index’, ‘columns’,‘values’, ‘table’}
    默认值为“columns”
    DataFrame 索引对于方向“index”和“columns”必须是唯一的。
    DataFrame 列对于“index”、“columns”和“records”方向必须是唯一的。

  • typ,该参数类型是{‘frame’, ‘series’}, 默认值为‘frame’。
    要恢复的对象的类型。

  • dtype,该参数类型是bool或者dict, 默认值为None。
    如果该参数为True,则推断dtypes;如果要指定dtype为列的字典,则使用它们;
    如果为 False,则根本不推断dtype,仅适用于数据。
    若参数orient值不是“table”,则默认值为 True。

  • convert_axes,该参数类型是bool, 默认值为None。
    尝试将轴转换为正确的dtypes。
    若参数orient值不是“table”,则默认值为 True。

  • convert_dates,该参数类型是bool或字符串list, 默认值为True。
    如果convert_dates为 True,则可以转换默认的类似日期的列(取决于 keep_default_dates)。
    如果convert_dates为 False,则不会转换任何日期。如果是列名列表,则这些列将被转换,并且默认的类似日期的列也可能被转换(取决于 keep_default_dates)。

  • keep_default_dates,该参数类型是bool, 默认值为True。
    如果解析日期(convert_dates 不为 False),则尝试解析默认的类似日期的列。如果列名有下列的特点,则它是类似日期。
    列名以“_at”结尾,
    列名以“_time”结尾,
    列名以“timestamp”开头,
    列名是’modified’,
    列名是’date’。

  • precise_float,该参数类型是bool, 默认值为False。
    precise_float是True,在将字符串解码为双精度值时,使用更高精度 (strtod) 函数。precise_float是False,是使用快速,但不太精确的内置功能。

  • date_unit,该参数类型是字符串, 默认值为None。
    转换​​日期时,date_unit设置用于检测时间戳单位。默认行为是尝试检测正确的精度。如果不希望这样,则传递“s”、“ms”、“us”或“ns”之一,以分别强制仅解析秒、毫秒、微秒或纳秒。

  • encoding,该参数类型是字符串, 默认值为‘utf-8’。
    用于解码 py3 字节的编码。

  • encoding_errors,该参数类型是字符串, 是可选的, 默认值为“strict”。
    如何处理编码错误。

  • lines,该参数类型是bool, 默认值为False。
    将文件作为每行 json 对象读取。

  • chunksize,该参数类型是int, 是可选的。
    如果指定chunksize,则返回JsonReader对象,进行迭代。仅当lines=True时,才能传递此参数。如果为 None,则文件将被一次性读入内存。

  • compression,该参数类型是字符串,或者dict, 默认值为‘infer’。
    用于磁盘数据的即时解压缩。如果“infer”和“path_or_buf”是类似路径,则检测以下扩展名的压缩:“.gz”、“.bz2”、“.zip”、“.xz”、“.zst”、“.tar” 、“.tar.gz”、“.tar.xz”或“.tar.bz2”,否则不压缩。
    如果使用“zip”或“tar”,ZIP 文件,必须仅包含一个要读入的数据文件。
    设置compression为None,则不解压。
    也可以是字典,该字典包含 'method’键,而且该键的值为 {‘zip’, ‘gzip’, ‘bz2’, ‘zstd’, ‘xz’, ‘tar’} 。
    其他键值对转发到zipfile.ZipFile, gzip.GzipFile, bz2.BZ2File, zstandard.ZstdDecompressor, lzma.LZMAFile或 tarfile.TarFile。

  • nrows,该参数类型是int, 是可选的。
    必须读取的行分隔 json 文件的行数。仅当lines=True 时,才能传递此参数。如果为 None,则将返回所有行。

  • storage_options,该参数类型是dict, 是可选的。
    对于特定存储连接有意义的额外选项,例如主机、端口、用户名、密码等。对于 HTTP(S) URL,键值对将作为标头选项转发到 urllib.request.Request。对于其他 URL(例如以“s3://”和“gcs://”开头),键值对将转发到 fsspec.open。

  • dtype_backend,该参数类型是{‘numpy_nullable’, ‘pyarrow’}, 默认值为‘numpy_nullable’。
    应用于生成的 DataFrame 的后端数据类型。行为如下:
    “numpy_nullable”:返回支持 nullable-dtype 的 DataFrame(默认)。
    “pyarrow”:返回 pyarrow 支持的可为空的 ArrowDtype DataFrame。

  • engine{“ujson”, “pyarrow”}, default “ujson”。
    要使用的解析器引擎。 “pyarrow”引擎仅在lines=True时可用。

应用实列

test_1.json文件内容

{"index": {"0": 0, "1": 1, "2": true},"a": {"0": 1, "1": null, "2": false},"b": {"0": 2.5, "1": 4.5, "2": 0},"c": {"0": true, "1": false, "2": null},
}

pandas_io_2.py

import sys
import pandas as pddef read_json_file(fn):df = pd.read_json(fn)print(df)print()print(df['a'])print()df = pd.read_json(fn,typ='series',convert_dates=True)print(df)print()print(df['a'])if __name__ == "__main__":read_json_file(sys.argv[1])
C:\>python pandas_io_2.py test_1.jsonindex    a    b    c
0      0  1.0  2.5  1.0
1      1  NaN  4.5  0.0
2      1  0.0  0.0  NaN0    1.0
1    NaN
2    0.0
Name: a, dtype: float64index           {'0': 0, '1': 1, '2': True}
a           {'0': 1, '1': None, '2': False}
b              {'0': 2.5, '1': 4.5, '2': 0}
c        {'0': True, '1': False, '2': None}
dtype: object{'0': 1, '1': None, '2': False}

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com