[Solved] ENSF592 Assignment 4

$25

File Name: ENSF592__Assignment_4.zip
File Size: 197.82 KB

SKU: [Solved] ENSF592 – Assignment 4 Category: Tag:
5/5 - (1 vote)

5/5 – (1 vote)

📚 Learning Outcomes

  • Create multi-dimensional arrays using NumPy
  • Validate user input through exception handling
  • Use dictionaries to store and search for values
  • Process data according to specifications
  • Manipulate NumPy arrays
  • Determine and execute NumPy array computations

💻 Program Specifications

The City of Calgary publishes data on various demographics, include school enrollment. You are being asked to design a terminal-based application for computing and printing statistics based on given input. Your application must meet the following design specifications:

  • Your final output should match the given examples (see attached screenshots)
  • Stage 1: Array Creation
  1. Create a 3-dimensional array using the provided high school enrollment data. You must use a NumPy array.
  2. Print the shape and dimensions of the array.
  • Stage 2: School Stats
  1. Prompt the user to enter either the name or numerical code of a school. If the name or code do not exist within the given data, raise a ValueError to print You must enter a valid school name or code.
  2. Calculate and print the answers for the following school-specific statistics, using the given output as a template.
    • The school name and school code
    • Mean enrollment for Grade 10 across all years
    • Mean enrollment for Grade 11 across all years
    • Mean enrollment for Grade 12 across all years
    • Highest enrollment for a single grade within the entire time period
    • Lowest enrollment for a single grade within the entire time period
    • Total enrollment for each year from 2013 to 2020
    • Education planners want to better understand the impact of large-scale classes in high schools. Determine if any enrollment numbers were over 500. If not, print No enrollments over 500. If yes, print the median value of the >500 enrollments.
  • Stage 3: General Stats
  1. Every run of your program should also calculate and print the answers for the following general statistics. These will be the same for every run.
    • The mean enrollment in 2013
    • The mean enrollment in 2020
    • Total graduating class of 2020 across all schools
    • Highest enrollment for a single grade within the entire time period (across all schools)
    • Lowest enrollment for a single grade within the entire time period (across all schools)
  • Your code should include and use at least one 3-dimensional NumPy array, at least one subarray view, at least four different NumPy computational functions, at least one masking operation, and at least one dictionary.
  • Your code must follow the conventions discussed so far in the course (nameswithunderscores, ClassNames, four spaces for indentations, spaces between variables/operators, comments throughout, etc.)
  • All classes, methods, and functions must contain docstring documentation.
    1. For each class, include a functionality summary and describe any class and/or instance variables (do not include a separate docstring for __init__)
    2. For each method/function, include a functionality summary and describe parameters and return values (or specify if there are none)
    3. Main functions do not need a docstring but should be well-commented
  • Your code will be run by the TAs as your end user.
  • FAQs about the assignment will be answered on the D2L discussion boards. Please check the boards for any clarifications before submitting.
  • The grading rubric will be posted to D2L.

📝 Assignment Tasks

  • Make sure to watch video lessons 15 17, labs 6 and 7, and review the corresponding Jupyter Notebooks.
  • Clone this repository to your local computer.
  • Open VSCode and start a new terminal. Make sure that your ensf592 environment is activated.
  • school_data.py is provided as a starting point. Fill in the header with your own information.
  • Remember to test your program execution via the terminal: python school_data.py
  • Take a screenshot of your successful program run and upload it to your assignment repository.
  • Commit your screenshot and code.
  • Push your local git history to github: git push origin main
  • Submit your repository HTTPS link to the Assignment 3 D2L dropbox.
  • Tip: If you want to learn more about a specific aspect of a Python object or the functionality of NumPy, remember to take a look at the official documentation!

Reviews

There are no reviews yet.

Only logged in customers who have purchased this product may leave a review.

Shopping Cart
[Solved] ENSF592  Assignment 4[Solved] ENSF592 Assignment 4
$25