بنقرة واحدة
dataprof
Profile tabular data with dataprof before debugging schema, quality, drift, or data-cleaning questions.
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
القائمة
Profile tabular data with dataprof before debugging schema, quality, drift, or data-cleaning questions.
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
استنادا إلى تصنيف SOC المهني
| name | dataprof |
| description | Profile tabular data with dataprof before debugging schema, quality, drift, or data-cleaning questions. |
Use this skill when the user asks you to understand an unfamiliar dataset, inspect data quality, compare two dataset versions, or prepare compact evidence for a data-cleaning or pipeline decision.
Identify the dataset path and format.
Run a cheap structure pass first:
import dataprof as dp
structure = dp.analyze_structure("data.csv")
Run the full profile when structural inspection is not enough:
report = dp.profile("data.csv")
profile() computes every metric pack by default. Pass metrics=[...] only to
narrow the work — the packs are schema, statistics, patterns, and quality:
report = dp.profile("data.csv", metrics=["schema", "quality"])
Quality assessment has seven selectively requestable dimensions:
completeness, consistency, uniqueness, accuracy, timeliness,
validity, and precision. Use quality_dimensions=[...] to narrow them.
A None dimension score means it was not assessed; do not present it as
perfect or replace it with zero.
Semantic policies must be explicit when the data alone cannot establish
them: use positive_columns, identifier_columns, and temporal_columns.
Validity is assessed only for columns with a confidently detected pattern.
Precision measures consistency of effective decimal scale; it does not
infer a business-required number of decimal places.
Summarize for the user or another agent with compact outputs:
report.to_markdown() # markdown table of column profiles
report.quality_summary() # single-row quality dict
to_dict() embeds a full per-column entry under ["columns"], so it grows with
table width. Select the top-level summary fields instead of surfacing the whole dict:
d = report.to_dict()
summary = {k: d[k] for k in ("source", "source_type", "execution", "quality")}
Compare reports for before/after drift:
before = dp.profile("data_before.csv")
after = dp.profile("data_after.csv")
delta = before.compare(after)
dp.analyze_structure(path, max_rows=None)dp.profile(source, *, metrics=None, max_rows=None, ...) -- metrics=None means all packsreport.to_markdown()report.quality_summary()report.to_dict() -- keys: source, source_type, execution, columns, qualityreport.compare(other_report)