条件语句和应用

2024-06-30 08:03:36 发布

您现在位置:Python中文网/ 问答频道 /正文

我不能共享很多代码,但我使用条件语句将函数传递给数据帧中的列。我收到一个数据库错误(<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有问题,它是我的数据帧的第一行,但不具备上面布尔索引中表示的条件。我的问题是,为什么它要将该函数应用于我的整个数据帧,而不是我正在筛选的数据帧


Tags: 数据函数代码newmy错误username条件
1条回答
网友
1楼 · 发布于 2024-06-30 08:03:36

我想出来了:

NSAM['Action'] = NSAM.loc[(NSAM['Security_Description'] == 'Update External User - Reporting') & (NSAM.Analyst.isin(analyst_list))].apply(my_new_func, axis=1)

在我的原始代码中,我说了NSAM.apply(my_new_func,axis=1)。我调用了整个dataframe来应用函数,而不是过滤版本

相关问题 更多 >