Code Monkey home page Code Monkey logo

assignment-2's Introduction

Assignment #2 (Required)

Due Date: 9/29 by the start of class (7pm)

This homework assignment is required.

Recommended Readings

Reference materials

Exploratory Data Visualization

In this part, you'll use matplotlib, seaborn, and altair to explore a dataset of your choosing and generate some charts in a Jupyter notebook.

Part 1: Select a dataset

For this assignment, you can choose your own dataset to explore. I recommend selecting a dataset from OpenDataPhilly. You are welcome to to use a dataset from elsewhere, but please email me and let me know what you want to analyze.

Datasets with timestamped entries will be particularly good for analysis, but there are many interesting datasets to consider. They include:

and many more...

For OpenDataPhilly datasets, data files can be downloaded in the form of CSV files.

Part 2: Explore and visualize the data

From within a Jupyter notebook, you should explore the datasets and generate charts visualizing different aspects of the data.

Requirements:

  • 1 Matplotlib chart (of any type)
    • You should consider what aspect of the dataset might be best plotted using matplotlib.
    • Include your reasoning for using matplotlib to visualize this specific aspect of the data.
    • You will be graded on the aesthetics of the plot, namely, color choices and clarity.
  • 1 seaborn chart (of any type)
    • Please include the motivation behind your choice for the type of seaborn plot used and why.
  • 3 altair plots
    • The following techniques should be used at least once:
      • A transformation (mean, count, binning, etc)
      • Brush selection
      • Extra credit: 2-chart dashboard, where filtering of one chart cross-filters the other chart (via transform_filter())
  • A short discussion (a few sentences) of the main conclusion of each chart (in a markdown cell below each chart). It does not need to be interesting or insightful, but it is good practice to always note the main conclusions so the notebook make sense after time passes.

Grading Guidelines

See the grading rubric for more details.

Important: Your notebooks should be a polished finished product. For example:

  • Please remove any extra or unneccesary code.
  • Please try to use markdown cells with section headers to mark different sections of the analysis.

Submission

We'll be using GitHub for assignment submission again. You can set up your own private repository on GitHub for this assignment using the following link:

https://classroom.github.com/a/ohRVUvKM

The assignment should be added to this GitHub repository before the deadline. You can add files to the repository through the browser (github.com) interface or using the command line locally on your machine. For more help, see:

Submission Steps:

  1. Add your .ipynb notebook file to your own private repository before the submission deadline.
  2. Either add the dataset used in the analysis to the repository, or document the original source of the data so it can be downloaded during grading.
  3. Please be sure that your name is listed at the top of the notebook file you submit.

Note: File sizes are limited to 25 MB when adding files to a repository via GitHub in a browser. If your dataset is larger than this, you can try compressing it into a ".zip" to make the file smaller, and then add it to the repository on GitHub. If you run into problems, please email me ([email protected]).

assignment-2's People

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.