Files
AIclinicalresearch/run_recovery.ps1
HaHafeng 74cf346453 feat(dc/tool-c): Add missing value imputation feature with 6 methods and MICE
Major features:
1. Missing value imputation (6 simple methods + MICE):
   - Mean/Median/Mode/Constant imputation
   - Forward fill (ffill) and Backward fill (bfill) for time series
   - MICE multivariate imputation (in progress, shape issue to fix)

2. Auto precision detection:
   - Automatically match decimal places of original data
   - Prevent false precision (e.g. 13.57 instead of 13.566716417910449)

3. Categorical variable detection:
   - Auto-detect and skip categorical columns in MICE
   - Show warnings for unsuitable columns
   - Suggest mode imputation for categorical data

4. UI improvements:
   - Rename button: "Delete Missing" to "Missing Value Handling"
   - Remove standalone "Dedup" and "MICE" buttons
   - 3-tab dialog: Delete / Fill / Advanced Fill
   - Display column statistics and recommended methods
   - Extended warning messages (8 seconds for skipped columns)

5. Bug fixes:
   - Fix sessionService.updateSessionData -> saveProcessedData
   - Fix OperationResult interface (add message and stats)
   - Fix Toolbar button labels and removal

Modified files:
Python: operations/fillna.py (new, 556 lines), main.py (3 new endpoints)
Backend: QuickActionService.ts, QuickActionController.ts, routes/index.ts
Frontend: MissingValueDialog.tsx (new, 437 lines), Toolbar.tsx, index.tsx
Tests: test_fillna_operations.py (774 lines), test scripts and docs
Docs: 5 documentation files updated

Known issues:
- MICE imputation has DataFrame shape mismatch issue (under debugging)
- Workaround: Use 6 simple imputation methods first

Status: Development complete, MICE debugging in progress
Lines added: ~2000 lines across 3 tiers
2025-12-10 13:06:00 +08:00

52 lines
1.6 KiB
PowerShell
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# DC模块代码恢复脚本运行器
Write-Host "==================================================================================" -ForegroundColor Cyan
Write-Host "DC模块代码恢复工具" -ForegroundColor Cyan
Write-Host "==================================================================================" -ForegroundColor Cyan
# 检查Python是否安装
try {
$pythonVersion = python --version 2>&1
Write-Host "✅ Python版本: $pythonVersion" -ForegroundColor Green
} catch {
Write-Host "❌ 错误: Python未安装或不在PATH中" -ForegroundColor Red
exit 1
}
# 运行恢复脚本
Write-Host "`n📦 开始运行恢复脚本..." -ForegroundColor Yellow
$output = python recover_dc_code.py 2>&1 | Out-String
Write-Host $output
# 保存输出到文件
$output | Out-File "recovery_output.log" -Encoding UTF8
Write-Host "`n💾 输出已保存到: recovery_output.log" -ForegroundColor Green
# 检查恢复结果
if (Test-Path "recovered_dc_code") {
Write-Host "`n✅ 恢复目录已创建!" -ForegroundColor Green
Write-Host "📁 恢复的文件:" -ForegroundColor Cyan
Get-ChildItem "recovered_dc_code" | Format-Table Name, Length, LastWriteTime
} else {
Write-Host "`n⚠️ 未创建恢复目录可能未找到DC代码" -ForegroundColor Yellow
}
Write-Host "`n==================================================================================" -ForegroundColor Cyan
Write-Host "完成!请查看 recovered_dc_code 目录" -ForegroundColor Cyan
Write-Host "==================================================================================" -ForegroundColor Cyan