[英]Test column pandas dataframe with none type
我正在使用pytest
来测试我的代码。
我想执行的一个特定测试是关于 function ,它在 pandas df
中的列上运行。
function foo_fun
应用于 pandas df,它会在对原始 dataframe 执行一些操作后添加一个新列。 如果输入为None
,则此 function 应返回None
。
例子:
def foo_fun(data):
# create a new column based on INFO column
txt=list(data.INFO)
data['NEW_COLUMN'] = ['value' if s is not None else None for s in txt]
return data
def foo_test():
fake_data = pd.DataFrame({'ENTITYKEY':['1','2','3','4'],
'INFO':['That\'s what she said',
'Questo è un testo in italiano',
'Eso es lo que dice el',
None]})
fake_data = foo_fun(fake_data)
assert(all(fake_data['NEW_COLUMN']==['value','value','value',None]))
我该如何测试呢? 测试失败,问题是最后一个值None
。
使用 iloc 获取最后一列,然后检查。
if fake_data.iloc[:,-1] != None:
print("Last Column is not None")
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.