Apply()函数不能正常工作

2024-10-03 23:24:30 发布

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

我正在尝试应用一个函数,如果单元格以gncr而不是实际的数字开头,它将删除名为“gncr”的行的前4个字符。这个函数确实可以工作,但它似乎没有返回,而且我的数据帧保持不变

我试过很多东西,但都不管用

def extract_gncr(gncr):
    if gncr[0] == 'G':
        gncr = gncr[4:]
    elif not gncr.isdigit():
        gncr = ''
    print(gncr) #This shows me the fonction actually works
    return(gncr)

def merge_data(primary_df):
    foreign_df = pd.read_exce(r"somefile.xlsx")
    #extract the number from "GNCRxxxx"
    foreign['GNCR'] = foreign_df['GNCR'].apply(extract_gncr)
    primary['GNCR'] = primary_df['GNCR'].apply(extract_gncr)
    #foreign and primary remains unchanged
    [...] 

Tags: the数据函数dfifdefextract数字
2条回答

问题可能不是apply函数。这可能是一个可变范围的问题。尝试打印合并数据的外部和主要内部

很抱歉你这么不自信, 这个功能确实有效,问题出在别的地方,我把它修好了。 谢谢你的回答

相关问题 更多 >