当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python Pandas DataFrame applymap方法用法及代码示例


Pandas DataFrame.applymap(~) 方法在源 DataFrame 的每个条目上应用一个函数。请注意,将返回 DataFrame 的新副本,因此源 DataFrame 将保持不变。

参数

1. func | function

该函数将 DataFrame 的条目作为参数并返回新值。

返回值

具有转换后的值的新DataFrame。

警告

为了检查是否可以进行任何优化,applymap(~) 在第一行/列上调用 func 两次。正如您所期望的,这些函数中只有一个会实际应用映射并返回新值。

但陷阱是,如果指定的 func 修改了其他内容,那么该修改最终将在第一行/列中发生两次。

例子

基本用法

考虑以下 DataFrame :

df = pd.DataFrame({"A":[3,4], "B":[5,6]})
df



   A  B
0  3  5
1  4  6

假设我们想将 DataFrame 中的每个值增加 5

df.applymap(lambda x : x + 5)



   A  B
0  8  10
1  9  11

请注意以下事项:

  • x 表示 df 的条目(例如 34 等)。

  • 由于返回了新的DataFrame,我们原来的df 保持不变。

更喜欢矢量化操作而不是 applymap

大多数时候,我们不需要使用applymap(~),因为我们可以直接操作元素,如下所示:

df + 5



   A  B
0  8  10
1  9  11

这些矢量化操作比 apply(~) applymap(~) 等转换的性能要高得多。

相关用法


注:本文由纯净天空筛选整理自Isshin Inada大神的英文原创作品 Pandas DataFrame | applymap method。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。