I would like to create a brand new data frame by replacing values of a DF using a custom function. I keep getting the following error "ValueError: The truth value of a Series is ambiguous. Use a.empty, a.bool(), a.item(), a.any() or a.all()."
I tried some suggestions (Truth value of a Series is ambiguous. Use a.empty, a.bool(), a.item(), a.any() or a.all()) but it didn't work.
I would appreciate if somebody could shed light on this issue and help me out. Thank you in advance for your time.
def convert2integer(x):
    if x <= -0.5:
        return -1
    elif (x > -0.5 & x <= 0.5):
        return 0
    elif x > 0.5:
        return 1
df = pd.DataFrame({'A':[1,0,-0.6,-1,0.7],
       'B':[-1,1,-0.3,0.5,1]})
df.apply(convert2integer)
 
    