datapilot-cli
Version:
Enterprise-grade streaming multi-format data analysis with comprehensive statistical insights and intelligent relationship detection - supports CSV, JSON, Excel, TSV, Parquet - memory-efficient, cross-platform
146 lines • 4.42 kB
TypeScript
/**
* Advanced Dataset Characterization Analyzer
* Core engine for sophisticated dataset analysis beyond basic statistics
*
* Risk-averse implementation strategy:
* - Incremental analysis with fallbacks
* - Comprehensive error handling
* - Progressive enhancement of existing capabilities
* - Backward compatibility maintained
*/
import type { Section1Result } from '../../overview/types';
import type { Section2Result } from '../../quality/types';
import type { Section3Result } from '../../eda/types';
import type { DatasetComplexityProfile, DatasetCharacterizationConfig, CharacterizationProgress } from './types';
/**
* Main analyzer class for advanced dataset characterization
*/
export declare class DatasetCharacterizationAnalyzer {
private config;
private warnings;
private startTime;
private progress;
constructor(config?: Partial<DatasetCharacterizationConfig>);
/**
* Main analysis method - performs comprehensive dataset characterization
*/
analyze(section1Result: Section1Result, section2Result: Section2Result, section3Result: Section3Result, progressCallback?: (progress: CharacterizationProgress) => void): Promise<DatasetComplexityProfile>;
/**
* Performs incremental analysis with comprehensive error handling
*/
private performIncrementalAnalysis;
/**
* Analyzes intrinsic dimensionality using multiple methods with fallbacks
*/
private analyzeIntrinsicDimensionality;
/**
* PCA-based dimensionality analysis with eigenvalue decomposition
*/
private pcaBasedDimensionalityAnalysis;
/**
* Correlation-based dimensionality analysis as fallback
*/
private correlationBasedDimensionalityAnalysis;
/**
* Simple fallback for dimensionality analysis
*/
private simpleDimensionalityFallback;
/**
* Analyze feature interactions (placeholder for now - will implement incrementally)
*/
private analyzeFeatureInteractions;
/**
* Analyze non-linearity (placeholder for now)
*/
private analyzeNonLinearity;
/**
* Analyze separability for classification tasks (placeholder)
*/
private analyzeSeparability;
/**
* Analyze noise characteristics (placeholder)
*/
private analyzeNoise;
/**
* Analyze sparsity patterns (placeholder)
*/
private analyzeSparsity;
/**
* Analyze temporal complexity (placeholder)
*/
private analyzeTemporalComplexity;
/**
* Initialize configuration with defaults
*/
private initializeConfig;
/**
* Initialize progress tracking
*/
private initializeProgress;
/**
* Reset analysis state for new analysis
*/
private resetAnalysisState;
/**
* Update progress and notify callback
*/
private updateProgress;
/**
* Estimate remaining time based on progress
*/
private estimateTimeRemaining;
/**
* Calculate total analysis steps
*/
private calculateTotalSteps;
/**
* Check if specific analysis should be performed
*/
private shouldPerformAnalysis;
/**
* Validate inputs before analysis
*/
private validateInputs;
/**
* Extract data context from previous section results
*/
private extractDataContext;
/**
* Extract numeric features from Section 3 results
*/
private extractNumericFeatures;
/**
* Extract categorical features from Section 3 results
*/
private extractCategoricalFeatures;
/**
* Extract temporal features from Section 3 results
*/
private extractTemporalFeatures;
/**
* Add warning to collection
*/
private addWarning;
/**
* Handle analysis errors with proper categorization
*/
private handleAnalysisError;
/**
* Generate analysis metadata
*/
private generateAnalysisMetadata;
/**
* Calculate overall complexity score (placeholder)
*/
private calculateOverallComplexityScore;
/**
* Determine confidence level (placeholder)
*/
private determineConfidenceLevel;
private extractCorrelationMatrix;
private computeEigenvalues;
private applyCriteriaForDimensionality;
private analyzeFeatureImportanceFromEigenVectors;
private findHighlyCorrelatedGroups;
}
//# sourceMappingURL=dataset-characterization-analyzer.d.ts.map