run tiny DQ check for example. Do no need datasourses and GX init
- pull gist
- Build docker image with command
docker build -t qdq .
- Run check
docker run qdq
As result you will see console output same as Console file
import pandas as pd | |
import great_expectations as gx | |
data = (10, 20, 30, 40, 50, 60, 20, 30, 40, 50, 60, 20, 30, 40, 50, 60, 20, 30, 40, 50, 60.20, 30, 40, 50, 60) | |
df = pd.DataFrame(data, columns=['Numbers']) | |
df_ge = gx.from_pandas(df) | |
df_ge.expect_column_values_to_be_between(column='Numbers', max_value=11, result_format="COMPLETE") | |
result = df_ge.validate() | |
print(result) |
{ | |
"success": false, | |
"statistics": { | |
"evaluated_expectations": 1, | |
"successful_expectations": 0, | |
"unsuccessful_expectations": 1, | |
"success_percent": 0.0 | |
}, | |
"evaluation_parameters": {}, | |
"results": [ | |
{ | |
"success": false, | |
"exception_info": { | |
"raised_exception": false, | |
"exception_message": null, | |
"exception_traceback": null | |
}, | |
"expectation_config": { | |
"meta": {}, | |
"kwargs": { | |
"column": "Numbers", | |
"max_value": 11, | |
"result_format": "COMPLETE" | |
}, | |
"expectation_type": "expect_column_values_to_be_between" | |
}, | |
"result": { | |
"element_count": 25, | |
"missing_count": 0, | |
"missing_percent": 0.0, | |
"unexpected_count": 24, | |
"unexpected_percent": 96.0, | |
"unexpected_percent_total": 96.0, | |
"unexpected_percent_nonmissing": 96.0, | |
"partial_unexpected_list": [ | |
20.0, | |
30.0, | |
40.0, | |
50.0, | |
60.0, | |
20.0, | |
30.0, | |
40.0, | |
50.0, | |
60.0, | |
20.0, | |
30.0, | |
40.0, | |
50.0, | |
60.0, | |
20.0, | |
30.0, | |
40.0, | |
50.0, | |
60.2 | |
], | |
"partial_unexpected_index_list": [ | |
1, | |
2, | |
3, | |
4, | |
5, | |
6, | |
7, | |
8, | |
9, | |
10, | |
11, | |
12, | |
13, | |
14, | |
15, | |
16, | |
17, | |
18, | |
19, | |
20 | |
], | |
"partial_unexpected_counts": [ | |
{ | |
"value": 30.0, | |
"count": 5 | |
}, | |
{ | |
"value": 40.0, | |
"count": 5 | |
}, | |
{ | |
"value": 50.0, | |
"count": 5 | |
}, | |
{ | |
"value": 20.0, | |
"count": 4 | |
}, | |
{ | |
"value": 60.0, | |
"count": 4 | |
}, | |
{ | |
"value": 60.2, | |
"count": 1 | |
} | |
], | |
"unexpected_list": [ | |
20.0, | |
30.0, | |
40.0, | |
50.0, | |
60.0, | |
20.0, | |
30.0, | |
40.0, | |
50.0, | |
60.0, | |
20.0, | |
30.0, | |
40.0, | |
50.0, | |
60.0, | |
20.0, | |
30.0, | |
40.0, | |
50.0, | |
60.2, | |
30.0, | |
40.0, | |
50.0, | |
60.0 | |
], | |
"unexpected_index_list": [ | |
1, | |
2, | |
3, | |
4, | |
5, | |
6, | |
7, | |
8, | |
9, | |
10, | |
11, | |
12, | |
13, | |
14, | |
15, | |
16, | |
17, | |
18, | |
19, | |
20, | |
21, | |
22, | |
23, | |
24 | |
] | |
}, | |
"meta": {} | |
} | |
], | |
"meta": { | |
"great_expectations_version": "0.15.24", | |
"expectation_suite_name": "default", | |
"run_id": { | |
"run_name": null, | |
"run_time": "2022-10-12T14:57:04.455326+00:00" | |
}, | |
"batch_kwargs": { | |
"ge_batch_id": "226fdcd8-4a3e-11ed-8770-acde48001122" | |
}, | |
"batch_markers": {}, | |
"batch_parameters": {}, | |
"validation_time": "20221012T145704.455276Z", | |
"expectation_suite_meta": { | |
"great_expectations_version": "0.15.24" | |
} | |
} | |
} |
FROM python:3.7-slim-bullseye | |
RUN pip install great-expectations==0.15.26 | |
COPY ./*.py / | |
ENTRYPOINT ["/usr/local/bin/python", "check.py"] |