Join Barron Stone for an in-depth discussion in this video Exploring Lake Pend Oreille, part of Code Clinic: Python.
Hello, and welcome to Code Clinic. My name is Baron Stone. Code Clinic is a monthly course where a unique problem is introduced to a collection of lynda.com authors. In response, each author will create a solution, using their programming language of choice. You can learn several things from Code Clinic, such as different approaches to solving a problem, the pros and cons of different languages, and some tips and tricks to incorporate into your own coding practices.
In this month, we'll work on a problem in statistical analysis, and to some extent, handling big data. It's common to use a computer to manipulate and summarize large amounts of information, providing important insight on how to improve or handle a situation. In this problem, we'll use weather data collected by the US Navy from Lake Pend Orielle, in Northern Idaho. Lake Pend Orielle is the fifth deepest fresh water lake in the United States. And, it's so deep, in fact, that the US Navy uses it to test submarines. As part of that testing, the US Navy compiles an exhaustive list of weather statistics, wind speed, air temperature, barometric pressure.
You can browse this data by pointing your web browser to http://lpo.dt.navy.mil. You'll find several weather summaries, a web cam, and the raw data they collect every five minutes, archived as standard text files. For anyone living or working on lake Pend Orielle, weather statistics are an important part of everyday life. Average wind speed can be very different than median wind speed, especially if you're on a small boat in the middle of the lake. In this challenge, each of our authors will use their favorite language to calculate the mean and median of the wind speed, air temperature, and barometric pressure, recorded at the Deep Moor Station, for a given range of dates.
First, let's briefly review mean and median. These are both statistics. To explain statistics, we need a set of numbers. How about 14 readings for wind gust at the Deep Moor Weather Station on January 1st, 2014. You can see that data at this website. The first column is the day the wind gust was recorded. The second column is the time it was recorded. And the third column is the wind gust in miles per hour. The mean is also known as the average. To calculate the mean of a range of numbers, simply add the values in the set then, divide by that number of values.
In this example, we add 14 plus 14 plus 11 plus 11 plus 11 plus 11 plus 11 plus 3 plus 7 plus 7 plus 7 plus 7 plus 4 plus 8, then divide that sum by 14, which is the count of numbers in this set. And in this case, the mean is equal to 9. The median is the number halfway between, all of the values, in a sorted range of values. Think of the median as the median strip of the road. It's always marking the center of the road. To calculate the median, first sort the numbers from lowest to highest.
If there's an odd number of values, then just take the middle number. If there's an even number of values, then calculate the average of the central two numbers. In this case, there is an even number of values. So we sort, then take the average of the middle two values, 8 and 11. The median is 9.5. So there's our first challenge. Pull statistics from a data set available online. Perhaps you want to pause and create a solution of your own. How would you solve the problem? In the next videos, I'll show you how I solved this challenge.
Barron introduce challenges and provides an overview of his solutions in Python. Challenges include topics such as statistical analysis, searching directories for images, and accessing peripheral devices.
Visit other courses in the series to see how to solve the exact same challenges in languages like C#, C++, Java, PHP, and Ruby.