当前位置: 首页 > 知识库问答 >
问题:

熊猫系列有什么不同。apply()和系列。映射()?[副本]

欧阳昊阳
2023-03-14

使用输入对应关系映射序列值(可以是dict、序列或函数)

对Series的值调用函数。可以是ufunc(适用于整个系列的NumPy函数)或仅适用于单个值的Python函数

apply()。同时,map()允许对空值处理进行一定程度的控制。除了历史上类似于Python的apply()map()函数之外,在一般使用中,是否有理由选择其中一个函数?为什么不把这些功能结合起来呢?


共有1个答案

归松
2023-03-14
匿名用户

差别很微妙:

熊猫。系列map将用传递到map的值替换序列值。

熊猫。系列apply将函数(可能带有参数)应用于序列的值。

区别在于你能把什么传递给方法

  • map和Application都可以接收一个函数:
s = pd.Series([1, 2, 3, 4])

def square(x):
     return x**2

s.map(square) 

0    1
1    2
2    3
3    4
dtype: int64

s.apply(square) 

0    1
1    2
2    3
3    4
dtype: int64
  • 但是,传递到map的函数不能有多个参数(它将输出ValueError):
def power(x, p):
    return x**p

s.apply(power, p=3)

0     1
1     8
2    27
3    64
dtype: int64


s.map(power,3)
---------------------------------------------------------------------------
ValueError  

  • map可以接收字典(甚至是pd.Series,在这种情况下,它将使用索引作为键),而apply不能(它将输出TypeError
dic = {1: 5, 2: 4}

s.map(dic)

0    5.0
1    4.0
2    NaN
3    NaN
dtype: float64

s.apply(dic)
---------------------------------------------------------------------------
TypeError  


s.map(s)

0    2.0
1    3.0
2    4.0
3    NaN
dtype: float64


s.apply(s)

---------------------------------------------------------------------------
TypeError  

 类似资料:
  • 第一科伦:武器 第二栏:Pepetrator_年龄 例如,y轴应该是案件数量x轴犯罪人的年龄 线是犯罪者使用的武器类型 您可以将其复制粘贴到jupyter以初始化数据集 此处的数据集:https://www.kaggle.com/jyzaguirre/us-homicide-reports

  • 我有一个 CSV 文件,其中包含名称和电子邮件列。我的目标是映射一个新列,即将列名分成两列,名字和姓氏。以下示例表。 将 老实说,我目前只能阅读关于熊猫的文件,我已经阅读了一些关于熊猫地图的文章,但是我还没有找到合适的。 谢谢。

  • 问题内容: 我有一个熊猫DataFrame ,。它包含一列“大小”,以字节为单位表示大小。我已经使用以下代码计算了KB,MB和GB: 我已经运行了超过120,000行,并且根据%timeit,每列花费的时间约为2.97秒* 3 =〜9秒。 无论如何,我可以使它更快吗?例如,我是否可以代替一次套用并运行3次而不是一次返回一列,而是可以一次通过返回所有三列以将其插入回原始数据帧吗? 我发现的其他问题都

  • 结束时更新更新2结束时更新 我从这里读到:从dataframe列获取列表 熊猫数据框列在拉出时是熊猫系列 然而,我的情况并非如此: 第一部分(建立DataFrame读取json刮擦)因为它包含业务信息,我不能显示完整的代码,但基本上它读取一行数据(存储在系列中),并在DataFrame的末尾追加。 下一部分(检查类型):(请忽略函数的功能) 最后调用函数:(“Raw_Impressions”是一个

  • 问题内容: 不知道这里出了什么问题…我想要的只是本系列中的第一个也是唯一的元素 为什么这样不起作用?以及如何获得第一个元素? 问题答案: 当索引为整数时,您将无法使用位置索引器,因为选择将是模棱两可的(应基于标签还是位置返回?)。您需要明确使用 或传递标签。 由于索引类型是对象,因此可以进行以下操作: 但是对于整数索引,情况有所不同:

  • 我想给我的 以下是我的代码: 当我运行这个,我得到以下错误: 我怎样才能解决这个问题?