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
84 lines • 2.17 kB
TypeScript
/**
* Structural Analyzer - Dataset dimensions and memory analysis
* Handles memory estimation, sparsity analysis, and column profiling
*/
import type { ParsedRow } from '../../parsers/types';
import type { StructuralDimensions, Section1Config, Section1Warning } from './types';
export declare class StructuralAnalyzer {
private config;
private warnings;
constructor(config: Section1Config);
/**
* Analyze dataset structural dimensions and memory characteristics
*/
analyzeStructure(rows: ParsedRow[], hasHeader: boolean): StructuralDimensions;
/**
* Create column inventory with names and indices
*/
private createColumnInventory;
/**
* Estimate memory usage of the dataset
*/
private estimateMemoryUsage;
/**
* Calculate average row length in bytes
*/
private calculateAverageRowLength;
/**
* Estimate UTF-8 byte count for a string
*/
private estimateUtf8Bytes;
/**
* Analyze dataset sparsity (empty/null values)
*/
private analyzeSparsity;
/**
* Check if a cell is considered empty
*/
private isEmptyCell;
/**
* Add warnings for structural characteristics
*/
private addStructuralWarnings;
/**
* Create empty structure for edge cases
*/
private createEmptyStructure;
/**
* Generate quick column statistics for overview
*/
private generateQuickStatistics;
/**
* Analyze the type of a column based on its values
*/
private analyzeColumnType;
/**
* Check if a value is numeric
*/
private isNumeric;
/**
* Check if a value looks like a date
*/
private isDate;
/**
* Check if a value is boolean
*/
private isBoolean;
/**
* Check if a column might be an ID column
*/
private isPotentialIdColumn;
/**
* Create empty statistics for edge cases
*/
private createEmptyStatistics;
/**
* Get collected warnings
*/
getWarnings(): Section1Warning[];
/**
* Clear warnings
*/
clearWarnings(): void;
}
//# sourceMappingURL=structural-analyzer.d.ts.map