Skip to main content
Version: 0.17.23

Quickstart

Use this quickstart to install GX, connect to sample data, build your first Expectation, validate data, and review the validation results. This is a great place to start if you're new to GX and aren't sure if it's the right solution for you or your organization. If you're using Databricks or SQL to store data, see Get Started with GX and Databricks or Get Started with GX and SQL.

Great Expectations Cloud

You can use this quickstart with the open source Python version of GX or with Great Expectations Cloud.

If you're interested in participating in the Great Expectations Cloud Beta program, or you want to receive progress updates, sign up for the Beta program.

Windows Support

Windows support for the open source Python version of GX is currently unavailable. If you’re using GX in a Windows environment, you might experience errors or performance issues.

Prerequisites

  • An installation of Python, version 3.8 to 3.11. To download and install Python, see Python downloads.
  • pip
  • An internet browser

Install GX

  1. Run the following command in an empty base directory inside a Python virtual environment:

    Terminal input
    pip install great_expectations

    It can take several minutes for the installation to complete.

  2. Run the following Python code to import the great_expectations module:

    import great_expectations as gx

Create a DataContext

  • Run the following command to import the existing DataContext object:

    context = gx.get_context()

Connect to Data

  • Run the following command to connect to existing .csv data stored in the great_expectations GitHub repository:

    validator = context.sources.pandas_default.read_csv(
    "https://raw.githubusercontent.com/great-expectations/gx_tutorials/main/data/yellow_tripdata_sample_2019-01.csv"
    )

    The example code uses the default Data Context Data Source for Pandas to access the .csv data in the file at the specified path.

Create Expectations

  • Run the following command to create two Expectations:

    validator.expect_column_values_to_not_be_null("pickup_datetime")
    validator.expect_column_values_to_be_between("passenger_count", auto=True)
    validator.save_expectation_suite()

The first Expectation uses domain knowledge (the pickup_datetime shouldn't be null), and the second Expectation uses auto=True to detect a range of values in the passenger_count column.

Validate data

  1. Run the following command to define a Checkpoint and examine the data to determine if it matches the defined Expectations:

    checkpoint = context.add_or_update_checkpoint(
    name="my_quickstart_checkpoint",
    validator=validator,
    )
  2. Run the following command to return the Validation results:

    checkpoint_result = checkpoint.run()
  3. Run the following command to view an HTML representation of the Validation results:

    context.view_validation_result(checkpoint_result)

If you're ready to continue your Great Expectations journey, the following topics can help you implement a tailored solution for your specific environment and business requirements: