问题描述:接着上一节继续讨论下一个问题,如何check表格中的project是否在base表(左边)存在?并且在没有做数据有效性之前,要是出现task并不包含在相应的project中如何得知呢?
图1 问题描述其实想法很简单,如何project并没有出现过,那么check栏就写"NAN".如果project出现过,而task没有出现过,那么就记为“0”。最后就是project出现过,而且task也出现过的情况,此时记为“1”。
流程图如下图图2所示,这次没有那么多的变量。实际上的思路和第1节是大同小异的,比较简单直接的循环迭代过程(两个for循环)。
图2由于上一节已经给出了前面两步读入表格的步骤了,这里不再重复了。最后两步介绍一下,我这种方法可能比较笨但是可以work哈哈哈~
先把要填充的列写满为“NAN”,后面根据判断循环语句使没有达到条件的保留该值。
图3接下来图4-图8就是判断是否填写“0”或“1”的过程了。
图4 图5 图6 图7这里要注意的是图7中填“1”的情况后面一定要记得加break说明找到了相应的值,否则又可能变成“0”了。
最后上个结果图~
图8本节的没什么难点,要是有什么优化的思路可以进行尝试,因为这个方法跑起来比较慢。大概七百多条数据跑了两个多小时。。哈哈哈,本节完!
网友评论