dtoolkit.accessor.series.values_to_dict#

dtoolkit.accessor.series.values_to_dict(s: Series, /, unique: bool = True, to_list: bool = True, dropna: bool = True) dict[source]#

Convert index and values to dict.

Parameters:
uniquebool, default True

If True would drop duplicate elements.

to_listbool, default True

If True one element value will return list.

dropnabool, default True

If True it will drop the nan value whatever it’s key or value.

Returns:
dict

The datastruct is {index: [values]}.

Notes

The same key of values would be merged into list.

Examples

>>> import json
>>> import dtoolkit
>>> import pandas as pd
>>> s = pd.Series(range(4), index=["a", "b", "a", "c"])
>>> s
a    0
b    1
a    2
c    3
dtype: int64
>>> print(json.dumps(s.values_to_dict(), indent=4))
{
    "a": [
        0,
        2
    ],
    "b": [
        1
    ],
    "c": [
        3
    ]
}

Unpack one element value list.

>>> print(json.dumps(s.values_to_dict(to_list=False), indent=4))
{
    "a": [
        0,
        2
    ],
    "b": 1,
    "c": 3
}