熊猫:应用带有列和变量作为参数的函数

M_Idk392845

我正在尝试将具有多个参数的函数应用于数据框,其中两个参数需要分配给数据框的行,而一个是变量(一个简单的数字)。

这些行有一个类似线程的变体:(与我原来的函数相比,所有函数都被简化了)

import pandas as pd

dict={'a':[-2,5,4,-6], 'b':[4,4,5,-8]}

df=pd.DataFrame (dict)
print(df)

def DummyFunction (row):
    return row['a']*row['b']
#this works:
df['Dummy1']=df.apply(DummyFunction, axis=1)

但是,如何在函数接受一个附加参数(固定变量)的情况下应用以下变体?我似乎找不到办法将其传递给apply方法:

def DummyFunction2(row, threshold):
    return row['a']*row['b']*threshold
# where threshold will be assigned to a number?
# I don't seem to find a viable option to fill the row argument below:
# df['Dummy2']=df.apply(DummyFunction2(row,1000), axis=1)

谢谢你的帮助!

pp

您可以将附加变量直接作为命名参数传递给pd.DataFrame.apply

def DummyFunction2(row, threshold):
    return row['a']*row['b']*threshold

df['Dummy2'] = df.apply(DummyFunction2, threshold=2, axis=1)

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

通过带有参数的函数作为参数?

带有数据框和变量参数的 lapply 函数

当类型和参数长度可能不同时,如何传递“带有参数的函数”作为参数?

将带有三个参数的类变量作为参数传递给构造函数

Scala中奇怪的定义和带有花括号的函数的调用(函数作为函数的参数)

在熊猫中应用带有args的函数

数组作为带有参数的函数?

将函数应用于以其他列作为参数的熊猫列

如何调用带有变量的函数并将其作为参数传递?jQuery的

如何将monadic函数作为带有灵活类型变量的参数传递?

带有窗口函数的熊猫累积和

在以索引和列值作为输入的熊猫数据框上应用逐元素函数

使用带有参数的函数和与参数相同类型的变量的两个重载

调用函数作为带有参数的参数传递

熊猫-将函数应用于具有来自不同列的多个参数的数据框

熊猫变换函数作为参数

列表作为熊猫函数的参数

熊猫在带有数字和字符串的列中应用小数

函数内部的dplyr:将函数和列名作为参数时,将函数应用于列

如何在带有参数的函数中调用变量函数?

熊猫唯一值作为带有计数的列

将函数应用于带有两个参数的pandas数据框中的列

传递“带有管道的命令”作为bash函数参数

将带有可选/默认属性的对象作为参数的函数?

反应。如何传递带有参数的函数作为道具?

带有接口的函数可以作为参数传递吗?

函数指针作为带有“返回接口{}”的参数

c ++函数(带有主体)作为参数

带有对象指针作为参数的C ++复制构造函数