dask.dataframe.Index.map
dask.dataframe.Index.map¶
- Index.map(arg, na_action=None, meta=_NoDefault.no_default, is_monotonic=False)[源代码]¶
使用输入映射或函数映射值。
此文档字符串是从 pandas.core.indexes.base.Index.map 复制而来的。
Dask 版本可能存在一些不一致性。
请注意,此方法会清除任何已知的分区。
如果你的映射函数是单调递增的,那么使用 is_monotonic 将映射函数应用于旧的分区,并将新的分区分配给输出。
- 参数
- 映射器函数, 字典, 或 Series (Dask 不支持)
映射对应关系。
- na_action{None, ‘ignore’}
如果为 ‘ignore’,则传播 NA 值,而不将它们传递给映射对应关系。
- metapd.DataFrame, pd.Series, dict, iterable, tuple, optional
一个空的
pd.DataFrame或pd.Series,其数据类型和列名与输出匹配。此元数据对于 dask dataframe 中的许多算法正常工作是必要的。为了便于使用,还提供了一些替代输入。除了DataFrame之外,还可以提供{name: dtype}的字典或(name, dtype)的可迭代对象(注意名称的顺序应与列的顺序匹配)。除了系列之外,还可以使用(name, dtype)的元组。如果未提供,dask 将尝试推断元数据。这可能会导致意外结果,因此建议提供meta。有关更多信息,请参阅dask.dataframe.utils.make_meta。
- 返回
- Union[Index, MultiIndex]
映射函数应用于索引的输出。如果函数返回一个包含多个元素的元组,将返回一个 MultiIndex。
示例
>>> idx = pd.Index([1, 2, 3]) >>> idx.map({1: 'a', 2: 'b', 3: 'c'}) Index(['a', 'b', 'c'], dtype='object')
使用 map 与函数:
>>> idx = pd.Index([1, 2, 3]) >>> idx.map('I am a {}'.format) Index(['I am a 1', 'I am a 2', 'I am a 3'], dtype='object')
>>> idx = pd.Index(['a', 'b', 'c']) >>> idx.map(lambda x: x.upper()) Index(['A', 'B', 'C'], dtype='object')