pandas.Series.map # 系列。地图( arg , na_action = None ) [来源] # 根据输入映射或函数映射 Series 的值。 用于将 Series 中的每个值替换为另一个值,该值可能源自函数 adict或 a Series。 参数: arg函数、collections.abc.Mapping 子类或 Series映射对应关系。 na_action {无,'忽略'},默认无如果“忽略”,则传播 NaN 值,而不将它们传递给映射对应关系。 返回: 系列与调用者相同的索引。 也可以看看 Series.apply用于在系列上应用更复杂的函数。 Series.replace将to_replace中给出的值替换为value。 DataFrame.apply按行/列应用函数。 DataFrame.map在整个 DataFrame 上按元素应用函数。 笔记 当arg是字典时,Series 中不在字典中的值(作为键)将转换为NaN。但是,如果字典是dict定义的子类__missing__(即提供默认值的方法),则使用此默认值而不是NaN。 例子 >>> s = pd.Series(['cat', 'dog', np.nan, 'rabbit']) >>> s 0 cat 1 dog 2 NaN 3 rabbit dtype: object map接受 adict或 a Series。中找不到的值dict将转换为NaN,除非字典有默认值(例如defaultdict): >>> s.map({'cat': 'kitten', 'dog': 'puppy'}) 0 kitten 1 puppy 2 NaN 3 NaN dtype: object 它还接受一个函数: >>> s.map('I am a {}'.format) 0 I am a cat 1 I am a dog 2 I am a nan 3 I am a rabbit dtype: object 为了避免将该函数应用于缺失值(并将它们保留为 NaN),na_action='ignore'可以使用: >>> s.map('I am a {}'.format, na_action='ignore') 0 I am a cat 1 I am a dog 2 NaN 3 I am a rabbit dtype: object