[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6KB46FEESQPRHCKTFQ78SR8":3,"skill-same:01M6KB46FEESQPRHCKTFQ78SR8":111},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":16,"categories":17,"keywords":37,"publishedAt":58,"linkOnly":59,"markdownContent":60,"markdownBody":61,"frontMatter":62,"refName":63,"commitSha":64,"skillDirectory":65,"forksCount":66,"repositoryHtmlUrl":67,"repositoryHomepageUrl":6,"ownerHtmlUrl":68,"ownerBlogUrl":69,"ownerDescription":6,"updatedAt":70,"install":71,"resources":84},"01M6KB46FEESQPRHCKTFQ78SR8","senior-data-scientist",null,"World-class senior data scientist skill specialising in statistical modeling, experiment design, causal inference, and predictive analytics. Covers A\u002FB testing (sample sizing, two-proportion z-tests, Bonferroni correction), difference-in-differences, feature engineering pipelines (Scikit-learn, XGBoost), cross-validated model evaluation (AUC-ROC, AUC-PR, SHAP), and MLflow experiment tracking — using Python (NumPy, Pandas, Scikit-learn), R, and SQL. Use when designing or analysing controlled experiments, building and evaluating classification or regression models, performing causal analysis on observational data, engineering features for structured tabular datasets, or translating statistical findings into data-driven business decisions.","afaizalam2003\u002FMaster-claude-skill","afaizalam2003","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F222019359?v=4","01M6K8F2XNT0HKBPF00JQ78SV3","Faiz Alam","01M6K8F31EBXAPER0EG8R9HTR5",3,"MIT","https:\u002F\u002Fgithub.com\u002Fafaizalam2003\u002FMaster-claude-skill\u002Fblob\u002Fmain\u002Fengineering-team\u002Fsenior-data-scientist\u002FSKILL.md",[18,23,26,29,34],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000008","测试与质量","SCENARIO","使用场景",{"categoryNo":24,"categoryName":25,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000013","分析与可视化",{"categoryNo":27,"categoryName":28,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000015","视觉设计",{"categoryNo":30,"categoryName":31,"taxonomyType":32,"taxonomyTypeDesc":33},"01JBSEEDCAT000000000000032","设计师","PROFESSION","适用职业",{"categoryNo":35,"categoryName":36,"taxonomyType":32,"taxonomyTypeDesc":33},"01JBSEEDCAT000000000000033","数据分析师",[38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57],"data scientist","data","senior data scientist","features","testing","data-driven","Experiment Tracking","scikit-learn","sample","world","regression","model","analysis","Evaluation","pandas","feature engineering","learn","experiment design","sql","design","2026-11-10 10:12:30",false,"---\nname: \"senior-data-scientist\"\ndescription: World-class senior data scientist skill specialising in statistical modeling, experiment design, causal inference, and predictive analytics. Covers A\u002FB testing (sample sizing, two-proportion z-tests, Bonferroni correction), difference-in-differences, feature engineering pipelines (Scikit-learn, XGBoost), cross-validated model evaluation (AUC-ROC, AUC-PR, SHAP), and MLflow experiment tracking — using Python (NumPy, Pandas, Scikit-learn), R, and SQL. Use when designing or analysing controlled experiments, building and evaluating classification or regression models, performing causal analysis on observational data, engineering features for structured tabular datasets, or translating statistical findings into data-driven business decisions.\n---\n\n# Senior Data Scientist\n\nWorld-class senior data scientist skill for production-grade AI\u002FML\u002FData systems.\n\n## Core Workflows\n\n### 1. Design an A\u002FB Test\n\n```python\nimport numpy as np\nfrom scipy import stats\n\ndef calculate_sample_size(baseline_rate, mde, alpha=0.05, power=0.8):\n    \"\"\"\n    Calculate required sample size per variant.\n    baseline_rate: current conversion rate (e.g. 0.10)\n    mde: minimum detectable effect (relative, e.g. 0.05 = 5% lift)\n    \"\"\"\n    p1 = baseline_rate\n    p2 = baseline_rate * (1 + mde)\n    effect_size = abs(p2 - p1) \u002F np.sqrt((p1 * (1 - p1) + p2 * (1 - p2)) \u002F 2)\n    z_alpha = stats.norm.ppf(1 - alpha \u002F 2)\n    z_beta = stats.norm.ppf(power)\n    n = ((z_alpha + z_beta) \u002F effect_size) ** 2\n    return int(np.ceil(n))\n\ndef analyze_experiment(control, treatment, alpha=0.05):\n    \"\"\"\n    Run two-proportion z-test and return structured results.\n    control\u002Ftreatment: dicts with 'conversions' and 'visitors'.\n    \"\"\"\n    p_c = control[\"conversions\"] \u002F control[\"visitors\"]\n    p_t = treatment[\"conversions\"] \u002F treatment[\"visitors\"]\n    pooled = (control[\"conversions\"] + treatment[\"conversions\"]) \u002F (control[\"visitors\"] + treatment[\"visitors\"])\n    se = np.sqrt(pooled * (1 - pooled) * (1 \u002F control[\"visitors\"] + 1 \u002F treatment[\"visitors\"]))\n    z = (p_t - p_c) \u002F se\n    p_value = 2 * (1 - stats.norm.cdf(abs(z)))\n    ci_low = (p_t - p_c) - stats.norm.ppf(1 - alpha \u002F 2) * se\n    ci_high = (p_t - p_c) + stats.norm.ppf(1 - alpha \u002F 2) * se\n    return {\n        \"lift\": (p_t - p_c) \u002F p_c,\n        \"p_value\": p_value,\n        \"significant\": p_value \u003C alpha,\n        \"ci_95\": (ci_low, ci_high),\n    }\n\n# --- Experiment checklist ---\n# 1. Define ONE primary metric and pre-register secondary metrics.\n# 2. Calculate sample size BEFORE starting: calculate_sample_size(0.10, 0.05)\n# 3. Randomise at the user (not session) level to avoid leakage.\n# 4. Run for at least 1 full business cycle (typically 2 weeks).\n# 5. Check for sample ratio mismatch: abs(n_control - n_treatment) \u002F expected \u003C 0.01\n# 6. Analyze with analyze_experiment() and report lift + CI, not just p-value.\n# 7. Apply Bonferroni correction if testing multiple metrics: alpha \u002F n_metrics\n```\n\n### 2. Build a Feature Engineering Pipeline\n\n```python\nimport pandas as pd\nimport numpy as np\nfrom sklearn.pipeline import Pipeline\nfrom sklearn.preprocessing import StandardScaler, OneHotEncoder\nfrom sklearn.impute import SimpleImputer\nfrom sklearn.compose import ColumnTransformer\n\ndef build_feature_pipeline(numeric_cols, categorical_cols, date_cols=None):\n    \"\"\"\n    Returns a fitted-ready ColumnTransformer for structured tabular data.\n    \"\"\"\n    numeric_pipeline = Pipeline([\n        (\"impute\", SimpleImputer(strategy=\"median\")),\n        (\"scale\",  StandardScaler()),\n    ])\n    categorical_pipeline = Pipeline([\n        (\"impute\", SimpleImputer(strategy=\"most_frequent\")),\n        (\"encode\", OneHotEncoder(handle_unknown=\"ignore\", sparse_output=False)),\n    ])\n    transformers = [\n        (\"num\", numeric_pipeline, numeric_cols),\n        (\"cat\", categorical_pipeline, categorical_cols),\n    ]\n    return ColumnTransformer(transformers, remainder=\"drop\")\n\ndef add_time_features(df, date_col):\n    \"\"\"Extract cyclical and lag features from a datetime column.\"\"\"\n    df = df.copy()\n    df[date_col] = pd.to_datetime(df[date_col])\n    df[\"dow_sin\"] = np.sin(2 * np.pi * df[date_col].dt.dayofweek \u002F 7)\n    df[\"dow_cos\"] = np.cos(2 * np.pi * df[date_col].dt.dayofweek \u002F 7)\n    df[\"month_sin\"] = np.sin(2 * np.pi * df[date_col].dt.month \u002F 12)\n    df[\"month_cos\"] = np.cos(2 * np.pi * df[date_col].dt.month \u002F 12)\n    df[\"is_weekend\"] = (df[date_col].dt.dayofweek >= 5).astype(int)\n    return df\n\n# --- Feature engineering checklist ---\n# 1. Never fit transformers on the full dataset — fit on train, transform test.\n# 2. Log-transform right-skewed numeric features before scaling.\n# 3. For high-cardinality categoricals (>50 levels), use target encoding or embeddings.\n# 4. Generate lag\u002Frolling features BEFORE the train\u002Ftest split to avoid leakage.\n# 5. Document each feature's business meaning alongside its code.\n```\n\n### 3. Train, Evaluate, and Select a Prediction Model\n\n```python\nfrom sklearn.model_selection import StratifiedKFold, cross_validate\nfrom sklearn.metrics import make_scorer, roc_auc_score, average_precision_score\nimport xgboost as xgb\nimport mlflow\n\nSCORERS = {\n    \"roc_auc\":  make_scorer(roc_auc_score, needs_proba=True),\n    \"avg_prec\": make_scorer(average_precision_score, needs_proba=True),\n}\n\ndef evaluate_model(model, X, y, cv=5):\n    \"\"\"\n    Cross-validate and return mean ± std for each scorer.\n    Use StratifiedKFold for classification to preserve class balance.\n    \"\"\"\n    cv_results = cross_validate(\n        model, X, y,\n        cv=StratifiedKFold(n_splits=cv, shuffle=True, random_state=42),\n        scoring=SCORERS,\n        return_train_score=True,\n    )\n    summary = {}\n    for metric in SCORERS:\n        test_scores = cv_results[f\"test_{metric}\"]\n        summary[metric] = {\"mean\": test_scores.mean(), \"std\": test_scores.std()}\n        # Flag overfitting: large gap between train and test score\n        train_mean = cv_results[f\"train_{metric}\"].mean()\n        summary[metric][\"overfit_gap\"] = train_mean - test_scores.mean()\n    return summary\n\ndef train_and_log(model, X_train, y_train, X_test, y_test, run_name):\n    \"\"\"Train model and log all artefacts to MLflow.\"\"\"\n    with mlflow.start_run(run_name=run_name):\n        model.fit(X_train, y_train)\n        proba = model.predict_proba(X_test)[:, 1]\n        metrics = {\n            \"roc_auc\":  roc_auc_score(y_test, proba),\n            \"avg_prec\": average_precision_score(y_test, proba),\n        }\n        mlflow.log_params(model.get_params())\n        mlflow.log_metrics(metrics)\n        mlflow.sklearn.log_model(model, \"model\")\n        return metrics\n\n# --- Model evaluation checklist ---\n# 1. Always report AUC-PR alongside AUC-ROC for imbalanced datasets.\n# 2. Check overfit_gap > 0.05 as a warning sign of overfitting.\n# 3. Calibrate probabilities (Platt scaling \u002F isotonic) before production use.\n# 4. Compute SHAP values to validate feature importance makes business sense.\n# 5. Run a baseline (e.g. DummyClassifier) and verify the model beats it.\n# 6. Log every run to MLflow — never rely on notebook output for comparison.\n```\n\n### 4. Causal Inference: Difference-in-Differences\n\n```python\nimport statsmodels.formula.api as smf\n\ndef diff_in_diff(df, outcome, treatment_col, post_col, controls=None):\n    \"\"\"\n    Estimate ATT via OLS DiD with optional covariates.\n    df must have: outcome, treatment_col (0\u002F1), post_col (0\u002F1).\n    Returns the interaction coefficient (treatment × post) and its p-value.\n    \"\"\"\n    covariates = \" + \".join(controls) if controls else \"\"\n    formula = (\n        f\"{outcome} ~ {treatment_col} * {post_col}\"\n        + (f\" + {covariates}\" if covariates else \"\")\n    )\n    result = smf.ols(formula, data=df).fit(cov_type=\"HC3\")\n    interaction = f\"{treatment_col}:{post_col}\"\n    return {\n        \"att\":     result.params[interaction],\n        \"p_value\": result.pvalues[interaction],\n        \"ci_95\":   result.conf_int().loc[interaction].tolist(),\n        \"summary\": result.summary(),\n    }\n\n# --- Causal inference checklist ---\n# 1. Validate parallel trends in pre-period before trusting DiD estimates.\n# 2. Use HC3 robust standard errors to handle heteroskedasticity.\n# 3. For panel data, cluster SEs at the unit level (add groups= param to fit).\n# 4. Consider propensity score matching if groups differ at baseline.\n# 5. Report the ATT with confidence interval, not just statistical significance.\n```\n\n## Reference Documentation\n\n- **Statistical Methods:** `references\u002Fstatistical_methods_advanced.md`\n- **Experiment Design Frameworks:** `references\u002Fexperiment_design_frameworks.md`\n- **Feature Engineering Patterns:** `references\u002Ffeature_engineering_patterns.md`\n\n## Common Commands\n\n```bash\n# Testing & linting\npython -m pytest tests\u002F -v --cov=src\u002F\npython -m black src\u002F && python -m pylint src\u002F\n\n# Training & evaluation\npython scripts\u002Ftrain.py --config prod.yaml\npython scripts\u002Fevaluate.py --model best.pth\n\n# Deployment\ndocker build -t service:v1 .\nkubectl apply -f k8s\u002F\nhelm upgrade service .\u002Fcharts\u002F\n\n# Monitoring & health\nkubectl logs -f deployment\u002Fservice\npython scripts\u002Fhealth_check.py\n```\n","# Senior Data Scientist\n\nWorld-class senior data scientist skill for production-grade AI\u002FML\u002FData systems.\n\n## Core Workflows\n\n### 1. Design an A\u002FB Test\n\n```python\nimport numpy as np\nfrom scipy import stats\n\ndef calculate_sample_size(baseline_rate, mde, alpha=0.05, power=0.8):\n    \"\"\"\n    Calculate required sample size per variant.\n    baseline_rate: current conversion rate (e.g. 0.10)\n    mde: minimum detectable effect (relative, e.g. 0.05 = 5% lift)\n    \"\"\"\n    p1 = baseline_rate\n    p2 = baseline_rate * (1 + mde)\n    effect_size = abs(p2 - p1) \u002F np.sqrt((p1 * (1 - p1) + p2 * (1 - p2)) \u002F 2)\n    z_alpha = stats.norm.ppf(1 - alpha \u002F 2)\n    z_beta = stats.norm.ppf(power)\n    n = ((z_alpha + z_beta) \u002F effect_size) ** 2\n    return int(np.ceil(n))\n\ndef analyze_experiment(control, treatment, alpha=0.05):\n    \"\"\"\n    Run two-proportion z-test and return structured results.\n    control\u002Ftreatment: dicts with 'conversions' and 'visitors'.\n    \"\"\"\n    p_c = control[\"conversions\"] \u002F control[\"visitors\"]\n    p_t = treatment[\"conversions\"] \u002F treatment[\"visitors\"]\n    pooled = (control[\"conversions\"] + treatment[\"conversions\"]) \u002F (control[\"visitors\"] + treatment[\"visitors\"])\n    se = np.sqrt(pooled * (1 - pooled) * (1 \u002F control[\"visitors\"] + 1 \u002F treatment[\"visitors\"]))\n    z = (p_t - p_c) \u002F se\n    p_value = 2 * (1 - stats.norm.cdf(abs(z)))\n    ci_low = (p_t - p_c) - stats.norm.ppf(1 - alpha \u002F 2) * se\n    ci_high = (p_t - p_c) + stats.norm.ppf(1 - alpha \u002F 2) * se\n    return {\n        \"lift\": (p_t - p_c) \u002F p_c,\n        \"p_value\": p_value,\n        \"significant\": p_value \u003C alpha,\n        \"ci_95\": (ci_low, ci_high),\n    }\n\n# --- Experiment checklist ---\n# 1. Define ONE primary metric and pre-register secondary metrics.\n# 2. Calculate sample size BEFORE starting: calculate_sample_size(0.10, 0.05)\n# 3. Randomise at the user (not session) level to avoid leakage.\n# 4. Run for at least 1 full business cycle (typically 2 weeks).\n# 5. Check for sample ratio mismatch: abs(n_control - n_treatment) \u002F expected \u003C 0.01\n# 6. Analyze with analyze_experiment() and report lift + CI, not just p-value.\n# 7. Apply Bonferroni correction if testing multiple metrics: alpha \u002F n_metrics\n```\n\n### 2. Build a Feature Engineering Pipeline\n\n```python\nimport pandas as pd\nimport numpy as np\nfrom sklearn.pipeline import Pipeline\nfrom sklearn.preprocessing import StandardScaler, OneHotEncoder\nfrom sklearn.impute import SimpleImputer\nfrom sklearn.compose import ColumnTransformer\n\ndef build_feature_pipeline(numeric_cols, categorical_cols, date_cols=None):\n    \"\"\"\n    Returns a fitted-ready ColumnTransformer for structured tabular data.\n    \"\"\"\n    numeric_pipeline = Pipeline([\n        (\"impute\", SimpleImputer(strategy=\"median\")),\n        (\"scale\",  StandardScaler()),\n    ])\n    categorical_pipeline = Pipeline([\n        (\"impute\", SimpleImputer(strategy=\"most_frequent\")),\n        (\"encode\", OneHotEncoder(handle_unknown=\"ignore\", sparse_output=False)),\n    ])\n    transformers = [\n        (\"num\", numeric_pipeline, numeric_cols),\n        (\"cat\", categorical_pipeline, categorical_cols),\n    ]\n    return ColumnTransformer(transformers, remainder=\"drop\")\n\ndef add_time_features(df, date_col):\n    \"\"\"Extract cyclical and lag features from a datetime column.\"\"\"\n    df = df.copy()\n    df[date_col] = pd.to_datetime(df[date_col])\n    df[\"dow_sin\"] = np.sin(2 * np.pi * df[date_col].dt.dayofweek \u002F 7)\n    df[\"dow_cos\"] = np.cos(2 * np.pi * df[date_col].dt.dayofweek \u002F 7)\n    df[\"month_sin\"] = np.sin(2 * np.pi * df[date_col].dt.month \u002F 12)\n    df[\"month_cos\"] = np.cos(2 * np.pi * df[date_col].dt.month \u002F 12)\n    df[\"is_weekend\"] = (df[date_col].dt.dayofweek >= 5).astype(int)\n    return df\n\n# --- Feature engineering checklist ---\n# 1. Never fit transformers on the full dataset — fit on train, transform test.\n# 2. Log-transform right-skewed numeric features before scaling.\n# 3. For high-cardinality categoricals (>50 levels), use target encoding or embeddings.\n# 4. Generate lag\u002Frolling features BEFORE the train\u002Ftest split to avoid leakage.\n# 5. Document each feature's business meaning alongside its code.\n```\n\n### 3. Train, Evaluate, and Select a Prediction Model\n\n```python\nfrom sklearn.model_selection import StratifiedKFold, cross_validate\nfrom sklearn.metrics import make_scorer, roc_auc_score, average_precision_score\nimport xgboost as xgb\nimport mlflow\n\nSCORERS = {\n    \"roc_auc\":  make_scorer(roc_auc_score, needs_proba=True),\n    \"avg_prec\": make_scorer(average_precision_score, needs_proba=True),\n}\n\ndef evaluate_model(model, X, y, cv=5):\n    \"\"\"\n    Cross-validate and return mean ± std for each scorer.\n    Use StratifiedKFold for classification to preserve class balance.\n    \"\"\"\n    cv_results = cross_validate(\n        model, X, y,\n        cv=StratifiedKFold(n_splits=cv, shuffle=True, random_state=42),\n        scoring=SCORERS,\n        return_train_score=True,\n    )\n    summary = {}\n    for metric in SCORERS:\n        test_scores = cv_results[f\"test_{metric}\"]\n        summary[metric] = {\"mean\": test_scores.mean(), \"std\": test_scores.std()}\n        # Flag overfitting: large gap between train and test score\n        train_mean = cv_results[f\"train_{metric}\"].mean()\n        summary[metric][\"overfit_gap\"] = train_mean - test_scores.mean()\n    return summary\n\ndef train_and_log(model, X_train, y_train, X_test, y_test, run_name):\n    \"\"\"Train model and log all artefacts to MLflow.\"\"\"\n    with mlflow.start_run(run_name=run_name):\n        model.fit(X_train, y_train)\n        proba = model.predict_proba(X_test)[:, 1]\n        metrics = {\n            \"roc_auc\":  roc_auc_score(y_test, proba),\n            \"avg_prec\": average_precision_score(y_test, proba),\n        }\n        mlflow.log_params(model.get_params())\n        mlflow.log_metrics(metrics)\n        mlflow.sklearn.log_model(model, \"model\")\n        return metrics\n\n# --- Model evaluation checklist ---\n# 1. Always report AUC-PR alongside AUC-ROC for imbalanced datasets.\n# 2. Check overfit_gap > 0.05 as a warning sign of overfitting.\n# 3. Calibrate probabilities (Platt scaling \u002F isotonic) before production use.\n# 4. Compute SHAP values to validate feature importance makes business sense.\n# 5. Run a baseline (e.g. DummyClassifier) and verify the model beats it.\n# 6. Log every run to MLflow — never rely on notebook output for comparison.\n```\n\n### 4. Causal Inference: Difference-in-Differences\n\n```python\nimport statsmodels.formula.api as smf\n\ndef diff_in_diff(df, outcome, treatment_col, post_col, controls=None):\n    \"\"\"\n    Estimate ATT via OLS DiD with optional covariates.\n    df must have: outcome, treatment_col (0\u002F1), post_col (0\u002F1).\n    Returns the interaction coefficient (treatment × post) and its p-value.\n    \"\"\"\n    covariates = \" + \".join(controls) if controls else \"\"\n    formula = (\n        f\"{outcome} ~ {treatment_col} * {post_col}\"\n        + (f\" + {covariates}\" if covariates else \"\")\n    )\n    result = smf.ols(formula, data=df).fit(cov_type=\"HC3\")\n    interaction = f\"{treatment_col}:{post_col}\"\n    return {\n        \"att\":     result.params[interaction],\n        \"p_value\": result.pvalues[interaction],\n        \"ci_95\":   result.conf_int().loc[interaction].tolist(),\n        \"summary\": result.summary(),\n    }\n\n# --- Causal inference checklist ---\n# 1. Validate parallel trends in pre-period before trusting DiD estimates.\n# 2. Use HC3 robust standard errors to handle heteroskedasticity.\n# 3. For panel data, cluster SEs at the unit level (add groups= param to fit).\n# 4. Consider propensity score matching if groups differ at baseline.\n# 5. Report the ATT with confidence interval, not just statistical significance.\n```\n\n## Reference Documentation\n\n- **Statistical Methods:** `references\u002Fstatistical_methods_advanced.md`\n- **Experiment Design Frameworks:** `references\u002Fexperiment_design_frameworks.md`\n- **Feature Engineering Patterns:** `references\u002Ffeature_engineering_patterns.md`\n\n## Common Commands\n\n```bash\n# Testing & linting\npython -m pytest tests\u002F -v --cov=src\u002F\npython -m black src\u002F && python -m pylint src\u002F\n\n# Training & evaluation\npython scripts\u002Ftrain.py --config prod.yaml\npython scripts\u002Fevaluate.py --model best.pth\n\n# Deployment\ndocker build -t service:v1 .\nkubectl apply -f k8s\u002F\nhelm upgrade service .\u002Fcharts\u002F\n\n# Monitoring & health\nkubectl logs -f deployment\u002Fservice\npython scripts\u002Fhealth_check.py\n```\n",{"name":5,"description":7},"main","0b48cbb0e6d5be6ff68c0f6b28bc0c65ee21c4a1","engineering-team\u002Fsenior-data-scientist",2,"https:\u002F\u002Fgithub.com\u002Fafaizalam2003\u002FMaster-claude-skill","https:\u002F\u002Fgithub.com\u002Fafaizalam2003","https:\u002F\u002Fwww.linkedin.com\u002Fin\u002Fmdfaizalam2003\u002F","2026-04-01 04:35:43",{"source":8,"skillName":5,"commands":72,"prompt":82,"zipAvailable":83},[73,76,79],{"tool":74,"command":75},"npx","npx skills add afaizalam2003\u002FMaster-claude-skill --skill senior-data-scientist",{"tool":77,"command":78},"bunx","bunx skills add afaizalam2003\u002FMaster-claude-skill --skill senior-data-scientist",{"tool":80,"command":81},"pnpm","pnpm dlx skills add afaizalam2003\u002FMaster-claude-skill --skill senior-data-scientist","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fafaizalam2003\u002FMaster-claude-skill\u002Fblob\u002Fmain\u002Fengineering-team\u002Fsenior-data-scientist\u002FSKILL.md",true,[85,91,94,97,103,107],{"path":86,"resourceType":87,"resourceTypeDesc":88,"sizeBytes":89,"sourceHtmlUrl":90},"references\u002Fexperiment_design_frameworks.md","REFERENCE","参考文档",1435,"https:\u002F\u002Fgithub.com\u002Fafaizalam2003\u002FMaster-claude-skill\u002Fblob\u002Fmain\u002Fengineering-team\u002Fsenior-data-scientist\u002Freferences\u002Fexperiment_design_frameworks.md",{"path":92,"resourceType":87,"resourceTypeDesc":88,"sizeBytes":89,"sourceHtmlUrl":93},"references\u002Ffeature_engineering_patterns.md","https:\u002F\u002Fgithub.com\u002Fafaizalam2003\u002FMaster-claude-skill\u002Fblob\u002Fmain\u002Fengineering-team\u002Fsenior-data-scientist\u002Freferences\u002Ffeature_engineering_patterns.md",{"path":95,"resourceType":87,"resourceTypeDesc":88,"sizeBytes":89,"sourceHtmlUrl":96},"references\u002Fstatistical_methods_advanced.md","https:\u002F\u002Fgithub.com\u002Fafaizalam2003\u002FMaster-claude-skill\u002Fblob\u002Fmain\u002Fengineering-team\u002Fsenior-data-scientist\u002Freferences\u002Fstatistical_methods_advanced.md",{"path":98,"resourceType":99,"resourceTypeDesc":100,"sizeBytes":101,"sourceHtmlUrl":102},"scripts\u002Fexperiment_designer.py","SCRIPT","脚本",2784,"https:\u002F\u002Fgithub.com\u002Fafaizalam2003\u002FMaster-claude-skill\u002Fblob\u002Fmain\u002Fengineering-team\u002Fsenior-data-scientist\u002Fscripts\u002Fexperiment_designer.py",{"path":104,"resourceType":99,"resourceTypeDesc":100,"sizeBytes":105,"sourceHtmlUrl":106},"scripts\u002Ffeature_engineering_pipeline.py",2827,"https:\u002F\u002Fgithub.com\u002Fafaizalam2003\u002FMaster-claude-skill\u002Fblob\u002Fmain\u002Fengineering-team\u002Fsenior-data-scientist\u002Fscripts\u002Ffeature_engineering_pipeline.py",{"path":108,"resourceType":99,"resourceTypeDesc":100,"sizeBytes":109,"sourceHtmlUrl":110},"scripts\u002Fmodel_evaluation_suite.py",2797,"https:\u002F\u002Fgithub.com\u002Fafaizalam2003\u002FMaster-claude-skill\u002Fblob\u002Fmain\u002Fengineering-team\u002Fsenior-data-scientist\u002Fscripts\u002Fmodel_evaluation_suite.py",[112,141,165,190,215,235],{"skillNo":113,"name":114,"nameZh":6,"description":115,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":116,"categories":117,"keywords":121,"publishedAt":58},"01M6KC4E8MYR9DBAZTAXHKYMMH","soc2-compliance","Use when the user asks to prepare for SOC 2 audits, map Trust Service Criteria, build control matrices, collect audit evidence, perform gap analysis, or assess SOC 2 Type I vs Type II readiness.","https:\u002F\u002Fgithub.com\u002Fafaizalam2003\u002FMaster-claude-skill\u002Fblob\u002Fmain\u002Fra-qm-team\u002Fsoc2-compliance\u002FSKILL.md",[118],{"categoryNo":119,"categoryName":120,"taxonomyType":32,"taxonomyTypeDesc":33},"01JBSEEDCAT000000000000037","律师与法务",[122,123,124,125,126,127,128,50,129,130,131,132,133,134,135,136,137,138,139,140],"compliance","soc2","soc2 compliance","audit evidence","audit","collect","soc","use","evidence","trust","build","map","control","type","gap","readiness","gap analysis","assess","for",{"skillNo":142,"name":143,"nameZh":6,"description":144,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":145,"categories":146,"keywords":147,"publishedAt":58},"01M6KC461R3GKGZ1TAYHVR1MW9","risk-management-specialist","Medical device risk management specialist implementing ISO 14971 throughout product lifecycle. Provides risk analysis, risk evaluation, risk control, and post-production information analysis. Use when user mentions risk management, ISO 14971, risk analysis, FMEA, fault tree analysis, hazard identification, risk control, risk matrix, benefit-risk analysis, residual risk, risk acceptability, or post-market risk.","https:\u002F\u002Fgithub.com\u002Fafaizalam2003\u002FMaster-claude-skill\u002Fblob\u002Fmain\u002Fra-qm-team\u002Frisk-management-specialist\u002FSKILL.md",[],[148,149,150,151,152,153,51,154,50,129,155,156,157,158,159,160,161,162,163,164],"risk","risk management specialist","management","risk management","risk evaluation","product","lifecycle","risk matrix","iso","medical","iso 14971","identification","information","post-production","tree","matrix","implementing",{"skillNo":166,"name":167,"nameZh":6,"description":168,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":169,"categories":170,"keywords":171,"publishedAt":58},"01M6KC3HF5ZFSSP2NZF68PEPFB","regulatory-affairs-head","Senior Regulatory Affairs Manager for HealthTech and MedTech companies. Prepares FDA 510(k), De Novo, and PMA submission packages; analyzes regulatory pathways for new medical devices; drafts responses to FDA deficiency letters and Notified Body queries; develops CE marking technical documentation under EU MDR 2017\u002F745; coordinates multi-market approval strategies across FDA, EU, Health Canada, PMDA, and NMPA; and maintains regulatory intelligence on evolving standards. Use when users need to plan or execute FDA submissions, navigate 510(k) or PMA approval processes, achieve CE marking, prepare pre-submission meeting materials, write regulatory strategy documents, respond to agency queries, or manage compliance documentation for medical device market access.","https:\u002F\u002Fgithub.com\u002Fafaizalam2003\u002FMaster-claude-skill\u002Fblob\u002Fmain\u002Fra-qm-team\u002Fregulatory-affairs-head\u002FSKILL.md",[],[172,173,174,175,176,177,178,179,180,129,181,182,183,184,185,186,187,188,189,140],"regulatory affairs head","regulatory","head","documents","devices","health","plan","write","strategy","standards","queries","manage","strategies","de","users","respond","medical devices","manager",{"skillNo":191,"name":192,"nameZh":6,"description":193,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":194,"categories":195,"keywords":198,"publishedAt":58},"01M6KC34Z8M1559EY1CXYBJB1A","quality-manager-qms-iso13485","ISO 13485 Quality Management System implementation and maintenance for medical device organizations. Provides QMS design, documentation control, internal auditing, CAPA management, and certification support. Use when working with medical device quality systems, preparing for ISO 13485 audits, managing regulatory compliance documentation, setting up corrective actions, or building audit preparation programs. Useful for quality management, audit preparation, regulatory compliance, medical device documentation, and corrective action workflows.","https:\u002F\u002Fgithub.com\u002Fafaizalam2003\u002FMaster-claude-skill\u002Fblob\u002Fmain\u002Fra-qm-team\u002Fquality-manager-qms-iso13485\u002FSKILL.md",[196,197],{"categoryNo":27,"categoryName":28,"taxonomyType":21,"taxonomyTypeDesc":22},{"categoryNo":30,"categoryName":31,"taxonomyType":32,"taxonomyTypeDesc":33},[199,200,189,57,201,202,203,204,205,129,206,207,208,209,210,211,212,213,140,214],"quality manager qms iso13485","quality","workflows","validation","actions","certification","system","maintenance","document","systems","records","ISO 13485","organizations","corrective action","internal audit","preparation",{"skillNo":216,"name":217,"nameZh":6,"description":218,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":219,"categories":220,"keywords":222,"publishedAt":58},"01M6KC2FXHBHXYX2ZZ17Y3GDB4","quality-manager-qmr","Senior Quality Manager Responsible Person (QMR) for HealthTech and MedTech companies. Provides quality system governance, management review leadership, regulatory compliance oversight, and quality performance monitoring per ISO 13485 Clause 5.5.2.","https:\u002F\u002Fgithub.com\u002Fafaizalam2003\u002FMaster-claude-skill\u002Fblob\u002Fmain\u002Fra-qm-team\u002Fquality-manager-qmr\u002FSKILL.md",[221],{"categoryNo":119,"categoryName":120,"taxonomyType":32,"taxonomyTypeDesc":33},[223,200,189,224,225,226,227,228,122,229,205,230,173,231,232,233,156,210,140,234],"quality manager qmr","review","policy","performance","governance","monitoring","regulatory compliance","oversight","cost","culture","leadership","person",{"skillNo":236,"name":237,"nameZh":6,"description":238,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":239,"categories":240,"keywords":248,"publishedAt":58},"01M6KC1VRR5JTDBNZANHPS6VR6","quality-documentation-manager","Document control system management for medical device QMS. Covers document numbering, version control, change management, and 21 CFR Part 11 compliance. Use for document control procedures, change control workflow, document numbering, version management, electronic signature compliance, or regulatory documentation review.","https:\u002F\u002Fgithub.com\u002Fafaizalam2003\u002FMaster-claude-skill\u002Fblob\u002Fmain\u002Fra-qm-team\u002Fquality-documentation-manager\u002FSKILL.md",[241,244,247],{"categoryNo":242,"categoryName":243,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000002","文档处理",{"categoryNo":245,"categoryName":246,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000023","Skill与智能体开发",{"categoryNo":119,"categoryName":120,"taxonomyType":32,"taxonomyTypeDesc":33},[249,250,200,189,224,251,252,126,205,253,254,255,256,257,157,258,259,260,261,140],"documentation","quality documentation manager","workflow","change","change management","list","master","system management","documentation review","cfr","21 cfr part 11","change control","retention"]