Skip to content

Jayplect/financial-records

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 

Repository files navigation

Description

Built a script to analyze financial records from a bank and to help modernize a rural town vote-counting process.

Libraries used

import os

import csv

Summary of Dataset

The financial dataset called budget_data.csv is composed of two columns: "Date" and "Profit/Losses".

Whereas, the poll data called election_data.csv comprised of three columns namely: "Voter ID", "County", and "Candidate".

Both datasets are delimited by commas

Scripting

Below are some scripts used for the vote-counting analysis:

iterate through each row in data to count total votes and grep a list of candidates

  for row in csvreader:

      #count the total votes
      total_votes += 1

      #list of candidates
      candidate_list.append(row[2])

iterate through the list of candidates, store unique names in a dictionary and corresponding votes

 for i in range(len(candidate_list)):
    
    #create a key for each candidate to store votes casted
    if (candidate_list[i]) not in candidate_names:
        candidate_names.append(candidate_list[i])
        
        #assign a value of zero to each key (i.e., candidate)
        candidate_votes[candidate_list[i]] = 0

    #add a value of 1 to each vote counted
    candidate_votes[candidate_list[i]] = candidate_votes[candidate_list[i]] + 1  

export summary of results to a text file

  #text file with results from analysis
with open(os.path.join("analysis", "Summary.txt"), "w") as txtfile:
    txtfile.write("Election Results" + "\n")
    txtfile.write("-------------------------------------" + "\n")
    txtfile.write("Total Votes:" + " " + str(total_votes) + "\n")
    txtfile.write("-------------------------------------" + "\n")

    #simultaneously iterate each through candidate votes and percentage
    for (candidate,votepercent) in zip(candidate_votes,votepercent_list):

        #print each unique candidate, their votes and vote percent
        txtfile.write(str(candidate)+":" + " "+ str(votepercent) + "%" + " "+ "("+ str(candidate_votes[candidate]) +             ")" + "\n")

    #write to text file the winner
    txtfile.write("-------------------------------------" + "\n")
    txtfile.write("Winner:" + " " + str(winner_name) + "\n")
    txtfile.write("-------------------------------------" + "\n")
    txtfile.close()

References

Data for this dataset was generated by edX Boot Camps LLC, and is intended for educational purposes only.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages