pyspark.pandas.DataFrame.to_dict
的用法。用法:
DataFrame.to_dict(orient: str = 'dict', into: Type = <class 'dict'>) → Union[List, collections.abc.Mapping]
将 DataFrame 转换为字典。
可以使用参数自定义键值对的类型(见下文)。
注意
仅当生成的 pandas DataFrame 预计很小时才应使用此方法,因为所有数据都加载到驱动程序的内存中。
- orient:字符串 {‘dict’, ‘list’, ‘series’, ‘split’, ‘records’, ‘index’}
确定字典值的类型。
‘dict’(默认):dict like {column -> {index -> value}}
‘list’: 像 {column -> [values]} 这样的字典
‘series’: dict 像 {column -> Series(values)}
‘split’: 像 {‘index’ -> [索引], ‘columns’ -> [列], ‘data’ -> [值]}
‘records’: 类似 [{column -> value}, ... , {column -> value}] 的列表
‘index’: 像 {index -> {column -> value}} 这样的字典
允许使用缩写。
s
表示series
和sp
表示split
。- into:类,默认字典
collections.abc.Mapping 子类用于返回值中的所有 Mapping。可以是实际类或所需映射类型的空实例。如果你想要一个 collections.defaultdict,你必须把它初始化。
- dict、list 或 collections.abc.Mapping
返回代表 DataFrame 的 collections.abc.Mapping 对象。生成的转换取决于
orient
参数。
参数:
返回:
例子:
>>> df = ps.DataFrame({'col1': [1, 2], ... 'col2': [0.5, 0.75]}, ... index=['row1', 'row2'], ... columns=['col1', 'col2']) >>> df col1 col2 row1 1 0.50 row2 2 0.75
>>> df_dict = df.to_dict() >>> sorted([(key, sorted(values.items())) for key, values in df_dict.items()]) [('col1', [('row1', 1), ('row2', 2)]), ('col2', [('row1', 0.5), ('row2', 0.75)])]
您可以指定返回方向。
>>> df_dict = df.to_dict('series') >>> sorted(df_dict.items()) [('col1', row1 1 row2 2 Name: col1, dtype: int64), ('col2', row1 0.50 row2 0.75 Name: col2, dtype: float64)]
>>> df_dict = df.to_dict('split') >>> sorted(df_dict.items()) [('columns', ['col1', 'col2']), ('data', [[1..., 0.75]]), ('index', ['row1', 'row2'])]
>>> df_dict = df.to_dict('records') >>> [sorted(values.items()) for values in df_dict] [[('col1', 1...), ('col2', 0.5)], [('col1', 2...), ('col2', 0.75)]]
>>> df_dict = df.to_dict('index') >>> sorted([(key, sorted(values.items())) for key, values in df_dict.items()]) [('row1', [('col1', 1), ('col2', 0.5)]), ('row2', [('col1', 2), ('col2', 0.75)])]
您还可以指定映射类型。
>>> from collections import OrderedDict, defaultdict >>> df.to_dict(into=OrderedDict) OrderedDict([('col1', OrderedDict([('row1', 1), ('row2', 2)])), ('col2', OrderedDict([('row1', 0.5), ('row2', 0.75)]))])
如果你想要一个
defaultdict
,你需要初始化它:>>> dd = defaultdict(list) >>> df.to_dict('records', into=dd) [defaultdict(<class 'list'>, {'col..., 'col...}), defaultdict(<class 'list'>, {'col..., 'col...})]
相关用法
- Python pyspark DataFrame.to_delta用法及代码示例
- Python pyspark DataFrame.to_latex用法及代码示例
- Python pyspark DataFrame.to_table用法及代码示例
- Python pyspark DataFrame.to_pandas用法及代码示例
- Python pyspark DataFrame.to_records用法及代码示例
- Python pyspark DataFrame.to_excel用法及代码示例
- Python pyspark DataFrame.to_spark_io用法及代码示例
- Python pyspark DataFrame.to_pandas_on_spark用法及代码示例
- Python pyspark DataFrame.to_clipboard用法及代码示例
- Python pyspark DataFrame.to_numpy用法及代码示例
- Python pyspark DataFrame.to_orc用法及代码示例
- Python pyspark DataFrame.to_parquet用法及代码示例
- Python pyspark DataFrame.to_markdown用法及代码示例
- Python pyspark DataFrame.to_csv用法及代码示例
- Python pyspark DataFrame.to_json用法及代码示例
- Python pyspark DataFrame.to_string用法及代码示例
- Python pyspark DataFrame.toPandas用法及代码示例
- Python pyspark DataFrame.toLocalIterator用法及代码示例
- Python pyspark DataFrame.toJSON用法及代码示例
- Python pyspark DataFrame.toDF用法及代码示例
- Python pyspark DataFrame.transform用法及代码示例
- Python pyspark DataFrame.take用法及代码示例
- Python pyspark DataFrame.tail用法及代码示例
- Python pyspark DataFrame.transpose用法及代码示例
- Python pyspark DataFrame.truncate用法及代码示例
注:本文由纯净天空筛选整理自spark.apache.org大神的英文原创作品 pyspark.pandas.DataFrame.to_dict。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。