繁体   English   中英

测试柱 pandas dataframe 无类型

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM