pandas.io.json.build_table_schema#

pandas.io.json.build_table_schema(data, index=True, primary_key=None, version=True)[源代码][源代码]#

data 创建一个表结构。

参数:
数据Series, DataFrame
索引布尔值, 默认为 True

是否在模式中包含 data.index

primary_key布尔值或无,默认真

指定为主键的列名。默认的 None 会将 ‘primaryKey’ 设置为索引级别或级别,如果索引是唯一的。

版本布尔值, 默认为 True

是否包含一个字段 pandas_version ,该字段包含最后一次修订表模式的 pandas 版本。此版本可能与已安装的 pandas 版本不同。

返回:
dict

备注

请参阅 Table Schema 以了解转换类型。时间增量转换为ISO8601持续时间格式,秒字段后有9位小数以表示纳秒精度。

分类数据被转换为 any 数据类型,并使用 enum 字段约束来列出允许的值。ordered 属性包含在 ordered 字段中。

示例

>>> from pandas.io.json._table_schema import build_table_schema
>>> df = pd.DataFrame(
...     {'A': [1, 2, 3],
...      'B': ['a', 'b', 'c'],
...      'C': pd.date_range('2016-01-01', freq='D', periods=3),
...      }, index=pd.Index(range(3), name='idx'))
>>> build_table_schema(df)
{'fields': [{'name': 'idx', 'type': 'integer'}, {'name': 'A', 'type': 'integer'}, {'name': 'B', 'type': 'string'}, {'name': 'C', 'type': 'datetime'}], 'primaryKey': ['idx'], 'pandas_version': '1.4.0'}