Programming Project 05

This assignment is worth 90 points (9
.0% of the course grade)
order essay now!
Assignment Overview
The goal of this project is to gain more practice with
functions, files, exception handling, and
dictionaries.
L
et’s tackle a political question. It is standard political dogma
that Democrats “want big government”
and that Republicans “create jobs.” Let’s see if data supports the dogma. The official source of
employment statistics is the U.S. Bureau of Labor Statistics (
http://www.bls.gov/data/#employment
)
and we have collected data for private employment and government employment. Our assumption is
that if a party is creating jobs, then private employment will increase, and if a party is creating bigger
government, then
government employment will increase. Your job is to extract that information from
the files provided.
Project Specification
There are two
employment
data files provided.
Both
have comma

separated data. Look at the
headings to understand their format.
Numerical values are in thousands.
The data for 2015 is, of
course,
incomplete.

government_employment.txt

private_employment.txt
There is also a
comma

separated
file on presidents, their years, and their political party.

presidents.txt
Since the
transition from one term to another occurs partway through January
,
the last year listed for
any president is the same as the first year of the next president. To keep things simple let’s count
January entirely for the incoming president.
That is, in the
file the last year listed for a president will
not count. For example, George W. Bush’s last year is listed as 2009 but he was president for only a
few weeks that year so we will not count him as being president in 2009.
Also, w
atch out for the “Jr.”
fo
r President Carter when you are reading the file

there is an extra comma.
Finally,
we will consider
only the full years for each president so for Obama we will not count an
y data from 2015 (especially
since the data for March and April is preliminary, not
final data).
1.
Your program
will prompt for the
file
names. Use
exceptions
to check that each file was opened
without an error.
2.
All president data can only come from the presidents.txt file, i.e. you cannot code specifics about
presidents into your progra
m. We will test your program using a file of that format, but with
different entries, for example we may test on a file that has three of the lines of that file.
3.
As an academic requirement your program must define and use two functions in a
meaningful way
.
(Feel free to use more
functions
; I did.)
4.
Calculate
and display
in columns
(see sample below
):
1.
the average monthly private employment for each political party
2.
the average monthly government employment for each political party
3.
the
private employment of the first month and last month of each president
4.
the change in private employment from the first month to the last month of each president
;
report the change as both a difference and as a percentage
5.
the government employment of the
first month and last month of each president
6.
the change in government employment from the first month to the last month of each president
;
report the change as both a difference and as a percentage
5.
Write a paragraph on your conclusions
of the validity of
the political dogma that “Democrats
want big government and Republicans create jobs.” Refer to your program output as evidence for
your conclusion. Put the paragraph in a separate document (either as
proj05.txt,
proj05
.tex or
proj05
.doc) and hand it in.
Feel free to be creative.
6.
Order to read files (added so we can preprocess your project).
a.
Read president

s file
b.
Read private employment
file
c.
Read government employment
file
Deliverables
proj05
.py
and (
proj05.txt,
proj05
.tex or
proj05
.doc)

your source code solution
, and your paragraph.
1.
Please be sure to use the specified file name
s, e.g.

proj05
.py”
2.
You will electronically submit a copy of the
file using the “handin” program:
http://www.cse.msu.edu/handin/webclient
Hints
1.
A dictionary is a good candidate for storing the employment data.
2.
There is a useful formatting type for printing
percentage
print(“{:6.2%}”.format(1/3))
33.33%
3.
There is a useful formatting type that puts commas in numbers (either int or float):
print(“{:,}”.format(123456})
123,456
Sample Output
(note that we will test on the provided president’s file as well as a
subset of the file)
Government employment average per month (millions)
Republican: 19,019
Democratic: 19,676
Private employment average per month (millions)
Republican: 94,750
Democratic: 98,416
Private Employment by president (millions)
President First Month Last Month Difference Percentage
Carter 65,636 74,570 8,934 13.6%
Reagan 74,677 89,170 14,493 19.4%
Bush 89,394 90,617 1,223 1.4%
Clinton 90,904 111,919 21,015 23.1%
Bush 111,861 112,217 356 0.3%
Obama 111,398 118,690 7,292 6.5%
Government Employment by president (millions)
President Fir
st Month Last Month Difference Percentage
Carter 15,056 16,373 1,317 8.7%
Reagan 16,360 17,736 1,376 8.4%
Bush 17,774 18,878 1,104 6.2%
Clinton
18,901 20,804 1,903 10.1%
Bush 20,835 22,556 1,721 8.3%
Obama 22,579 21,902

677

3.0%
order essay now!

 
"Is this qustion part of your assignmentt? We will write the assignment for you. click order now and get up to 40% Discount"