Yiyang's Second Project Update

by Yiyang Shi

20 Apr 2016

Here is what I have.

https://github.com/yiyangshi/FinalProject

Up to this point, I have not yet finished my proposed milestones for Thursday. But I will get that done tomorrow before the class. I spent a lot of time building up input controls and cleaning up codes over the first two functions. At Tuesday, my codes for the first two functions were long and redundant. Now, its function based and is much more flexible. Also, when I tried to run my existing code on the whole dataset, which is over 50 mb, I discovered bugs. It also took me a long time debugging. So, I am changing my strategy towards big dataset. Before, I said that I will get all the codes right and then run the codes on the complete dataset. Now, for each pieces of code I wrote, I will run it once on the complete dataset. I would like to at least know where my bug is and then move to the next piece.

Looking ahead, I think I have gotten the most difficult pieces of the program. The remaining functions are going to be similar to what I have now so it should not take too long. I am still a little concerned about the visualization part so I will spend the weekend to do that.

Milestones:

For Tuesday:

  • Configure PyCharm. Clean and upload the large database into PyCharm.
  • Write function that take carrier name as input and calculate the max, mean, and min delay time for the carrier.
  • Write function that take carrier name as input and calculate the top delay reasons and corresponding delay time for the carrier.
  • Do step 2 and 3 again for the airports.

For Thursday:

  • Write function to calculate the top 10 carriers that are most likely to delay.
  • Write function to calculate the average delay time for different day of week.

For Tuesday:

  • Write function to calculate the top airports that have high delay time due to weather or other reasons.
  • Run the above codes on data of another month.
  • Build visualization on the top 10 carriers
  • Build user interface. Allow users to choose between the three functionality.

To Be Scheduled:

  • Create Help Functions
  • Improve the program. Creat “graceful” error message and quit option.
  • Debug.

Strech Goals:

  • Maybe use turtle to create line graph.
  • Make the program into an “App”-like program. Make it fun.
Find Yiyang Shi on Twitter, Github, and on the web.