我正在尝试将If语句从excel转换为python。
我知道对于excel,我们有If语句:
IF(logical_test, [value_if_true], [value_if_false])
IFERROR(value, value_if_error)
或功能:
The OR function returns TRUE if any of its arguments evaluate to TRUE, and returns FALSE if all of its arguments evaluate to FALSE.
对于Python,我想复制下面两个excel if语句。
=IF( OR(IFERROR(AM2+0=0, AM2=""), DK2<>" "), " ", AM2)
这里AM2,DK2是excel文件中的列,<>在excel中表示不相等。
谁能帮我把这个翻译成Python吗?这对我来说很困惑。
像这样(如果我们讨论的是pandas DataFrame):
df['whatever'] = np.where(
(df['AM'] == 0) | (df['AM'].isna()) | (df['AM'] == " ") | (df['DK'] != ' ') | (df['AM'] == ""),
"ZZZ",
df['AM']
)
我使用字母作为列名,因为没有提供列名。