为了账号安全,请及时绑定邮箱和手机立即绑定

逻辑不起作用 - 匹配列表中的年龄值

逻辑不起作用 - 匹配列表中的年龄值

料青山看我应如是 2021-11-09 16:22:15
我正在尝试将特定值 ( val_A) 与我val_B在 csv 格式的列表 ( ) 中的年龄匹配。我正在使用下面的 Python 代码,但它从未满足前两个标准。最后两个elif和else语句都在起作用,并且几乎总是else应用标准。def age_convert(val_A):    val_B = 1    ages = pd.read_csv('age.csv')    #print(ages)    if val_A in ages:        val_B = val_A    elif val_A>91:        val_B=91    elif val_A<0:        val_B=val_A*-1    elif val_A==86:        val_B=val_A+2    else:        val_B=val_A+1        print('I went through the else')    return val_Btest = age_convert(1)print(test)
查看完整描述

1 回答

?
噜噜哒

TA贡献1784条经验 获得超7个赞

您是否尝试将值明确地转换为Integer?


无论如何,这似乎不是检查值是否在 DataFrame 中的最佳方法,因为 DF“中”的元素是列名。而不是检查它是否在 df.values 中:


>>> df

    A   B   C   D

0  10  11  12  13

>>> 'A' in df

True

>>> 10 in df

False

>>> 10 in df.values

True


查看完整回答
反对 回复 2021-11-09
  • 1 回答
  • 0 关注
  • 147 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号