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
}