ImageDev

AnalysisStatistics

Computes summary statistics for each column of a numerical table.

Access to parameter description

It is typically used on the result of a label analysis, where each row corresponds to a label (object) and each column represents a measured feature.
However, the operator is not limited to label analysis results and can be applied to any table containing numerical values.

For each input column, the operator computes a set of descriptive statistics and produces an output table where: For each numerical column, the following statistics may be computed:

Function Syntax

This function returns outputDataframe.
// Function prototype
std::shared_ptr< iolink::DataFrameView > analysisStatistics( std::shared_ptr< const iolink::DataFrameView > inputDataframe, double percentage1, double percentage2, double percentage3, double percentage4, std::shared_ptr< iolink::DataFrameView > outputDataframe = nullptr );
This function returns outputDataframe.
// Function prototype.
analysis_statistics(input_dataframe: Union[iolink.DataFrameView, None] = None,
                    percentage1: float = 5,
                    percentage2: float = 25,
                    percentage3: float = 75,
                    percentage4: float = 95,
                    output_dataframe: Union[iolink.DataFrameView, None] = None) -> Union[iolink.DataFrameView, None]
This function returns outputDataframe.
// Function prototype.
public static IOLink.DataFrameView
AnalysisStatistics( IOLink.DataFrameView inputDataframe = null,
                    double percentage1 = 5,
                    double percentage2 = 25,
                    double percentage3 = 75,
                    double percentage4 = 95,
                    IOLink.DataFrameView outputDataframe = null );

Class Syntax

Parameters

Parameter Name Description Type Supported Values Default Value
input
inputDataframe
The input dataframe from which statics are extracted.
Each column represents a measurement or variable. Rows may represent labels, objects, samples, or any other entities.
DataFrameViewConst nullptr
input
percentage1
The value of the first user-defined percentile to compute, in percent. Float64 [0, 100] 5
input
percentage2
The value of the second user-defined percentile to compute, in percent. Float64 [0, 100] 25
input
percentage3
The value of the third user-defined percentile to compute, in percent. Float64 [0, 100] 75
input
percentage4
The value of the fourth user-defined percentile to compute, in percent. Float64 [0, 100] 95
output
outputDataframe
The output dataframe summary statistics for each input column.
Columns correspond to the input measurements and rows correspond to the computed statistics (e.g. Mean, Minimum, Maximum, etc.).
DataFrameView nullptr
Parameter Name Description Type Supported Values Default Value
input
input_dataframe
The input dataframe from which statics are extracted.
Each column represents a measurement or variable. Rows may represent labels, objects, samples, or any other entities.
data_frame_view_const None
input
percentage1
The value of the first user-defined percentile to compute, in percent. float64 [0, 100] 5
input
percentage2
The value of the second user-defined percentile to compute, in percent. float64 [0, 100] 25
input
percentage3
The value of the third user-defined percentile to compute, in percent. float64 [0, 100] 75
input
percentage4
The value of the fourth user-defined percentile to compute, in percent. float64 [0, 100] 95
output
output_dataframe
The output dataframe summary statistics for each input column.
Columns correspond to the input measurements and rows correspond to the computed statistics (e.g. Mean, Minimum, Maximum, etc.).
data_frame_view None
Parameter Name Description Type Supported Values Default Value
input
inputDataframe
The input dataframe from which statics are extracted.
Each column represents a measurement or variable. Rows may represent labels, objects, samples, or any other entities.
DataFrameViewConst null
input
percentage1
The value of the first user-defined percentile to compute, in percent. Float64 [0, 100] 5
input
percentage2
The value of the second user-defined percentile to compute, in percent. Float64 [0, 100] 25
input
percentage3
The value of the third user-defined percentile to compute, in percent. Float64 [0, 100] 75
input
percentage4
The value of the fourth user-defined percentile to compute, in percent. Float64 [0, 100] 95
output
outputDataframe
The output dataframe summary statistics for each input column.
Columns correspond to the input measurements and rows correspond to the computed statistics (e.g. Mean, Minimum, Maximum, etc.).
DataFrameView null

Object Examples

auto individualAnalysisDataframeView = ioformat::openView( std::string( IMAGEDEVDATA_OBJECTS_FOLDER ) + "individualAnalysisDataframe.csv" );
auto individualAnalysisDataframe = iolink::DataFrameViewProvider::toDataFrame( individualAnalysisDataframeView );

AnalysisStatistics analysisStatisticsAlgo;
analysisStatisticsAlgo.setInputDataframe( individualAnalysisDataframe );
analysisStatisticsAlgo.setPercentage1( 5 );
analysisStatisticsAlgo.setPercentage2( 25 );
analysisStatisticsAlgo.setPercentage3( 75 );
analysisStatisticsAlgo.setPercentage4( 95 );
analysisStatisticsAlgo.execute();

std::cout << "outputDataframe:" << analysisStatisticsAlgo.outputDataframe()->shape();
individual_analysis_dataframe = iolink.DataFrameViewProvider.to_data_frame(ioformat.open_view(imagedev_data.get_object_path("individualAnalysisDataframe.csv")))

analysis_statistics_algo = imagedev.AnalysisStatistics()
analysis_statistics_algo.input_dataframe = individual_analysis_dataframe
analysis_statistics_algo.percentage1 = 5
analysis_statistics_algo.percentage2 = 25
analysis_statistics_algo.percentage3 = 75
analysis_statistics_algo.percentage4 = 95
analysis_statistics_algo.execute()

print("output_dataframe:", str(analysis_statistics_algo.output_dataframe))
var individualAnalysisDataframeView = IOFormat.ViewIO.OpenView(  @"Data/objects/individualAnalysisDataframe.csv" );
var individualAnalysisDataframe = IOLink.DataFrameViewProvider.ToDataFrame( individualAnalysisDataframeView );

AnalysisStatistics analysisStatisticsAlgo = new AnalysisStatistics
{
    inputDataframe = individualAnalysisDataframe,
    percentage1 = 5,
    percentage2 = 25,
    percentage3 = 75,
    percentage4 = 95
};
analysisStatisticsAlgo.Execute();

Console.WriteLine( "outputDataframe:" + analysisStatisticsAlgo.outputDataframe.ToString() );

Function Examples

auto individualAnalysisDataframeView = ioformat::openView( std::string( IMAGEDEVDATA_OBJECTS_FOLDER ) + "individualAnalysisDataframe.csv" );
auto individualAnalysisDataframe = iolink::DataFrameViewProvider::toDataFrame( individualAnalysisDataframeView );

auto result = analysisStatistics( individualAnalysisDataframe, 5, 25, 75, 95 );

std::cout << "outputDataframe:" << result->shape();
individual_analysis_dataframe = iolink.DataFrameViewProvider.to_data_frame(ioformat.open_view(imagedev_data.get_object_path("individualAnalysisDataframe.csv")))

result = imagedev.analysis_statistics(individual_analysis_dataframe, 5, 25, 75, 95)

print("output_dataframe:", str(result))
var individualAnalysisDataframeView = IOFormat.ViewIO.OpenView(  @"Data/objects/individualAnalysisDataframe.csv" );
var individualAnalysisDataframe = IOLink.DataFrameViewProvider.ToDataFrame( individualAnalysisDataframeView );

IOLink.DataFrameView result = Processing.AnalysisStatistics( individualAnalysisDataframe, 5, 25, 75, 95 );

Console.WriteLine( "outputDataframe:" + result.ToString() );



© 2026 Thermo Fisher Scientific Inc. All rights reserved.