列对于执行程序至关重要,因此,如果该列不存在,则希望它消失。
df["column"] = df[["column1", "column2"]].apply(self._func, axis=1)
如果column1或column2不存在,这将引发KeyError。
if "vidcolumn1" in df.columns and "column2" in df.columns:
df["column"] = df[["column1", "column2"]].apply(self._func, axis=1)
else:
raise ValueError("Column1 and Column2 are required for ...")
这似乎并没有提供任何有用的信息,除非您想在其他部分做一些事情,例如将错误记录在日志中的其他地方。
因此,如果在列丢失的情况下没有程序的后备,那么使用第二个选项是否有意义?
答案 0 :(得分:2)
使用(N+2)*(N+1)//2
语句:
try-except
但是在您的解决方案中,也应该在try:
df["column"] = df[["column1", "column2"]].apply(self._func, axis=1)
except KeyError:
#error log
print ('I have problem')
print("Column1 and Column2 are required for ...")
语句中添加代码:
else