【发布时间】:2015-03-13 02:32:32
【问题描述】:
我正在开发一组 python 脚本来预处理数据集,然后使用 scikit-learn 生成一系列机器学习模型。我想开发一组单元测试来检查数据预处理功能,并希望能够使用一个小的测试 pandas 数据框,我可以为其确定答案并在断言语句中使用它。
我似乎无法让它加载数据框并将其传递给使用 self 的单元测试。我的代码看起来像这样;
def setUp(self):
TEST_INPUT_DIR = 'data/'
test_file_name = 'testdata.csv'
try:
data = pd.read_csv(INPUT_DIR + test_file_name,
sep = ',',
header = 0)
except IOError:
print 'cannot open file'
self.fixture = data
def tearDown(self):
del self.fixture
def test1(self):
self.assertEqual(somefunction(self.fixture), somevalue)
if __name__ == '__main__':
unittest.main()
感谢您的帮助。
【问题讨论】:
-
你是什么意思“你不能得到它”?有错误吗?如果是这样,错误是什么?你希望发生什么,而发生什么?
-
我没有收到错误,无论我在测试中放置什么,测试都会成功运行。我想要做的是生成测试,这些测试可以测试操纵 pandas 数据框并使用小型测试数据框确认其行为的函数。
-
您需要展示一个实际示例,其中包含不起作用的实际数据。
-
当你使用
self时,你必须把这些函数放在一个类中。 -
感谢您的帮助,我试图获得一个使用嵌入式数据框的示例,但没有运气。明天我将尝试构建课程,看看是否能解决问题。
标签: python pandas python-unittest