我不能共享很多代码,但我使用条件语句将函数传递给数据帧中的列。我收到一个数据库错误(<cx_Oracle._Error object at 0x00000114A0BE38D0>
,'occurred at index 880')
def my_new_func(row):
return RCCheck.nsamcheck(
sk=row['sk'], reportseries=row['reportseries'], rssd=row['rssd'], username=username, pw=password)
NSAM.loc[(NSAM['Security_Description']=='Update External User - Reporting') & (NSAM.Analyst.isin(analyst_list)), 'Action'] = NSAM.apply(my_new_func, axis=1)
错误消息表明索引880有问题,它是我的数据帧的第一行,但不具备上面布尔索引中表示的条件。我的问题是,为什么它要将该函数应用于我的整个数据帧,而不是我正在筛选的数据帧
我想出来了:
在我的原始代码中,我说了NSAM.apply(my_new_func,axis=1)。我调用了整个dataframe来应用函数,而不是过滤版本
相关问题 更多 >
编程相关推荐