我在我的一个程序中使用了这个函数,根据我的研究,通过向量化可以实现更好的性能。
如何使用向量化函数而不是使用下面的代码来实现相同的分辨率?
for i, row in df.iterrows():
ifor_val = something
if <condition>:
ifor_val = something_else
df.set_value(i,'ifor',ifor_val)
请您参考如下方法:
如果该值取决于行中的其他值,则无法避免迭代。
df['ifor'] = df['some_col'].apply(lambda v: something if <condition> else something_else)
这将在 Pandas 中进行迭代,因此它更简洁(并且可能更快)。
