尝试不同的方法来做一个有条件的测试,结果并不是预期的结果(PYTHON)

2024-10-03 02:37:32 发布

您现在位置:Python中文网/ 问答频道 /正文

我´我试图在双条件的基础上修改柱基的一些单元格。如果“LL”列等于“201”,而“DEC”列等于“RC”,则代码应在“FCH\u REC”列(此列最初填充了不同的日期)中写入“none”。另外,如果LL列等于“400”,DEC列等于“RCLA”,我想在FCH\u REC列中写“none”。接下来是我尝试的

首先,我转换成字符串

table["FCH_REC"] = table["FCH_REC"].astype(str)
table["LL"] = table["LL"].astype(str)
table["DEC"] = table["DEC"].astype(str)

第二次我试了这个:

table.loc[(tabla['LL'] == '201') & (tabla['DEC'] == "RC" ), "FCH_REC"]  = None
table.loc[(tabla['LL'] == '400') & (tabla['DEC'] == "RCLA" ), "FCH_REC"]  = None

第三,我试过这个:

table.columns = table.columns.str.replace(' ', '')
table.loc[(tabla['LL'] == '201') & (table['DEC'] == "RC" ), "FCH_REC"]  = "None"
table.loc[(renove['LL'] == '400') & (table['DEC'] == "RCLA" ), "FCH_REC"]  = "None"

第四,我试过这个(这个有语法问题):

table["FCH_REC"] = table[["FCH_REC","LL"]].apply(lambda row: 
row["FCH_REC"] = "None" if row["LL"] in ("RC", "RCLA") else row["FCH_REC"] )

第五,我试过这个:

for i in list(range(0,table.shape[0])):

if table.loc[i,"DEC"] in ("RC", "RCLA"):
    table.loc[i,"FCH_REC"] == "NONE"

我不知道´我不知道发生了什么事

谢谢你的帮助


Tags: innonetablelocdecrowrcll