Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 有没有一种最佳的方法可以在没有iTError的情况下迭代数据帧的每个单元格?_Python_Python 3.x_Pandas - Fatal编程技术网

Python 有没有一种最佳的方法可以在没有iTError的情况下迭代数据帧的每个单元格?

Python 有没有一种最佳的方法可以在没有iTError的情况下迭代数据帧的每个单元格?,python,python-3.x,pandas,Python,Python 3.x,Pandas,我想应用一个函数foo(df.column,df.index,df.current value)并以相同的数据帧结束,但每个单元格都以最快的方式等于函数的结果 def foo(dates, name, value): return black_box_function(dates, name, value) 我希望dates是单元格的列,name是数据框单元格内容的索引和值 我尝试将其实现为df.apply(foo(df['index'],df['column']),但不起作用。您可以

我想应用一个函数
foo(df.column,df.index,df.current value)
并以相同的数据帧结束,但每个单元格都以最快的方式等于函数的结果

def foo(dates, name, value):
    return black_box_function(dates, name, value)
我希望dates是单元格的列,name是数据框单元格内容的索引和值


我尝试将其实现为
df.apply(foo(df['index'],df['column'])
,但不起作用。

您可以使用
np.vectorize
创建一个向量化函数,该函数可以将数据帧列作为参数(或任何其他类似数组的类型)。请参阅下面的示例 (请注意,传递给向量化函数的参数的长度必须相同):

def foo(val1、val2、val3):
“”“在这里使用函数参数执行一些操作”“”
返回值1*2*3
#这将在数据帧中创建一个名为“new_col”的新列
#df.new_col中的每一行都是应用于该行的foo的结果
df['new_col']=np.vectorize(foo)(df.col1,df.col2,df.col3)

请参阅文档。

那么您想对整个数据帧应用一个函数吗?@DanielMesejo Yes您可以使用一些矢量化,这取决于函数,请包括详细信息。关于您试图实现的内容,我们越详细,就越能帮助您实现您想要的。目前还不清楚。您能否提供取消函数示例?示例输入和输出?@Spenrose如果函数设计用于处理标量值,那么您真的别无选择,只能使用
.apply
.applymap
、或手动循环。这如何更有效?hi@juanpa.arrivillaga,请参考此线程:。