| .gitignore | ||
| dataset.csv | ||
| README.md | ||
This is a benchmark test to ensure that Python developers can show a good understanding of the fundamentals of reading, coding and delivering to a timeframe.
Rules
A link to a public Git repository with your final solution must be provided within 48 hours of receipt of the test.
Guidelines
- To help understand how you approach the problem, we will assess your use of source control and how you build to the final solution, checking what is committed along each step
- The code must be written in Python 3.
- You may use any frameworks or libraries to complete this task, excluding data analysis libraries like Pandas.
- Unit tests must be provided
Objective
A data file will be provided alongside this test. The dataset is a CSV which contains publicly available data about mobile phone masts in an area of the UK. This file contains un-normalised data (such as multiple variations of Tenant Name) – treat these as individual tenants.
Actions
- Load the data file, process and output the data in the forms specified
- Read in, process and present the data as specified in the requirements section
- Demonstrate usage of list comprehension for at least one of the tasks
- Allow user input to run all of your script, or specific sections
Requirements
- Read in the attached file
- Produce a list sorted by “Current Rent” in ascending order
- Obtain the first 5 items from the resultant list and output to the console
- From the list of all mast data, create a new list of mast data with “Lease Years” = 25 years.
- Output the list to the console, including all data fields
- Output the total rent for all items in this list to the console
- Create a dictionary containing tenant name and a count of masts for each tenant
- Output the dictionary to the console in a readable form
- List the data for rentals with “Lease Start Date” between 1st June 1999 and 31st August 2007
- Output the data to the console with dates formatted as DD/MM/YYYY
Tips
If you struggle completing the test or have concerns over certain aspects that is okay – just highlight it to us when you submit your test. Explain what you couldn’t get working and steps you took to solve the problem. Whilst we want to see completed tests it is just as important for us to see how you approached an issue and attempted to find a solution.
Do not overthink your solution. Keep it simple and use what you know.
Write tests only for your code.
Don’t forget the ReadMe
Avoid creating additional requirements.