python - If、Elif、Else 仅返回“IF”值
问题描述
我正在基于另一列创建一个带有“if、elif、else”的新列。
我的语法只生成“if”语句中列出的值,但是它应该为另一列中的某些值返回“elif”和“else”。
我创建的变量是 OHX02N,基于 OHX02CTC,我得到 3,这是我的第一个 if 语句中的命令,即使它应该为前五个 obs 返回 3,1,1,3,1 .
想法?
def F (value):
if FINALSET.loc[value,'OHX02CTC'] == 'E' or 'P' or 'R':
FINALSET.loc[value, 'OHX02N'] = 3
elif FINALSET.loc[value,'OHXO2CTC'] == 'J' or 'T':
FINALSET.loc[value,'OHX02N'] = 2
elif FINALSET.loc[value,'OHX02CTC'] == 'K' or 'Z':
FINALSET.loc[value,'OHX02N'] = 1
else:
FINALSET.loc[value,'OHXO2N'] = 0
for value in range(len(FINALSET)):
F(value)
解决方案
推荐阅读
- android - 如何在 Termux 上安装 Heroku
- go - 当函数采用接口时传递指向字符串的指针?
- git - Git Commit eeror '错误:无法生成 gpg1:没有这样的文件或目录'
- javascript - 如何访问 ["X", "X", "O", "", "O"]
- angular - 为什么我的 observable 返回 null?
- javascript - JavaScript - 扁平化嵌套对象数组
- java - 在运行时更新 log4j2 模式
- python - ssl/asyncio:即使处理了错误也可以回溯
- bazel - rbuildfiles 返回 WORKSPACE 中的所有外部依赖项
- javascript - D3 V4 树搜索和突出显示