Project Presentation
The recommendations outlined below will help you to successfully complete projects for TripleTen, pre-employment tests, and real-world projects.
Start with the most important things
Header
Use header formatting for your project title. You'll find the recommendations on applying Markdown in your project at the end of this guide.
Brief description
- Describe the goals of your project. Provide useful information, e.g. the files you're going to work with.
- Briefly describe your project plan.
- Add a table of contents with hyperlinks.
All this will make it easier for the reader to get a feel for your project and navigate between different parts.
Make it structured
Highlight each section of your project
For instance, you can use bold font for the section header, or use ##
. You can also add indexing. Reviewing a well-structured project is always a pleasure.
Improve section naming
Naming the sections after the tasks is not a good idea. Consider "The daily/weekly/monthly number of visitors" instead of "How many people a day/week/month use the service?"
Write intermediate conclusions
Share brief conclusions at the end of each section.
Split up the overview and preprocessing into two different sections
- In the "Overview" section, apply the
head()
,info()
, and other methods to study general information - In the "Data preprocessing" section, move on to making changes in the data: searching for duplicates, processing missing values
Draw an overall conclusion
Avoid combining it with the conclusions from the final section. It's best to make your overall conclusion a separate section.
Make the code tidy and the comments clear
Include code that shows your decision-making process
Imagine a scenario where you've submitted your project, but it lacks an answer to the question "Which columns have missing values?". You've carried out the corresponding analysis, but removed it and moved on to processing missing values. This would force the person reviewing your project to recover the code that was removed in order to determine whether you found and processed all the missing values. As such, removing this code would be a waste of time, and you'd create additional complications for anyone checking your project.
Moreover, it's best not to delete any tests you've written. For example, you may have written some code to verify that the tables were joined correctly or that a certain function produces the intended result. If you make regular checks like these, let it show. It demonstrates your reliability.
Remove unsuccessful code fragments
Remove unsuccessful or broken chunks of code instead of turning them into comments.
Write comments before the code
It can be difficult to read code if there aren't any comments explaining it. It's also important to leave explanations in the right place, which is before the piece of code in question. For example, if you decide to replace the missing values with median values, state this in the comment and only then replace them.
Apply Markdown cells
Explanations in Markdown are easier to read than comments inside the code.
Explain more
When writing about your project, it's important to describe the process as well as its results. Don't hesitate to add more explanations. Write down your thoughts, including any exciting observations and conclusions. Remember, when reading your code, it's not always clear what guided you and what useful insights you found.
Split your code
Cells contribute to making the algorithm clearer. Don't try to place everything into a single cell and, conversely, don't create a separate cell for every line of your code. One cell should represent one important stage. It may be a good idea to write a brief explanation of the purpose of each cell before it.
Print the data correctly
Style graphs
- Title them. For example: "Total game sales by years (pcs)", "Relation of game sales to critics' scores", "Distribution histogram of the average number of messages per month for two plans".
- Title labels. For example: "the year of release", "critics' score", "the number of messages".
Display tables
- Don't print whole tables if they are large. Use the
head()
andtail()
methods to print fragments. - Don't use print() to output tables. Better to import and use the
display
method from theIPython.display
library at the beginning of your project:
1from IPython.display import display2display(df)
Draw conclusions
You can arrange the overall conclusion in the following way:
- Brief overview of the work done. What you did, completed, computed.
- Main findings. Answer the questions at hand.
- Recommendations. For instance, you can suggest selecting certain features for future predictions or provide recommendations on how to avoid getting duplicate or missing values.
A bit of psychology
Use the pronoun "we" when writing your project. This will make the reviewer feel more involved and you'll sound less bossy.
Before submitting
- Make sure your project is clean. Clear your notebook from any debug fragments or temporary cells.
- Check whether your code runs. Before submitting your project, run all cells in the Jupyter Notebook (Kernel > Restart & Run All on the toolbar) to make sure the code contains no errors.
The project was sent back for improvements
You now have a chance to make your project better! Follow the recommendations provided by reviewers to make the solution more concise and add a high-quality project to your portfolio.
Please treat feedback carefully: you mustn't delete or move the reviewer's comments. Don't ignore the parts that the reviewer marked for obligatory improvement. They won't be able to accept your project unless you correct the code.
If you find the expert's advice unclear or you don't understand how to approach task solution, consult your tutor. They will always be ready and willing to help you.
Project is accepted
If your project was accepted, great! However you still should look through it all the same. Reviewers always provide feedback, and feedback is always valuable.
Useful Markdown tips
Different styles
1**Bold**2_Italics_
First-level heading
1# Project "Data preprocessing"
Second-level heading
1## Replacing missing values
Lists
1- Lists help structure the information2- There are lists3- with different4- levels of nesting561. And numbered72. lists
Monospace text
Monospace text is a great option to use when referring to variable names in Markdown cells:
1Let's store the filtered dataset into the `cleaned_dataset` variable and group the data.
The text will look as follows:
1Let's store the filtered dataset into the `cleaned_dataset` variable and group the data.