我正在尝试应用一个函数,如果单元格以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
[...]
问题可能不是apply函数。这可能是一个可变范围的问题。尝试打印合并数据的外部和主要内部
很抱歉你这么不自信, 这个功能确实有效,问题出在别的地方,我把它修好了。 谢谢你的回答
相关问题 更多 >
编程相关推荐