{"adoption": {"forks": 397, "observed_at": "2026-08-28T04:06:58.971178+00:00", "stars": 2532}, "canonical_url": "https://ross.abutalabs.com/products/100knocks-preprocess", "card": {"archived": false, "artifact_type": "learning-resource", "description": "データサイエンス100本ノック（構造化データ加工編）", "domain": ["data-science", "education", "tutorials"], "enriched": true, "function": ["data-science", "etl", "testing"], "health_score": 70, "homepage": null, "language": "HTML", "license": "NOASSERTION", "license_family": "other", "maturity": "active", "member_repos": ["The-Japan-DataScientist-Society/100knocks-preprocess"], "name": "The-Japan-DataScientist-Society/100knocks-preprocess", "platform": ["python", "cross-platform", "cloud"], "pushed_at": "2026-05-19T21:43:51+00:00", "repo": "The-Japan-DataScientist-Society/100knocks-preprocess", "stars": 2532, "tags": ["sql-exercises", "r", "jupyter-notebooks", "data-wrangling", "japanese", "practice-problems", "docker"], "topics": [], "urls": [], "use_cases": ["practice data preprocessing exercises in SQL, Python, and R", "learn data wrangling with hands-on problems", "set up a data science practice environment with Docker", "train data scientists in a company or university course", "practice pandas and SQL data manipulation on dummy retail data"], "what_it_is": "A collection of 100 structured data processing exercises (Data Science 100 Knocks) from the Japan Data Scientist Society, with practice problems and answers in SQL, Python, and R. It ships with Docker-based environment setup, dummy supermarket purchase and personal data, and Jupyter notebooks runnable locally or on SageMaker Studio Lab / Colab.", "when_to_avoid": ["you need a production data processing tool rather than exercises", "you want advanced machine learning or deep learning content", "you cannot use Docker or cloud notebooks and need a zero-setup option"], "when_to_choose": ["you want structured, graded practice problems for data preprocessing", "you need a ready-made Docker environment with sample data for SQL/Python/R practice", "you are teaching or self-studying data science fundamentals"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/100knocks-preprocess", "repo": "The-Japan-DataScientist-Society/100knocks-preprocess", "role": "main", "score": 60}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:06:58.971178+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T02:25:17.592980+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "aef627c0e7e2217ad912308e9ece51a6f5c9edd5e8e0150d88eede3a77b67b52", "fetched_at": "2026-08-28T04:06:58.971178+00:00", "kind": "readme", "missing": false, "url": "https://github.com/The-Japan-DataScientist-Society/100knocks-preprocess"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:06:58.971178+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T02:25:17.592980+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "aef627c0e7e2217ad912308e9ece51a6f5c9edd5e8e0150d88eede3a77b67b52", "fetched_at": "2026-08-28T04:06:58.971178+00:00", "kind": "readme", "missing": false, "url": "https://github.com/The-Japan-DataScientist-Society/100knocks-preprocess"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T02:25:17.592980+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "aef627c0e7e2217ad912308e9ece51a6f5c9edd5e8e0150d88eede3a77b67b52", "fetched_at": "2026-08-28T04:06:58.971178+00:00", "kind": "readme", "missing": false, "url": "https://github.com/The-Japan-DataScientist-Society/100knocks-preprocess"}], "taxonomy_version": 1}, "health_score": {"inputs": ["days_since_push", "days_since_release", "archived"], "kind": "computed", "method": "health_v1"}, "homepage": {"kind": "observed", "observed_at": "2026-08-28T04:06:58.971178+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:06:58.971178+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:06:58.971178+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T02:25:17.592980+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "aef627c0e7e2217ad912308e9ece51a6f5c9edd5e8e0150d88eede3a77b67b52", "fetched_at": "2026-08-28T04:06:58.971178+00:00", "kind": "readme", "missing": false, "url": "https://github.com/The-Japan-DataScientist-Society/100knocks-preprocess"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:06:58.971178+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:06:58.971178+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T02:25:17.592980+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "aef627c0e7e2217ad912308e9ece51a6f5c9edd5e8e0150d88eede3a77b67b52", "fetched_at": "2026-08-28T04:06:58.971178+00:00", "kind": "readme", "missing": false, "url": "https://github.com/The-Japan-DataScientist-Society/100knocks-preprocess"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:06:58.971178+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:06:58.971178+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:06:58.971178+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T02:25:17.592980+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "aef627c0e7e2217ad912308e9ece51a6f5c9edd5e8e0150d88eede3a77b67b52", "fetched_at": "2026-08-28T04:06:58.971178+00:00", "kind": "readme", "missing": false, "url": "https://github.com/The-Japan-DataScientist-Society/100knocks-preprocess"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:06:58.971178+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:06:58.971178+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T02:25:17.592980+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "aef627c0e7e2217ad912308e9ece51a6f5c9edd5e8e0150d88eede3a77b67b52", "fetched_at": "2026-08-28T04:06:58.971178+00:00", "kind": "readme", "missing": false, "url": "https://github.com/The-Japan-DataScientist-Society/100knocks-preprocess"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T02:25:17.592980+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "aef627c0e7e2217ad912308e9ece51a6f5c9edd5e8e0150d88eede3a77b67b52", "fetched_at": "2026-08-28T04:06:58.971178+00:00", "kind": "readme", "missing": false, "url": "https://github.com/The-Japan-DataScientist-Society/100knocks-preprocess"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T02:25:17.592980+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "aef627c0e7e2217ad912308e9ece51a6f5c9edd5e8e0150d88eede3a77b67b52", "fetched_at": "2026-08-28T04:06:58.971178+00:00", "kind": "readme", "missing": false, "url": "https://github.com/The-Japan-DataScientist-Society/100knocks-preprocess"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T02:25:17.592980+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "aef627c0e7e2217ad912308e9ece51a6f5c9edd5e8e0150d88eede3a77b67b52", "fetched_at": "2026-08-28T04:06:58.971178+00:00", "kind": "readme", "missing": false, "url": "https://github.com/The-Japan-DataScientist-Society/100knocks-preprocess"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 83, "longevity": 100, "rhythm": 8}, "computed_at": "2026-09-03T02:20:16.233290+00:00", "flags": ["no_license"], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 2288, "days_push": 106, "days_rel": null, "gap_med": null, "n_releases_24m": 0}, "score": 60, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}