是否有比使用.mask()更快的方法对某些数据帧列执行条件计算?下面显示的代码似乎可以工作,但在使用大型数据集时速度可能会很慢
def inversing(column):
DF = pd.read_csv('DataFrame.csv')
DF[column] = DF[column].mask(DF[column] !=0, 1/DF[column])
columns_to_inverse = ['a','b','c']
inverting(columns_to_inverse)
Tags:
有多种方法可以实现这一点,但直接的方法是使用lambda:
df[column].apply(lambda x: 1/x if x != 0 else x)
jupyter笔记本中的完整代码和计时:
在我的机器上产生:
相关问题 更多 >
编程相关推荐