cli

package
v0.9.6 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 11, 2025 License: MIT Imports: 14 Imported by: 0

Documentation

Index

Constants

View Source
const (
	AppName = "pca"
)

Variables

This section is empty.

Functions

func ConvertToPCAOutputData

func ConvertToPCAOutputData(result *types.PCAResult, data *CSVData, includeMetrics bool,
	config types.PCAConfig, preprocessor *core.Preprocessor,
	categoricalData map[string][]string, targetData map[string][]float64) *types.PCAOutputData

ConvertToPCAOutputData converts PCAResult and CSVData to PCAOutputData

func GetDataSummary

func GetDataSummary(data *CSVData) string

GetDataSummary returns a summary of the CSV data

func NewApp

func NewApp() *cli.App

NewApp creates and configures the CLI application

func Run

func Run(args []string) error

Run executes the CLI application

func RunWithOSExit

func RunWithOSExit()

RunWithOSExit runs the CLI and exits with appropriate code

func ValidateCSVData

func ValidateCSVData(data *CSVData) error

ValidateCSVData performs basic validation on parsed CSV data

Types

type CSVData

type CSVData struct {
	*types.CSVData
}

CSVData wraps the unified types.CSVData for backward compatibility

func ParseCSV

func ParseCSV(filename string, options CSVParseOptions) (*CSVData, error)

ParseCSV reads and parses a CSV file according to the given options

func ParseCSVMixedWithTargets

func ParseCSVMixedWithTargets(filename string, options CSVParseOptions, targetColumns []string) (*CSVData, map[string][]string, map[string][]float64, error)

ParseCSVMixedWithTargets reads and parses a CSV file with support for target columns

func ParseCSVReader

func ParseCSVReader(r io.Reader, options CSVParseOptions) (*CSVData, error)

ParseCSVReader parses CSV data from an io.Reader

type CSVParseOptions

type CSVParseOptions struct {
	Delimiter        rune     // Field delimiter
	DecimalSeparator rune     // Decimal separator (for European formats)
	HasHeaders       bool     // First row contains column names
	HasIndex         bool     // First column contains row names
	NullValues       []string // Strings to treat as missing values
}

CSVParseOptions contains options for parsing CSV files

func NewCSVParseOptions

func NewCSVParseOptions() CSVParseOptions

NewCSVParseOptions creates default parse options

type OutputData

type OutputData struct {
	Metadata OutputMetadata `json:"metadata"`
	Results  []SampleResult `json:"results"`
	Summary  OutputSummary  `json:"summary,omitempty"`
}

OutputData represents the complete output data structure

type OutputMetadata

type OutputMetadata struct {
	NSamples      int    `json:"n_samples"`
	NFeatures     int    `json:"n_features"`
	NComponents   int    `json:"n_components"`
	Preprocessing string `json:"preprocessing"`
}

OutputMetadata contains analysis metadata

type OutputSummary

type OutputSummary struct {
	ExplainedVariance  []float64            `json:"explained_variance,omitempty"`
	CumulativeVariance []float64            `json:"cumulative_variance,omitempty"`
	Loadings           map[string][]float64 `json:"loadings,omitempty"`
}

OutputSummary contains summary statistics

type SampleMetrics

type SampleMetrics struct {
	HotellingT2         float64 `json:"hotelling_t2"`
	MahalanobisDistance float64 `json:"mahalanobis_distance"`
	RSS                 float64 `json:"rss"`
	IsOutlier           bool    `json:"is_outlier"`
}

SampleMetrics contains advanced metrics for a sample

type SampleResult

type SampleResult struct {
	ID      string             `json:"id"`
	Scores  map[string]float64 `json:"scores,omitempty"`
	Metrics *SampleMetrics     `json:"metrics,omitempty"`
}

SampleResult contains results for a single sample

type TransformResult

type TransformResult struct {
	Scores          types.Matrix
	SampleNames     []string
	ComponentLabels []string
	ModelMethod     string
	Metrics         []types.SampleMetrics // Optional metrics
}

TransformResult holds the transformation results

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL