From fe6a77bdc6bab7b4976da9e265d3bd545fa3bde2 Mon Sep 17 00:00:00 2001 From: Katy Scott Date: Wed, 11 Dec 2024 16:26:31 -0500 Subject: [PATCH 01/17] feat: add io/loaders module with features, general, and images specific loading functions --- src/readii/io/loaders/__init__.py | 12 +++++ src/readii/io/loaders/features.py | 81 +++++++++++++++++++++++++++++++ src/readii/io/loaders/general.py | 81 +++++++++++++++++++++++++++++++ src/readii/io/loaders/images.py | 52 ++++++++++++++++++++ 4 files changed, 226 insertions(+) create mode 100644 src/readii/io/loaders/__init__.py create mode 100644 src/readii/io/loaders/features.py create mode 100644 src/readii/io/loaders/general.py create mode 100644 src/readii/io/loaders/images.py diff --git a/src/readii/io/loaders/__init__.py b/src/readii/io/loaders/__init__.py new file mode 100644 index 0000000..5e9ff27 --- /dev/null +++ b/src/readii/io/loaders/__init__.py @@ -0,0 +1,12 @@ +"""Module for loading different data types for the READII pipeline.""" + +from .features import loadFeatureFilesFromImageTypes +from .general import loadFileToDataFrame, loadImageDatasetConfig +from .images import getImageTypesFromDirectory + +__all__ = [ + "loadFeatureFilesFromImageTypes", + "loadFileToDataFrame", + "loadImageDatasetConfig", + "getImageTypesFromDirectory" +] \ No newline at end of file diff --git a/src/readii/io/loaders/features.py b/src/readii/io/loaders/features.py new file mode 100644 index 0000000..0b088ad --- /dev/null +++ b/src/readii/io/loaders/features.py @@ -0,0 +1,81 @@ +import os +import pandas as pd + +from typing import Optional, Dict + +from readii.io.loaders.general import loadFileToDataFrame + + +def loadFeatureFilesFromImageTypes(extracted_feature_dir:str, + image_types:list, + drop_labels:Optional[bool]=True, + labels_to_drop:Optional[list]=None)->Dict[str,pd.DataFrame]: + """Function to load in all the extracted imaging feature sets from a directory and return them as a dictionary of dataframes. + + Parameters + ---------- + extracted_feature_dir : str + Path to the directory containing the extracted feature csv files + image_types : list, optional + List of image types to load in. The default is ['original']. + drop_labels : bool, optional + Whether to drop the labels from the dataframes. Use when loading labelled data from data_setup_for_modeling.ipynb. The default is True. + labels_to_drop : list, optional + List of labels to drop from the dataframes. The default is ["patient_ID","survival_time_in_years","survival_event_binary"] based on code + in data_setup_for_modeling.ipynb. + + Returns + ------- + feature_sets : dict + Dictionary of dataframes containing the extracted radiomics features. + """ + # Set default labels to drop if not specified + if labels_to_drop is None: + labels_to_drop = ["patient_ID","survival_time_in_years","survival_event_binary"] + + # Initialize dictionary to store the feature sets + feature_sets = {} + + # Check if the passed in extracted feature directory exists + if not os.path.isdir(extracted_feature_dir): + raise FileNotFoundError(f"Extracted feature directory {extracted_feature_dir} does not exist.") + + feature_file_list = os.listdir(extracted_feature_dir) + + # Loop through all the files in the directory + for image_type in image_types: + try: + # Extract the image type feature csv file from the feature directory + # This should return a list of length 1, so we can just take the first element + image_type_feature_file = [file for file in feature_file_list if (image_type in file) and (file.endswith(".csv"))][0] + # Remove the image type file from the list of feature files + feature_file_list.remove(image_type_feature_file) + except Exception as e: + print(f"{e}\n No {image_type} feature csv files found in {extracted_feature_dir}") + # Skip to the next image type + continue + + + # Get the full path to the feature file + feature_file_path = os.path.join(extracted_feature_dir, image_type_feature_file) + + # Load the feature data into a pandas dataframe + raw_feature_data = loadFileToDataFrame(feature_file_path) + + try: + # Drop the labels from the dataframe if specified + if drop_labels: + # Data is now only extracted features + raw_feature_data.drop(labels_to_drop, axis=1, inplace=True) + except KeyError as e: + print(f"{feature_file_path} does not have the labels {labels_to_drop} to drop.") + # Skip to the next image type + continue + + # Save the dataframe to the feature_sets dictionary + feature_sets[image_type] = raw_feature_data + + if not feature_sets: + raise ValueError(f"No valid feature sets were loaded from {extracted_feature_dir}") + + return feature_sets \ No newline at end of file diff --git a/src/readii/io/loaders/general.py b/src/readii/io/loaders/general.py new file mode 100644 index 0000000..397e4f9 --- /dev/null +++ b/src/readii/io/loaders/general.py @@ -0,0 +1,81 @@ +import os +import pandas as pd +import yaml + + +def loadImageDatasetConfig(dataset_name:str, + config_dir_path:str) -> dict: + """Load the configuration file for a given dataset. Expects the configuration file to be named .yaml. + + Parameters + ---------- + dataset_name : str + Name of the dataset to load the configuration file for. + config_dir_path : str + Path to the directory containing the configuration files. + + Returns + ------- + dict + Dictionary containing the configuration settings for the dataset. + + Examples + -------- + >>> config = loadImageDatasetConfig("NSCLC_Radiogenomics", "config/") + """ + # Make full path to config file + config_file_path = os.path.join(config_dir_path, f"{dataset_name}.yaml") + + # Check if config file exists + if not os.path.exists(config_file_path): + raise FileNotFoundError(f"Config file {config_file_path} does not exist.") + + try: + # Load the config file + with open(config_file_path, "r") as f: + return yaml.safe_load(f) + + except yaml.YAMLError as e: + raise ValueError(f"Invalid YAML in config file: {e}") + + + +def loadFileToDataFrame(file_path:str) -> pd.DataFrame: + """Load data from a csv or xlsx file into a pandas dataframe. + + Parameters + ---------- + file_path (str): Path to the data file. + + Returns + ------- + pd.DataFrame: Dataframe containing the data from the file. + """ + if not file_path: + raise ValueError("file_path cannot be empty") + + if not os.path.exists(file_path): + raise FileNotFoundError(f"File {file_path} does not exist") + + # Get the file extension + _, file_extension = os.path.splitext(file_path) + + try: + # Check if the file is an Excel file + if file_extension == '.xlsx': + df = pd.read_excel(file_path) + # Check if the file is a CSV file + elif file_extension == '.csv': + df = pd.read_csv(file_path) + else: + raise ValueError("Unsupported file format. Please provide a .csv or .xlsx file.") + + if df.empty: + raise ValueError("Loaded DataFrame is empty") + + return df + + except pd.errors.EmptyDataError: + raise ValueError("File is empty") + except (pd.errors.ParserError, ValueError) as e: + raise ValueError(f"Error parsing file: {e}") \ No newline at end of file diff --git a/src/readii/io/loaders/images.py b/src/readii/io/loaders/images.py new file mode 100644 index 0000000..abf631e --- /dev/null +++ b/src/readii/io/loaders/images.py @@ -0,0 +1,52 @@ +from pathlib import Path +from typing import Union + +def getImageTypesFromDirectory(raw_data_dir:Union[Path|str], + feature_file_prefix:str = "", + feature_file_suffix:str = ".csv"): + """ Function to get a list of image types from a directory containing image feature files. + + Parameters + ---------- + raw_data_dir : str + Path to the directory containing the image feature files. + feature_file_prefix : str, optional + Prefix to remove from the feature file name. The default is "". + feature_file_suffix : str, optional + Suffix to remove from the feature file name. The default is ".csv". + + Returns + ------- + list + List of image types from the image feature files. + """ + # Check if raw_data_dir is a string or a Path object, convert to Path object if it is a string + if isinstance(raw_data_dir, str): + raw_data_dir = Path(raw_data_dir) + + # Check if the directory exists + if not raw_data_dir.exists(): + raise FileNotFoundError(f"Directory {raw_data_dir} does not exist.") + + # Check if the directory is a directory + if not raw_data_dir.is_dir(): + raise NotADirectoryError(f"Path {raw_data_dir} is not a directory.") + + # Check that directory contains files with the specified prefix and suffix + if not any(raw_data_dir.glob(f"{feature_file_prefix}*{feature_file_suffix}")): + raise FileNotFoundError(f"No files with prefix {feature_file_prefix} and suffix {feature_file_suffix} found in directory {raw_data_dir}.") + + # Initialize an empty list to store the image types + image_types = [] + + # Get list of file banes with the specified prefix and suffix in the directory + for file in raw_data_dir.glob(f"{feature_file_prefix}*{feature_file_suffix}"): + file_name = file.name + + # Remove the prefix and suffix from the file name + image_type = file_name.removeprefix(feature_file_prefix).removesuffix(feature_file_suffix) + + # Add the image type to the list + image_types.append(image_type) + + return image_types \ No newline at end of file From 9010f038cd147445333ac93a997d447698a74afc Mon Sep 17 00:00:00 2001 From: Katy Scott Date: Thu, 12 Dec 2024 09:58:57 -0500 Subject: [PATCH 02/17] test: test the loadImageDatasetConfig function --- tests/io/loaders/test_general.py | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) create mode 100644 tests/io/loaders/test_general.py diff --git a/tests/io/loaders/test_general.py b/tests/io/loaders/test_general.py new file mode 100644 index 0000000..709ef61 --- /dev/null +++ b/tests/io/loaders/test_general.py @@ -0,0 +1,24 @@ +from readii.io.loaders.general import * +import pytest + +@pytest.fixture +def nsclcConfigDirPath(): + return "tests/NSCLC_Radiogenomics" + +@pytest.fixture +def lung4DConfigDirPath(): + return "tests/4D-Lung" + +def test_NSCLC_loadImageDatasetConfig(nsclcConfigDirPath): + config = loadImageDatasetConfig("NSCLC_Radiogenomics", nsclcConfigDirPath) + assert config["dataset_name"] == "NSCLC_Radiogenomics" + assert config["image_types"] == ["original", "shuffled_full","shuffled_roi","shuffled_non_roi","randomized_sampled_full","randomized_sampled_roi","randomized_sampled_non_roi"] + assert config["outcome_variables"]["event_label"] == "Survival Status" + assert config["outcome_variables"]["event_value_mapping"] == {'Alive': 0, 'Dead': 1} + +def test_lung4D_loadImageDatasetConfig(lung4DConfigDirPath): + config = loadImageDatasetConfig("4D-Lung", lung4DConfigDirPath) + assert config["dataset_name"] == "4D-Lung" + assert config["image_types"] == ["original", "shuffled_full","shuffled_roi","shuffled_non_roi","randomized_sampled_full","randomized_sampled_roi","randomized_sampled_non_roi"] + assert config["outcome_variables"]["event_label"] == None + assert config["outcome_variables"]["event_value_mapping"] == None \ No newline at end of file From 08f815188167ec11db0bcf321c63cce40dc4d9f2 Mon Sep 17 00:00:00 2001 From: Katy Scott Date: Thu, 12 Dec 2024 09:59:26 -0500 Subject: [PATCH 03/17] feat: add READII config files for the two test datasets --- tests/4D-Lung/4D-Lung.yaml | 20 +++++++++++++++++++ .../NSCLC_Radiogenomics.yaml | 20 +++++++++++++++++++ 2 files changed, 40 insertions(+) create mode 100644 tests/4D-Lung/4D-Lung.yaml create mode 100644 tests/NSCLC_Radiogenomics/NSCLC_Radiogenomics.yaml diff --git a/tests/4D-Lung/4D-Lung.yaml b/tests/4D-Lung/4D-Lung.yaml new file mode 100644 index 0000000..b0fb8c1 --- /dev/null +++ b/tests/4D-Lung/4D-Lung.yaml @@ -0,0 +1,20 @@ +# Config file for 4D-Lung for READII +dataset_name: 4D-Lung + +### CLINICAL VARIABLE INFORMATION ### +# Event values should be in the order [Alive_value, Dead_value] +outcome_variables: + time_label: + event_label: + convert_to_years: False + event_value_mapping: + +exclusion_variables: + +train_test_split: + split: False + split_variable: + impute: + + +image_types: ["original", "shuffled_full","shuffled_roi","shuffled_non_roi","randomized_sampled_full","randomized_sampled_roi","randomized_sampled_non_roi"] diff --git a/tests/NSCLC_Radiogenomics/NSCLC_Radiogenomics.yaml b/tests/NSCLC_Radiogenomics/NSCLC_Radiogenomics.yaml new file mode 100644 index 0000000..a4018a0 --- /dev/null +++ b/tests/NSCLC_Radiogenomics/NSCLC_Radiogenomics.yaml @@ -0,0 +1,20 @@ +# Config file for NSCLC_Radiogenomics for READII +dataset_name: NSCLC_Radiogenomics + +### CLINICAL VARIABLE INFORMATION ### +# Event values should be in the order [Alive_value, Dead_value] +outcome_variables: + time_label: "" + event_label: "Survival Status" + convert_to_years: False + event_value_mapping: {'Alive': 0, 'Dead': 1} + +exclusion_variables: + +train_test_split: + split: False + split_variable: + impute: + + +image_types: ["original", "shuffled_full","shuffled_roi","shuffled_non_roi","randomized_sampled_full","randomized_sampled_roi","randomized_sampled_non_roi"] From 1d3d96aaa064bc6df2d2bdc1427df1519cc9165f Mon Sep 17 00:00:00 2001 From: Katy Scott Date: Thu, 12 Dec 2024 17:03:44 -0500 Subject: [PATCH 04/17] tests: add radiomic feature extraction output test for 4D lung so output can be used for other tests --- tests/test_feature_extraction.py | 20 ++++++++++++++++---- 1 file changed, 16 insertions(+), 4 deletions(-) diff --git a/tests/test_feature_extraction.py b/tests/test_feature_extraction.py index 9f63ae3..72b500a 100644 --- a/tests/test_feature_extraction.py +++ b/tests/test_feature_extraction.py @@ -46,6 +46,10 @@ def pyradiomicsParamFilePath(): def nsclcMetadataPath(): return "tests/output/ct_to_seg_match_list_NSCLC_Radiogenomics.csv" +@pytest.fixture +def lung4DMetadataPath(): + return "tests/output/ct_to_seg_match_list_4D-Lung.csv" + def test_singleRadiomicFeatureExtraction_SEG(nsclcCTImage, nsclcSEGImage, pyradiomicsParamFilePath): """Test single image feature extraction with a CT and SEG""" @@ -108,11 +112,19 @@ def test_radiomicFeatureExtraction(nsclcMetadataPath): "Volume feature is incorrect" -def test_radiomicFeatureExtraction_output(nsclcMetadataPath): - """Test output creation from radiomic feature extraction""" +def test_NSCLC_radiomicFeatureExtraction_output(nsclcMetadataPath): + """Test output creation from radiomic feature extraction for SEG dataset""" actual = radiomicFeatureExtraction(nsclcMetadataPath, imageDirPath = "tests/", roiNames = None, - outputDirPath = "tests/output/") + outputDirPath = "tests/NSCLC_Radiogenomics/results/") expected_path = "tests/output/features/radiomicfeatures_original_NSCLC_Radiogenomics.csv" - assert os.path.exists(expected_path) \ No newline at end of file + assert os.path.exists(expected_path) + + +def test_4DLung_radiomicFeatureExtraction_output(lung4DMetadataPath): + """Test output creation from radiomic feature extraction for RTSTRUCT dataset""" + actual = radiomicFeatureExtraction(lung4DMetadataPath, + imageDirPath = "tests/", + roiNames = "Tumor_c40", + outputDirPath = "tests/4D-Lung/results/") \ No newline at end of file From 35d4dbcc67dae3b662b5514bcec84ce4fbcb9497 Mon Sep 17 00:00:00 2001 From: Katy Scott Date: Thu, 12 Dec 2024 17:04:06 -0500 Subject: [PATCH 05/17] feat: test radiomic feature output for 4D Lung --- .../results/features/radiomicfeatures_original_4D-Lung.csv | 2 ++ 1 file changed, 2 insertions(+) create mode 100644 tests/4D-Lung/results/features/radiomicfeatures_original_4D-Lung.csv diff --git a/tests/4D-Lung/results/features/radiomicfeatures_original_4D-Lung.csv b/tests/4D-Lung/results/features/radiomicfeatures_original_4D-Lung.csv new file mode 100644 index 0000000..9b2c600 --- /dev/null +++ b/tests/4D-Lung/results/features/radiomicfeatures_original_4D-Lung.csv @@ -0,0 +1,2 @@ +patient_ID,study_description,series_UID,series_description,image_modality,instances,seg_series_UID,seg_modality,seg_ref_image,roi,roi_number,negative_control,diagnostics_Versions_PyRadiomics,diagnostics_Versions_Numpy,diagnostics_Versions_SimpleITK,diagnostics_Versions_PyWavelet,diagnostics_Versions_Python,diagnostics_Configuration_Settings,diagnostics_Configuration_EnabledImageTypes,diagnostics_Image-original_Hash,diagnostics_Image-original_Dimensionality,diagnostics_Image-original_Spacing,diagnostics_Image-original_Size,diagnostics_Image-original_Mean,diagnostics_Image-original_Minimum,diagnostics_Image-original_Maximum,diagnostics_Mask-original_Hash,diagnostics_Mask-original_Spacing,diagnostics_Mask-original_Size,diagnostics_Mask-original_BoundingBox,diagnostics_Mask-original_VoxelNum,diagnostics_Mask-original_VolumeNum,diagnostics_Mask-original_CenterOfMassIndex,diagnostics_Mask-original_CenterOfMass,diagnostics_Image-interpolated_Spacing,diagnostics_Image-interpolated_Size,diagnostics_Image-interpolated_Mean,diagnostics_Image-interpolated_Minimum,diagnostics_Image-interpolated_Maximum,diagnostics_Mask-interpolated_Spacing,diagnostics_Mask-interpolated_Size,diagnostics_Mask-interpolated_BoundingBox,diagnostics_Mask-interpolated_VoxelNum,diagnostics_Mask-interpolated_VolumeNum,diagnostics_Mask-interpolated_CenterOfMassIndex,diagnostics_Mask-interpolated_CenterOfMass,diagnostics_Mask-interpolated_Mean,diagnostics_Mask-interpolated_Minimum,diagnostics_Mask-interpolated_Maximum,original_shape_Elongation,original_shape_Flatness,original_shape_LeastAxisLength,original_shape_MajorAxisLength,original_shape_Maximum2DDiameterColumn,original_shape_Maximum2DDiameterRow,original_shape_Maximum2DDiameterSlice,original_shape_Maximum3DDiameter,original_shape_MeshVolume,original_shape_MinorAxisLength,original_shape_Sphericity,original_shape_SurfaceArea,original_shape_SurfaceVolumeRatio,original_shape_VoxelVolume,original_firstorder_10Percentile,original_firstorder_90Percentile,original_firstorder_Energy,original_firstorder_Entropy,original_firstorder_InterquartileRange,original_firstorder_Kurtosis,original_firstorder_Maximum,original_firstorder_MeanAbsoluteDeviation,original_firstorder_Mean,original_firstorder_Median,original_firstorder_Minimum,original_firstorder_Range,original_firstorder_RobustMeanAbsoluteDeviation,original_firstorder_RootMeanSquared,original_firstorder_Skewness,original_firstorder_TotalEnergy,original_firstorder_Uniformity,original_firstorder_Variance,original_glcm_Autocorrelation,original_glcm_ClusterProminence,original_glcm_ClusterShade,original_glcm_ClusterTendency,original_glcm_Contrast,original_glcm_Correlation,original_glcm_DifferenceAverage,original_glcm_DifferenceEntropy,original_glcm_DifferenceVariance,original_glcm_Id,original_glcm_Idm,original_glcm_Idmn,original_glcm_Idn,original_glcm_Imc1,original_glcm_Imc2,original_glcm_InverseVariance,original_glcm_JointAverage,original_glcm_JointEnergy,original_glcm_JointEntropy,original_glcm_MCC,original_glcm_MaximumProbability,original_glcm_SumAverage,original_glcm_SumEntropy,original_glcm_SumSquares,original_glrlm_GrayLevelNonUniformity,original_glrlm_GrayLevelNonUniformityNormalized,original_glrlm_GrayLevelVariance,original_glrlm_HighGrayLevelRunEmphasis,original_glrlm_LongRunEmphasis,original_glrlm_LongRunHighGrayLevelEmphasis,original_glrlm_LongRunLowGrayLevelEmphasis,original_glrlm_LowGrayLevelRunEmphasis,original_glrlm_RunEntropy,original_glrlm_RunLengthNonUniformity,original_glrlm_RunLengthNonUniformityNormalized,original_glrlm_RunPercentage,original_glrlm_RunVariance,original_glrlm_ShortRunEmphasis,original_glrlm_ShortRunHighGrayLevelEmphasis,original_glrlm_ShortRunLowGrayLevelEmphasis,original_glszm_GrayLevelNonUniformity,original_glszm_GrayLevelNonUniformityNormalized,original_glszm_GrayLevelVariance,original_glszm_HighGrayLevelZoneEmphasis,original_glszm_LargeAreaEmphasis,original_glszm_LargeAreaHighGrayLevelEmphasis,original_glszm_LargeAreaLowGrayLevelEmphasis,original_glszm_LowGrayLevelZoneEmphasis,original_glszm_SizeZoneNonUniformity,original_glszm_SizeZoneNonUniformityNormalized,original_glszm_SmallAreaEmphasis,original_glszm_SmallAreaHighGrayLevelEmphasis,original_glszm_SmallAreaLowGrayLevelEmphasis,original_glszm_ZoneEntropy,original_glszm_ZonePercentage,original_glszm_ZoneVariance,original_gldm_DependenceEntropy,original_gldm_DependenceNonUniformity,original_gldm_DependenceNonUniformityNormalized,original_gldm_DependenceVariance,original_gldm_GrayLevelNonUniformity,original_gldm_GrayLevelVariance,original_gldm_HighGrayLevelEmphasis,original_gldm_LargeDependenceEmphasis,original_gldm_LargeDependenceHighGrayLevelEmphasis,original_gldm_LargeDependenceLowGrayLevelEmphasis,original_gldm_LowGrayLevelEmphasis,original_gldm_SmallDependenceEmphasis,original_gldm_SmallDependenceHighGrayLevelEmphasis,original_gldm_SmallDependenceLowGrayLevelEmphasis,original_ngtdm_Busyness,original_ngtdm_Coarseness,original_ngtdm_Complexity,original_ngtdm_Contrast,original_ngtdm_Strength,wavelet-LLH_firstorder_10Percentile,wavelet-LLH_firstorder_90Percentile,wavelet-LLH_firstorder_Energy,wavelet-LLH_firstorder_Entropy,wavelet-LLH_firstorder_InterquartileRange,wavelet-LLH_firstorder_Kurtosis,wavelet-LLH_firstorder_Maximum,wavelet-LLH_firstorder_MeanAbsoluteDeviation,wavelet-LLH_firstorder_Mean,wavelet-LLH_firstorder_Median,wavelet-LLH_firstorder_Minimum,wavelet-LLH_firstorder_Range,wavelet-LLH_firstorder_RobustMeanAbsoluteDeviation,wavelet-LLH_firstorder_RootMeanSquared,wavelet-LLH_firstorder_Skewness,wavelet-LLH_firstorder_TotalEnergy,wavelet-LLH_firstorder_Uniformity,wavelet-LLH_firstorder_Variance,wavelet-LLH_glcm_Autocorrelation,wavelet-LLH_glcm_ClusterProminence,wavelet-LLH_glcm_ClusterShade,wavelet-LLH_glcm_ClusterTendency,wavelet-LLH_glcm_Contrast,wavelet-LLH_glcm_Correlation,wavelet-LLH_glcm_DifferenceAverage,wavelet-LLH_glcm_DifferenceEntropy,wavelet-LLH_glcm_DifferenceVariance,wavelet-LLH_glcm_Id,wavelet-LLH_glcm_Idm,wavelet-LLH_glcm_Idmn,wavelet-LLH_glcm_Idn,wavelet-LLH_glcm_Imc1,wavelet-LLH_glcm_Imc2,wavelet-LLH_glcm_InverseVariance,wavelet-LLH_glcm_JointAverage,wavelet-LLH_glcm_JointEnergy,wavelet-LLH_glcm_JointEntropy,wavelet-LLH_glcm_MCC,wavelet-LLH_glcm_MaximumProbability,wavelet-LLH_glcm_SumAverage,wavelet-LLH_glcm_SumEntropy,wavelet-LLH_glcm_SumSquares,wavelet-LLH_glrlm_GrayLevelNonUniformity,wavelet-LLH_glrlm_GrayLevelNonUniformityNormalized,wavelet-LLH_glrlm_GrayLevelVariance,wavelet-LLH_glrlm_HighGrayLevelRunEmphasis,wavelet-LLH_glrlm_LongRunEmphasis,wavelet-LLH_glrlm_LongRunHighGrayLevelEmphasis,wavelet-LLH_glrlm_LongRunLowGrayLevelEmphasis,wavelet-LLH_glrlm_LowGrayLevelRunEmphasis,wavelet-LLH_glrlm_RunEntropy,wavelet-LLH_glrlm_RunLengthNonUniformity,wavelet-LLH_glrlm_RunLengthNonUniformityNormalized,wavelet-LLH_glrlm_RunPercentage,wavelet-LLH_glrlm_RunVariance,wavelet-LLH_glrlm_ShortRunEmphasis,wavelet-LLH_glrlm_ShortRunHighGrayLevelEmphasis,wavelet-LLH_glrlm_ShortRunLowGrayLevelEmphasis,wavelet-LLH_glszm_GrayLevelNonUniformity,wavelet-LLH_glszm_GrayLevelNonUniformityNormalized,wavelet-LLH_glszm_GrayLevelVariance,wavelet-LLH_glszm_HighGrayLevelZoneEmphasis,wavelet-LLH_glszm_LargeAreaEmphasis,wavelet-LLH_glszm_LargeAreaHighGrayLevelEmphasis,wavelet-LLH_glszm_LargeAreaLowGrayLevelEmphasis,wavelet-LLH_glszm_LowGrayLevelZoneEmphasis,wavelet-LLH_glszm_SizeZoneNonUniformity,wavelet-LLH_glszm_SizeZoneNonUniformityNormalized,wavelet-LLH_glszm_SmallAreaEmphasis,wavelet-LLH_glszm_SmallAreaHighGrayLevelEmphasis,wavelet-LLH_glszm_SmallAreaLowGrayLevelEmphasis,wavelet-LLH_glszm_ZoneEntropy,wavelet-LLH_glszm_ZonePercentage,wavelet-LLH_glszm_ZoneVariance,wavelet-LLH_gldm_DependenceEntropy,wavelet-LLH_gldm_DependenceNonUniformity,wavelet-LLH_gldm_DependenceNonUniformityNormalized,wavelet-LLH_gldm_DependenceVariance,wavelet-LLH_gldm_GrayLevelNonUniformity,wavelet-LLH_gldm_GrayLevelVariance,wavelet-LLH_gldm_HighGrayLevelEmphasis,wavelet-LLH_gldm_LargeDependenceEmphasis,wavelet-LLH_gldm_LargeDependenceHighGrayLevelEmphasis,wavelet-LLH_gldm_LargeDependenceLowGrayLevelEmphasis,wavelet-LLH_gldm_LowGrayLevelEmphasis,wavelet-LLH_gldm_SmallDependenceEmphasis,wavelet-LLH_gldm_SmallDependenceHighGrayLevelEmphasis,wavelet-LLH_gldm_SmallDependenceLowGrayLevelEmphasis,wavelet-LLH_ngtdm_Busyness,wavelet-LLH_ngtdm_Coarseness,wavelet-LLH_ngtdm_Complexity,wavelet-LLH_ngtdm_Contrast,wavelet-LLH_ngtdm_Strength,wavelet-LHL_firstorder_10Percentile,wavelet-LHL_firstorder_90Percentile,wavelet-LHL_firstorder_Energy,wavelet-LHL_firstorder_Entropy,wavelet-LHL_firstorder_InterquartileRange,wavelet-LHL_firstorder_Kurtosis,wavelet-LHL_firstorder_Maximum,wavelet-LHL_firstorder_MeanAbsoluteDeviation,wavelet-LHL_firstorder_Mean,wavelet-LHL_firstorder_Median,wavelet-LHL_firstorder_Minimum,wavelet-LHL_firstorder_Range,wavelet-LHL_firstorder_RobustMeanAbsoluteDeviation,wavelet-LHL_firstorder_RootMeanSquared,wavelet-LHL_firstorder_Skewness,wavelet-LHL_firstorder_TotalEnergy,wavelet-LHL_firstorder_Uniformity,wavelet-LHL_firstorder_Variance,wavelet-LHL_glcm_Autocorrelation,wavelet-LHL_glcm_ClusterProminence,wavelet-LHL_glcm_ClusterShade,wavelet-LHL_glcm_ClusterTendency,wavelet-LHL_glcm_Contrast,wavelet-LHL_glcm_Correlation,wavelet-LHL_glcm_DifferenceAverage,wavelet-LHL_glcm_DifferenceEntropy,wavelet-LHL_glcm_DifferenceVariance,wavelet-LHL_glcm_Id,wavelet-LHL_glcm_Idm,wavelet-LHL_glcm_Idmn,wavelet-LHL_glcm_Idn,wavelet-LHL_glcm_Imc1,wavelet-LHL_glcm_Imc2,wavelet-LHL_glcm_InverseVariance,wavelet-LHL_glcm_JointAverage,wavelet-LHL_glcm_JointEnergy,wavelet-LHL_glcm_JointEntropy,wavelet-LHL_glcm_MCC,wavelet-LHL_glcm_MaximumProbability,wavelet-LHL_glcm_SumAverage,wavelet-LHL_glcm_SumEntropy,wavelet-LHL_glcm_SumSquares,wavelet-LHL_glrlm_GrayLevelNonUniformity,wavelet-LHL_glrlm_GrayLevelNonUniformityNormalized,wavelet-LHL_glrlm_GrayLevelVariance,wavelet-LHL_glrlm_HighGrayLevelRunEmphasis,wavelet-LHL_glrlm_LongRunEmphasis,wavelet-LHL_glrlm_LongRunHighGrayLevelEmphasis,wavelet-LHL_glrlm_LongRunLowGrayLevelEmphasis,wavelet-LHL_glrlm_LowGrayLevelRunEmphasis,wavelet-LHL_glrlm_RunEntropy,wavelet-LHL_glrlm_RunLengthNonUniformity,wavelet-LHL_glrlm_RunLengthNonUniformityNormalized,wavelet-LHL_glrlm_RunPercentage,wavelet-LHL_glrlm_RunVariance,wavelet-LHL_glrlm_ShortRunEmphasis,wavelet-LHL_glrlm_ShortRunHighGrayLevelEmphasis,wavelet-LHL_glrlm_ShortRunLowGrayLevelEmphasis,wavelet-LHL_glszm_GrayLevelNonUniformity,wavelet-LHL_glszm_GrayLevelNonUniformityNormalized,wavelet-LHL_glszm_GrayLevelVariance,wavelet-LHL_glszm_HighGrayLevelZoneEmphasis,wavelet-LHL_glszm_LargeAreaEmphasis,wavelet-LHL_glszm_LargeAreaHighGrayLevelEmphasis,wavelet-LHL_glszm_LargeAreaLowGrayLevelEmphasis,wavelet-LHL_glszm_LowGrayLevelZoneEmphasis,wavelet-LHL_glszm_SizeZoneNonUniformity,wavelet-LHL_glszm_SizeZoneNonUniformityNormalized,wavelet-LHL_glszm_SmallAreaEmphasis,wavelet-LHL_glszm_SmallAreaHighGrayLevelEmphasis,wavelet-LHL_glszm_SmallAreaLowGrayLevelEmphasis,wavelet-LHL_glszm_ZoneEntropy,wavelet-LHL_glszm_ZonePercentage,wavelet-LHL_glszm_ZoneVariance,wavelet-LHL_gldm_DependenceEntropy,wavelet-LHL_gldm_DependenceNonUniformity,wavelet-LHL_gldm_DependenceNonUniformityNormalized,wavelet-LHL_gldm_DependenceVariance,wavelet-LHL_gldm_GrayLevelNonUniformity,wavelet-LHL_gldm_GrayLevelVariance,wavelet-LHL_gldm_HighGrayLevelEmphasis,wavelet-LHL_gldm_LargeDependenceEmphasis,wavelet-LHL_gldm_LargeDependenceHighGrayLevelEmphasis,wavelet-LHL_gldm_LargeDependenceLowGrayLevelEmphasis,wavelet-LHL_gldm_LowGrayLevelEmphasis,wavelet-LHL_gldm_SmallDependenceEmphasis,wavelet-LHL_gldm_SmallDependenceHighGrayLevelEmphasis,wavelet-LHL_gldm_SmallDependenceLowGrayLevelEmphasis,wavelet-LHL_ngtdm_Busyness,wavelet-LHL_ngtdm_Coarseness,wavelet-LHL_ngtdm_Complexity,wavelet-LHL_ngtdm_Contrast,wavelet-LHL_ngtdm_Strength,wavelet-LHH_firstorder_10Percentile,wavelet-LHH_firstorder_90Percentile,wavelet-LHH_firstorder_Energy,wavelet-LHH_firstorder_Entropy,wavelet-LHH_firstorder_InterquartileRange,wavelet-LHH_firstorder_Kurtosis,wavelet-LHH_firstorder_Maximum,wavelet-LHH_firstorder_MeanAbsoluteDeviation,wavelet-LHH_firstorder_Mean,wavelet-LHH_firstorder_Median,wavelet-LHH_firstorder_Minimum,wavelet-LHH_firstorder_Range,wavelet-LHH_firstorder_RobustMeanAbsoluteDeviation,wavelet-LHH_firstorder_RootMeanSquared,wavelet-LHH_firstorder_Skewness,wavelet-LHH_firstorder_TotalEnergy,wavelet-LHH_firstorder_Uniformity,wavelet-LHH_firstorder_Variance,wavelet-LHH_glcm_Autocorrelation,wavelet-LHH_glcm_ClusterProminence,wavelet-LHH_glcm_ClusterShade,wavelet-LHH_glcm_ClusterTendency,wavelet-LHH_glcm_Contrast,wavelet-LHH_glcm_Correlation,wavelet-LHH_glcm_DifferenceAverage,wavelet-LHH_glcm_DifferenceEntropy,wavelet-LHH_glcm_DifferenceVariance,wavelet-LHH_glcm_Id,wavelet-LHH_glcm_Idm,wavelet-LHH_glcm_Idmn,wavelet-LHH_glcm_Idn,wavelet-LHH_glcm_Imc1,wavelet-LHH_glcm_Imc2,wavelet-LHH_glcm_InverseVariance,wavelet-LHH_glcm_JointAverage,wavelet-LHH_glcm_JointEnergy,wavelet-LHH_glcm_JointEntropy,wavelet-LHH_glcm_MCC,wavelet-LHH_glcm_MaximumProbability,wavelet-LHH_glcm_SumAverage,wavelet-LHH_glcm_SumEntropy,wavelet-LHH_glcm_SumSquares,wavelet-LHH_glrlm_GrayLevelNonUniformity,wavelet-LHH_glrlm_GrayLevelNonUniformityNormalized,wavelet-LHH_glrlm_GrayLevelVariance,wavelet-LHH_glrlm_HighGrayLevelRunEmphasis,wavelet-LHH_glrlm_LongRunEmphasis,wavelet-LHH_glrlm_LongRunHighGrayLevelEmphasis,wavelet-LHH_glrlm_LongRunLowGrayLevelEmphasis,wavelet-LHH_glrlm_LowGrayLevelRunEmphasis,wavelet-LHH_glrlm_RunEntropy,wavelet-LHH_glrlm_RunLengthNonUniformity,wavelet-LHH_glrlm_RunLengthNonUniformityNormalized,wavelet-LHH_glrlm_RunPercentage,wavelet-LHH_glrlm_RunVariance,wavelet-LHH_glrlm_ShortRunEmphasis,wavelet-LHH_glrlm_ShortRunHighGrayLevelEmphasis,wavelet-LHH_glrlm_ShortRunLowGrayLevelEmphasis,wavelet-LHH_glszm_GrayLevelNonUniformity,wavelet-LHH_glszm_GrayLevelNonUniformityNormalized,wavelet-LHH_glszm_GrayLevelVariance,wavelet-LHH_glszm_HighGrayLevelZoneEmphasis,wavelet-LHH_glszm_LargeAreaEmphasis,wavelet-LHH_glszm_LargeAreaHighGrayLevelEmphasis,wavelet-LHH_glszm_LargeAreaLowGrayLevelEmphasis,wavelet-LHH_glszm_LowGrayLevelZoneEmphasis,wavelet-LHH_glszm_SizeZoneNonUniformity,wavelet-LHH_glszm_SizeZoneNonUniformityNormalized,wavelet-LHH_glszm_SmallAreaEmphasis,wavelet-LHH_glszm_SmallAreaHighGrayLevelEmphasis,wavelet-LHH_glszm_SmallAreaLowGrayLevelEmphasis,wavelet-LHH_glszm_ZoneEntropy,wavelet-LHH_glszm_ZonePercentage,wavelet-LHH_glszm_ZoneVariance,wavelet-LHH_gldm_DependenceEntropy,wavelet-LHH_gldm_DependenceNonUniformity,wavelet-LHH_gldm_DependenceNonUniformityNormalized,wavelet-LHH_gldm_DependenceVariance,wavelet-LHH_gldm_GrayLevelNonUniformity,wavelet-LHH_gldm_GrayLevelVariance,wavelet-LHH_gldm_HighGrayLevelEmphasis,wavelet-LHH_gldm_LargeDependenceEmphasis,wavelet-LHH_gldm_LargeDependenceHighGrayLevelEmphasis,wavelet-LHH_gldm_LargeDependenceLowGrayLevelEmphasis,wavelet-LHH_gldm_LowGrayLevelEmphasis,wavelet-LHH_gldm_SmallDependenceEmphasis,wavelet-LHH_gldm_SmallDependenceHighGrayLevelEmphasis,wavelet-LHH_gldm_SmallDependenceLowGrayLevelEmphasis,wavelet-LHH_ngtdm_Busyness,wavelet-LHH_ngtdm_Coarseness,wavelet-LHH_ngtdm_Complexity,wavelet-LHH_ngtdm_Contrast,wavelet-LHH_ngtdm_Strength,wavelet-HLL_firstorder_10Percentile,wavelet-HLL_firstorder_90Percentile,wavelet-HLL_firstorder_Energy,wavelet-HLL_firstorder_Entropy,wavelet-HLL_firstorder_InterquartileRange,wavelet-HLL_firstorder_Kurtosis,wavelet-HLL_firstorder_Maximum,wavelet-HLL_firstorder_MeanAbsoluteDeviation,wavelet-HLL_firstorder_Mean,wavelet-HLL_firstorder_Median,wavelet-HLL_firstorder_Minimum,wavelet-HLL_firstorder_Range,wavelet-HLL_firstorder_RobustMeanAbsoluteDeviation,wavelet-HLL_firstorder_RootMeanSquared,wavelet-HLL_firstorder_Skewness,wavelet-HLL_firstorder_TotalEnergy,wavelet-HLL_firstorder_Uniformity,wavelet-HLL_firstorder_Variance,wavelet-HLL_glcm_Autocorrelation,wavelet-HLL_glcm_ClusterProminence,wavelet-HLL_glcm_ClusterShade,wavelet-HLL_glcm_ClusterTendency,wavelet-HLL_glcm_Contrast,wavelet-HLL_glcm_Correlation,wavelet-HLL_glcm_DifferenceAverage,wavelet-HLL_glcm_DifferenceEntropy,wavelet-HLL_glcm_DifferenceVariance,wavelet-HLL_glcm_Id,wavelet-HLL_glcm_Idm,wavelet-HLL_glcm_Idmn,wavelet-HLL_glcm_Idn,wavelet-HLL_glcm_Imc1,wavelet-HLL_glcm_Imc2,wavelet-HLL_glcm_InverseVariance,wavelet-HLL_glcm_JointAverage,wavelet-HLL_glcm_JointEnergy,wavelet-HLL_glcm_JointEntropy,wavelet-HLL_glcm_MCC,wavelet-HLL_glcm_MaximumProbability,wavelet-HLL_glcm_SumAverage,wavelet-HLL_glcm_SumEntropy,wavelet-HLL_glcm_SumSquares,wavelet-HLL_glrlm_GrayLevelNonUniformity,wavelet-HLL_glrlm_GrayLevelNonUniformityNormalized,wavelet-HLL_glrlm_GrayLevelVariance,wavelet-HLL_glrlm_HighGrayLevelRunEmphasis,wavelet-HLL_glrlm_LongRunEmphasis,wavelet-HLL_glrlm_LongRunHighGrayLevelEmphasis,wavelet-HLL_glrlm_LongRunLowGrayLevelEmphasis,wavelet-HLL_glrlm_LowGrayLevelRunEmphasis,wavelet-HLL_glrlm_RunEntropy,wavelet-HLL_glrlm_RunLengthNonUniformity,wavelet-HLL_glrlm_RunLengthNonUniformityNormalized,wavelet-HLL_glrlm_RunPercentage,wavelet-HLL_glrlm_RunVariance,wavelet-HLL_glrlm_ShortRunEmphasis,wavelet-HLL_glrlm_ShortRunHighGrayLevelEmphasis,wavelet-HLL_glrlm_ShortRunLowGrayLevelEmphasis,wavelet-HLL_glszm_GrayLevelNonUniformity,wavelet-HLL_glszm_GrayLevelNonUniformityNormalized,wavelet-HLL_glszm_GrayLevelVariance,wavelet-HLL_glszm_HighGrayLevelZoneEmphasis,wavelet-HLL_glszm_LargeAreaEmphasis,wavelet-HLL_glszm_LargeAreaHighGrayLevelEmphasis,wavelet-HLL_glszm_LargeAreaLowGrayLevelEmphasis,wavelet-HLL_glszm_LowGrayLevelZoneEmphasis,wavelet-HLL_glszm_SizeZoneNonUniformity,wavelet-HLL_glszm_SizeZoneNonUniformityNormalized,wavelet-HLL_glszm_SmallAreaEmphasis,wavelet-HLL_glszm_SmallAreaHighGrayLevelEmphasis,wavelet-HLL_glszm_SmallAreaLowGrayLevelEmphasis,wavelet-HLL_glszm_ZoneEntropy,wavelet-HLL_glszm_ZonePercentage,wavelet-HLL_glszm_ZoneVariance,wavelet-HLL_gldm_DependenceEntropy,wavelet-HLL_gldm_DependenceNonUniformity,wavelet-HLL_gldm_DependenceNonUniformityNormalized,wavelet-HLL_gldm_DependenceVariance,wavelet-HLL_gldm_GrayLevelNonUniformity,wavelet-HLL_gldm_GrayLevelVariance,wavelet-HLL_gldm_HighGrayLevelEmphasis,wavelet-HLL_gldm_LargeDependenceEmphasis,wavelet-HLL_gldm_LargeDependenceHighGrayLevelEmphasis,wavelet-HLL_gldm_LargeDependenceLowGrayLevelEmphasis,wavelet-HLL_gldm_LowGrayLevelEmphasis,wavelet-HLL_gldm_SmallDependenceEmphasis,wavelet-HLL_gldm_SmallDependenceHighGrayLevelEmphasis,wavelet-HLL_gldm_SmallDependenceLowGrayLevelEmphasis,wavelet-HLL_ngtdm_Busyness,wavelet-HLL_ngtdm_Coarseness,wavelet-HLL_ngtdm_Complexity,wavelet-HLL_ngtdm_Contrast,wavelet-HLL_ngtdm_Strength,wavelet-HLH_firstorder_10Percentile,wavelet-HLH_firstorder_90Percentile,wavelet-HLH_firstorder_Energy,wavelet-HLH_firstorder_Entropy,wavelet-HLH_firstorder_InterquartileRange,wavelet-HLH_firstorder_Kurtosis,wavelet-HLH_firstorder_Maximum,wavelet-HLH_firstorder_MeanAbsoluteDeviation,wavelet-HLH_firstorder_Mean,wavelet-HLH_firstorder_Median,wavelet-HLH_firstorder_Minimum,wavelet-HLH_firstorder_Range,wavelet-HLH_firstorder_RobustMeanAbsoluteDeviation,wavelet-HLH_firstorder_RootMeanSquared,wavelet-HLH_firstorder_Skewness,wavelet-HLH_firstorder_TotalEnergy,wavelet-HLH_firstorder_Uniformity,wavelet-HLH_firstorder_Variance,wavelet-HLH_glcm_Autocorrelation,wavelet-HLH_glcm_ClusterProminence,wavelet-HLH_glcm_ClusterShade,wavelet-HLH_glcm_ClusterTendency,wavelet-HLH_glcm_Contrast,wavelet-HLH_glcm_Correlation,wavelet-HLH_glcm_DifferenceAverage,wavelet-HLH_glcm_DifferenceEntropy,wavelet-HLH_glcm_DifferenceVariance,wavelet-HLH_glcm_Id,wavelet-HLH_glcm_Idm,wavelet-HLH_glcm_Idmn,wavelet-HLH_glcm_Idn,wavelet-HLH_glcm_Imc1,wavelet-HLH_glcm_Imc2,wavelet-HLH_glcm_InverseVariance,wavelet-HLH_glcm_JointAverage,wavelet-HLH_glcm_JointEnergy,wavelet-HLH_glcm_JointEntropy,wavelet-HLH_glcm_MCC,wavelet-HLH_glcm_MaximumProbability,wavelet-HLH_glcm_SumAverage,wavelet-HLH_glcm_SumEntropy,wavelet-HLH_glcm_SumSquares,wavelet-HLH_glrlm_GrayLevelNonUniformity,wavelet-HLH_glrlm_GrayLevelNonUniformityNormalized,wavelet-HLH_glrlm_GrayLevelVariance,wavelet-HLH_glrlm_HighGrayLevelRunEmphasis,wavelet-HLH_glrlm_LongRunEmphasis,wavelet-HLH_glrlm_LongRunHighGrayLevelEmphasis,wavelet-HLH_glrlm_LongRunLowGrayLevelEmphasis,wavelet-HLH_glrlm_LowGrayLevelRunEmphasis,wavelet-HLH_glrlm_RunEntropy,wavelet-HLH_glrlm_RunLengthNonUniformity,wavelet-HLH_glrlm_RunLengthNonUniformityNormalized,wavelet-HLH_glrlm_RunPercentage,wavelet-HLH_glrlm_RunVariance,wavelet-HLH_glrlm_ShortRunEmphasis,wavelet-HLH_glrlm_ShortRunHighGrayLevelEmphasis,wavelet-HLH_glrlm_ShortRunLowGrayLevelEmphasis,wavelet-HLH_glszm_GrayLevelNonUniformity,wavelet-HLH_glszm_GrayLevelNonUniformityNormalized,wavelet-HLH_glszm_GrayLevelVariance,wavelet-HLH_glszm_HighGrayLevelZoneEmphasis,wavelet-HLH_glszm_LargeAreaEmphasis,wavelet-HLH_glszm_LargeAreaHighGrayLevelEmphasis,wavelet-HLH_glszm_LargeAreaLowGrayLevelEmphasis,wavelet-HLH_glszm_LowGrayLevelZoneEmphasis,wavelet-HLH_glszm_SizeZoneNonUniformity,wavelet-HLH_glszm_SizeZoneNonUniformityNormalized,wavelet-HLH_glszm_SmallAreaEmphasis,wavelet-HLH_glszm_SmallAreaHighGrayLevelEmphasis,wavelet-HLH_glszm_SmallAreaLowGrayLevelEmphasis,wavelet-HLH_glszm_ZoneEntropy,wavelet-HLH_glszm_ZonePercentage,wavelet-HLH_glszm_ZoneVariance,wavelet-HLH_gldm_DependenceEntropy,wavelet-HLH_gldm_DependenceNonUniformity,wavelet-HLH_gldm_DependenceNonUniformityNormalized,wavelet-HLH_gldm_DependenceVariance,wavelet-HLH_gldm_GrayLevelNonUniformity,wavelet-HLH_gldm_GrayLevelVariance,wavelet-HLH_gldm_HighGrayLevelEmphasis,wavelet-HLH_gldm_LargeDependenceEmphasis,wavelet-HLH_gldm_LargeDependenceHighGrayLevelEmphasis,wavelet-HLH_gldm_LargeDependenceLowGrayLevelEmphasis,wavelet-HLH_gldm_LowGrayLevelEmphasis,wavelet-HLH_gldm_SmallDependenceEmphasis,wavelet-HLH_gldm_SmallDependenceHighGrayLevelEmphasis,wavelet-HLH_gldm_SmallDependenceLowGrayLevelEmphasis,wavelet-HLH_ngtdm_Busyness,wavelet-HLH_ngtdm_Coarseness,wavelet-HLH_ngtdm_Complexity,wavelet-HLH_ngtdm_Contrast,wavelet-HLH_ngtdm_Strength,wavelet-HHL_firstorder_10Percentile,wavelet-HHL_firstorder_90Percentile,wavelet-HHL_firstorder_Energy,wavelet-HHL_firstorder_Entropy,wavelet-HHL_firstorder_InterquartileRange,wavelet-HHL_firstorder_Kurtosis,wavelet-HHL_firstorder_Maximum,wavelet-HHL_firstorder_MeanAbsoluteDeviation,wavelet-HHL_firstorder_Mean,wavelet-HHL_firstorder_Median,wavelet-HHL_firstorder_Minimum,wavelet-HHL_firstorder_Range,wavelet-HHL_firstorder_RobustMeanAbsoluteDeviation,wavelet-HHL_firstorder_RootMeanSquared,wavelet-HHL_firstorder_Skewness,wavelet-HHL_firstorder_TotalEnergy,wavelet-HHL_firstorder_Uniformity,wavelet-HHL_firstorder_Variance,wavelet-HHL_glcm_Autocorrelation,wavelet-HHL_glcm_ClusterProminence,wavelet-HHL_glcm_ClusterShade,wavelet-HHL_glcm_ClusterTendency,wavelet-HHL_glcm_Contrast,wavelet-HHL_glcm_Correlation,wavelet-HHL_glcm_DifferenceAverage,wavelet-HHL_glcm_DifferenceEntropy,wavelet-HHL_glcm_DifferenceVariance,wavelet-HHL_glcm_Id,wavelet-HHL_glcm_Idm,wavelet-HHL_glcm_Idmn,wavelet-HHL_glcm_Idn,wavelet-HHL_glcm_Imc1,wavelet-HHL_glcm_Imc2,wavelet-HHL_glcm_InverseVariance,wavelet-HHL_glcm_JointAverage,wavelet-HHL_glcm_JointEnergy,wavelet-HHL_glcm_JointEntropy,wavelet-HHL_glcm_MCC,wavelet-HHL_glcm_MaximumProbability,wavelet-HHL_glcm_SumAverage,wavelet-HHL_glcm_SumEntropy,wavelet-HHL_glcm_SumSquares,wavelet-HHL_glrlm_GrayLevelNonUniformity,wavelet-HHL_glrlm_GrayLevelNonUniformityNormalized,wavelet-HHL_glrlm_GrayLevelVariance,wavelet-HHL_glrlm_HighGrayLevelRunEmphasis,wavelet-HHL_glrlm_LongRunEmphasis,wavelet-HHL_glrlm_LongRunHighGrayLevelEmphasis,wavelet-HHL_glrlm_LongRunLowGrayLevelEmphasis,wavelet-HHL_glrlm_LowGrayLevelRunEmphasis,wavelet-HHL_glrlm_RunEntropy,wavelet-HHL_glrlm_RunLengthNonUniformity,wavelet-HHL_glrlm_RunLengthNonUniformityNormalized,wavelet-HHL_glrlm_RunPercentage,wavelet-HHL_glrlm_RunVariance,wavelet-HHL_glrlm_ShortRunEmphasis,wavelet-HHL_glrlm_ShortRunHighGrayLevelEmphasis,wavelet-HHL_glrlm_ShortRunLowGrayLevelEmphasis,wavelet-HHL_glszm_GrayLevelNonUniformity,wavelet-HHL_glszm_GrayLevelNonUniformityNormalized,wavelet-HHL_glszm_GrayLevelVariance,wavelet-HHL_glszm_HighGrayLevelZoneEmphasis,wavelet-HHL_glszm_LargeAreaEmphasis,wavelet-HHL_glszm_LargeAreaHighGrayLevelEmphasis,wavelet-HHL_glszm_LargeAreaLowGrayLevelEmphasis,wavelet-HHL_glszm_LowGrayLevelZoneEmphasis,wavelet-HHL_glszm_SizeZoneNonUniformity,wavelet-HHL_glszm_SizeZoneNonUniformityNormalized,wavelet-HHL_glszm_SmallAreaEmphasis,wavelet-HHL_glszm_SmallAreaHighGrayLevelEmphasis,wavelet-HHL_glszm_SmallAreaLowGrayLevelEmphasis,wavelet-HHL_glszm_ZoneEntropy,wavelet-HHL_glszm_ZonePercentage,wavelet-HHL_glszm_ZoneVariance,wavelet-HHL_gldm_DependenceEntropy,wavelet-HHL_gldm_DependenceNonUniformity,wavelet-HHL_gldm_DependenceNonUniformityNormalized,wavelet-HHL_gldm_DependenceVariance,wavelet-HHL_gldm_GrayLevelNonUniformity,wavelet-HHL_gldm_GrayLevelVariance,wavelet-HHL_gldm_HighGrayLevelEmphasis,wavelet-HHL_gldm_LargeDependenceEmphasis,wavelet-HHL_gldm_LargeDependenceHighGrayLevelEmphasis,wavelet-HHL_gldm_LargeDependenceLowGrayLevelEmphasis,wavelet-HHL_gldm_LowGrayLevelEmphasis,wavelet-HHL_gldm_SmallDependenceEmphasis,wavelet-HHL_gldm_SmallDependenceHighGrayLevelEmphasis,wavelet-HHL_gldm_SmallDependenceLowGrayLevelEmphasis,wavelet-HHL_ngtdm_Busyness,wavelet-HHL_ngtdm_Coarseness,wavelet-HHL_ngtdm_Complexity,wavelet-HHL_ngtdm_Contrast,wavelet-HHL_ngtdm_Strength,wavelet-HHH_firstorder_10Percentile,wavelet-HHH_firstorder_90Percentile,wavelet-HHH_firstorder_Energy,wavelet-HHH_firstorder_Entropy,wavelet-HHH_firstorder_InterquartileRange,wavelet-HHH_firstorder_Kurtosis,wavelet-HHH_firstorder_Maximum,wavelet-HHH_firstorder_MeanAbsoluteDeviation,wavelet-HHH_firstorder_Mean,wavelet-HHH_firstorder_Median,wavelet-HHH_firstorder_Minimum,wavelet-HHH_firstorder_Range,wavelet-HHH_firstorder_RobustMeanAbsoluteDeviation,wavelet-HHH_firstorder_RootMeanSquared,wavelet-HHH_firstorder_Skewness,wavelet-HHH_firstorder_TotalEnergy,wavelet-HHH_firstorder_Uniformity,wavelet-HHH_firstorder_Variance,wavelet-HHH_glcm_Autocorrelation,wavelet-HHH_glcm_ClusterProminence,wavelet-HHH_glcm_ClusterShade,wavelet-HHH_glcm_ClusterTendency,wavelet-HHH_glcm_Contrast,wavelet-HHH_glcm_Correlation,wavelet-HHH_glcm_DifferenceAverage,wavelet-HHH_glcm_DifferenceEntropy,wavelet-HHH_glcm_DifferenceVariance,wavelet-HHH_glcm_Id,wavelet-HHH_glcm_Idm,wavelet-HHH_glcm_Idmn,wavelet-HHH_glcm_Idn,wavelet-HHH_glcm_Imc1,wavelet-HHH_glcm_Imc2,wavelet-HHH_glcm_InverseVariance,wavelet-HHH_glcm_JointAverage,wavelet-HHH_glcm_JointEnergy,wavelet-HHH_glcm_JointEntropy,wavelet-HHH_glcm_MCC,wavelet-HHH_glcm_MaximumProbability,wavelet-HHH_glcm_SumAverage,wavelet-HHH_glcm_SumEntropy,wavelet-HHH_glcm_SumSquares,wavelet-HHH_glrlm_GrayLevelNonUniformity,wavelet-HHH_glrlm_GrayLevelNonUniformityNormalized,wavelet-HHH_glrlm_GrayLevelVariance,wavelet-HHH_glrlm_HighGrayLevelRunEmphasis,wavelet-HHH_glrlm_LongRunEmphasis,wavelet-HHH_glrlm_LongRunHighGrayLevelEmphasis,wavelet-HHH_glrlm_LongRunLowGrayLevelEmphasis,wavelet-HHH_glrlm_LowGrayLevelRunEmphasis,wavelet-HHH_glrlm_RunEntropy,wavelet-HHH_glrlm_RunLengthNonUniformity,wavelet-HHH_glrlm_RunLengthNonUniformityNormalized,wavelet-HHH_glrlm_RunPercentage,wavelet-HHH_glrlm_RunVariance,wavelet-HHH_glrlm_ShortRunEmphasis,wavelet-HHH_glrlm_ShortRunHighGrayLevelEmphasis,wavelet-HHH_glrlm_ShortRunLowGrayLevelEmphasis,wavelet-HHH_glszm_GrayLevelNonUniformity,wavelet-HHH_glszm_GrayLevelNonUniformityNormalized,wavelet-HHH_glszm_GrayLevelVariance,wavelet-HHH_glszm_HighGrayLevelZoneEmphasis,wavelet-HHH_glszm_LargeAreaEmphasis,wavelet-HHH_glszm_LargeAreaHighGrayLevelEmphasis,wavelet-HHH_glszm_LargeAreaLowGrayLevelEmphasis,wavelet-HHH_glszm_LowGrayLevelZoneEmphasis,wavelet-HHH_glszm_SizeZoneNonUniformity,wavelet-HHH_glszm_SizeZoneNonUniformityNormalized,wavelet-HHH_glszm_SmallAreaEmphasis,wavelet-HHH_glszm_SmallAreaHighGrayLevelEmphasis,wavelet-HHH_glszm_SmallAreaLowGrayLevelEmphasis,wavelet-HHH_glszm_ZoneEntropy,wavelet-HHH_glszm_ZonePercentage,wavelet-HHH_glszm_ZoneVariance,wavelet-HHH_gldm_DependenceEntropy,wavelet-HHH_gldm_DependenceNonUniformity,wavelet-HHH_gldm_DependenceNonUniformityNormalized,wavelet-HHH_gldm_DependenceVariance,wavelet-HHH_gldm_GrayLevelNonUniformity,wavelet-HHH_gldm_GrayLevelVariance,wavelet-HHH_gldm_HighGrayLevelEmphasis,wavelet-HHH_gldm_LargeDependenceEmphasis,wavelet-HHH_gldm_LargeDependenceHighGrayLevelEmphasis,wavelet-HHH_gldm_LargeDependenceLowGrayLevelEmphasis,wavelet-HHH_gldm_LowGrayLevelEmphasis,wavelet-HHH_gldm_SmallDependenceEmphasis,wavelet-HHH_gldm_SmallDependenceHighGrayLevelEmphasis,wavelet-HHH_gldm_SmallDependenceLowGrayLevelEmphasis,wavelet-HHH_ngtdm_Busyness,wavelet-HHH_ngtdm_Coarseness,wavelet-HHH_ngtdm_Complexity,wavelet-HHH_ngtdm_Contrast,wavelet-HHH_ngtdm_Strength,wavelet-LLL_firstorder_10Percentile,wavelet-LLL_firstorder_90Percentile,wavelet-LLL_firstorder_Energy,wavelet-LLL_firstorder_Entropy,wavelet-LLL_firstorder_InterquartileRange,wavelet-LLL_firstorder_Kurtosis,wavelet-LLL_firstorder_Maximum,wavelet-LLL_firstorder_MeanAbsoluteDeviation,wavelet-LLL_firstorder_Mean,wavelet-LLL_firstorder_Median,wavelet-LLL_firstorder_Minimum,wavelet-LLL_firstorder_Range,wavelet-LLL_firstorder_RobustMeanAbsoluteDeviation,wavelet-LLL_firstorder_RootMeanSquared,wavelet-LLL_firstorder_Skewness,wavelet-LLL_firstorder_TotalEnergy,wavelet-LLL_firstorder_Uniformity,wavelet-LLL_firstorder_Variance,wavelet-LLL_glcm_Autocorrelation,wavelet-LLL_glcm_ClusterProminence,wavelet-LLL_glcm_ClusterShade,wavelet-LLL_glcm_ClusterTendency,wavelet-LLL_glcm_Contrast,wavelet-LLL_glcm_Correlation,wavelet-LLL_glcm_DifferenceAverage,wavelet-LLL_glcm_DifferenceEntropy,wavelet-LLL_glcm_DifferenceVariance,wavelet-LLL_glcm_Id,wavelet-LLL_glcm_Idm,wavelet-LLL_glcm_Idmn,wavelet-LLL_glcm_Idn,wavelet-LLL_glcm_Imc1,wavelet-LLL_glcm_Imc2,wavelet-LLL_glcm_InverseVariance,wavelet-LLL_glcm_JointAverage,wavelet-LLL_glcm_JointEnergy,wavelet-LLL_glcm_JointEntropy,wavelet-LLL_glcm_MCC,wavelet-LLL_glcm_MaximumProbability,wavelet-LLL_glcm_SumAverage,wavelet-LLL_glcm_SumEntropy,wavelet-LLL_glcm_SumSquares,wavelet-LLL_glrlm_GrayLevelNonUniformity,wavelet-LLL_glrlm_GrayLevelNonUniformityNormalized,wavelet-LLL_glrlm_GrayLevelVariance,wavelet-LLL_glrlm_HighGrayLevelRunEmphasis,wavelet-LLL_glrlm_LongRunEmphasis,wavelet-LLL_glrlm_LongRunHighGrayLevelEmphasis,wavelet-LLL_glrlm_LongRunLowGrayLevelEmphasis,wavelet-LLL_glrlm_LowGrayLevelRunEmphasis,wavelet-LLL_glrlm_RunEntropy,wavelet-LLL_glrlm_RunLengthNonUniformity,wavelet-LLL_glrlm_RunLengthNonUniformityNormalized,wavelet-LLL_glrlm_RunPercentage,wavelet-LLL_glrlm_RunVariance,wavelet-LLL_glrlm_ShortRunEmphasis,wavelet-LLL_glrlm_ShortRunHighGrayLevelEmphasis,wavelet-LLL_glrlm_ShortRunLowGrayLevelEmphasis,wavelet-LLL_glszm_GrayLevelNonUniformity,wavelet-LLL_glszm_GrayLevelNonUniformityNormalized,wavelet-LLL_glszm_GrayLevelVariance,wavelet-LLL_glszm_HighGrayLevelZoneEmphasis,wavelet-LLL_glszm_LargeAreaEmphasis,wavelet-LLL_glszm_LargeAreaHighGrayLevelEmphasis,wavelet-LLL_glszm_LargeAreaLowGrayLevelEmphasis,wavelet-LLL_glszm_LowGrayLevelZoneEmphasis,wavelet-LLL_glszm_SizeZoneNonUniformity,wavelet-LLL_glszm_SizeZoneNonUniformityNormalized,wavelet-LLL_glszm_SmallAreaEmphasis,wavelet-LLL_glszm_SmallAreaHighGrayLevelEmphasis,wavelet-LLL_glszm_SmallAreaLowGrayLevelEmphasis,wavelet-LLL_glszm_ZoneEntropy,wavelet-LLL_glszm_ZonePercentage,wavelet-LLL_glszm_ZoneVariance,wavelet-LLL_gldm_DependenceEntropy,wavelet-LLL_gldm_DependenceNonUniformity,wavelet-LLL_gldm_DependenceNonUniformityNormalized,wavelet-LLL_gldm_DependenceVariance,wavelet-LLL_gldm_GrayLevelNonUniformity,wavelet-LLL_gldm_GrayLevelVariance,wavelet-LLL_gldm_HighGrayLevelEmphasis,wavelet-LLL_gldm_LargeDependenceEmphasis,wavelet-LLL_gldm_LargeDependenceHighGrayLevelEmphasis,wavelet-LLL_gldm_LargeDependenceLowGrayLevelEmphasis,wavelet-LLL_gldm_LowGrayLevelEmphasis,wavelet-LLL_gldm_SmallDependenceEmphasis,wavelet-LLL_gldm_SmallDependenceHighGrayLevelEmphasis,wavelet-LLL_gldm_SmallDependenceLowGrayLevelEmphasis,wavelet-LLL_ngtdm_Busyness,wavelet-LLL_ngtdm_Coarseness,wavelet-LLL_ngtdm_Complexity,wavelet-LLL_ngtdm_Contrast,wavelet-LLL_ngtdm_Strength,square_firstorder_10Percentile,square_firstorder_90Percentile,square_firstorder_Energy,square_firstorder_Entropy,square_firstorder_InterquartileRange,square_firstorder_Kurtosis,square_firstorder_Maximum,square_firstorder_MeanAbsoluteDeviation,square_firstorder_Mean,square_firstorder_Median,square_firstorder_Minimum,square_firstorder_Range,square_firstorder_RobustMeanAbsoluteDeviation,square_firstorder_RootMeanSquared,square_firstorder_Skewness,square_firstorder_TotalEnergy,square_firstorder_Uniformity,square_firstorder_Variance,square_glcm_Autocorrelation,square_glcm_ClusterProminence,square_glcm_ClusterShade,square_glcm_ClusterTendency,square_glcm_Contrast,square_glcm_Correlation,square_glcm_DifferenceAverage,square_glcm_DifferenceEntropy,square_glcm_DifferenceVariance,square_glcm_Id,square_glcm_Idm,square_glcm_Idmn,square_glcm_Idn,square_glcm_Imc1,square_glcm_Imc2,square_glcm_InverseVariance,square_glcm_JointAverage,square_glcm_JointEnergy,square_glcm_JointEntropy,square_glcm_MCC,square_glcm_MaximumProbability,square_glcm_SumAverage,square_glcm_SumEntropy,square_glcm_SumSquares,square_glrlm_GrayLevelNonUniformity,square_glrlm_GrayLevelNonUniformityNormalized,square_glrlm_GrayLevelVariance,square_glrlm_HighGrayLevelRunEmphasis,square_glrlm_LongRunEmphasis,square_glrlm_LongRunHighGrayLevelEmphasis,square_glrlm_LongRunLowGrayLevelEmphasis,square_glrlm_LowGrayLevelRunEmphasis,square_glrlm_RunEntropy,square_glrlm_RunLengthNonUniformity,square_glrlm_RunLengthNonUniformityNormalized,square_glrlm_RunPercentage,square_glrlm_RunVariance,square_glrlm_ShortRunEmphasis,square_glrlm_ShortRunHighGrayLevelEmphasis,square_glrlm_ShortRunLowGrayLevelEmphasis,square_glszm_GrayLevelNonUniformity,square_glszm_GrayLevelNonUniformityNormalized,square_glszm_GrayLevelVariance,square_glszm_HighGrayLevelZoneEmphasis,square_glszm_LargeAreaEmphasis,square_glszm_LargeAreaHighGrayLevelEmphasis,square_glszm_LargeAreaLowGrayLevelEmphasis,square_glszm_LowGrayLevelZoneEmphasis,square_glszm_SizeZoneNonUniformity,square_glszm_SizeZoneNonUniformityNormalized,square_glszm_SmallAreaEmphasis,square_glszm_SmallAreaHighGrayLevelEmphasis,square_glszm_SmallAreaLowGrayLevelEmphasis,square_glszm_ZoneEntropy,square_glszm_ZonePercentage,square_glszm_ZoneVariance,square_gldm_DependenceEntropy,square_gldm_DependenceNonUniformity,square_gldm_DependenceNonUniformityNormalized,square_gldm_DependenceVariance,square_gldm_GrayLevelNonUniformity,square_gldm_GrayLevelVariance,square_gldm_HighGrayLevelEmphasis,square_gldm_LargeDependenceEmphasis,square_gldm_LargeDependenceHighGrayLevelEmphasis,square_gldm_LargeDependenceLowGrayLevelEmphasis,square_gldm_LowGrayLevelEmphasis,square_gldm_SmallDependenceEmphasis,square_gldm_SmallDependenceHighGrayLevelEmphasis,square_gldm_SmallDependenceLowGrayLevelEmphasis,square_ngtdm_Busyness,square_ngtdm_Coarseness,square_ngtdm_Complexity,square_ngtdm_Contrast,square_ngtdm_Strength,squareroot_firstorder_10Percentile,squareroot_firstorder_90Percentile,squareroot_firstorder_Energy,squareroot_firstorder_Entropy,squareroot_firstorder_InterquartileRange,squareroot_firstorder_Kurtosis,squareroot_firstorder_Maximum,squareroot_firstorder_MeanAbsoluteDeviation,squareroot_firstorder_Mean,squareroot_firstorder_Median,squareroot_firstorder_Minimum,squareroot_firstorder_Range,squareroot_firstorder_RobustMeanAbsoluteDeviation,squareroot_firstorder_RootMeanSquared,squareroot_firstorder_Skewness,squareroot_firstorder_TotalEnergy,squareroot_firstorder_Uniformity,squareroot_firstorder_Variance,squareroot_glcm_Autocorrelation,squareroot_glcm_ClusterProminence,squareroot_glcm_ClusterShade,squareroot_glcm_ClusterTendency,squareroot_glcm_Contrast,squareroot_glcm_Correlation,squareroot_glcm_DifferenceAverage,squareroot_glcm_DifferenceEntropy,squareroot_glcm_DifferenceVariance,squareroot_glcm_Id,squareroot_glcm_Idm,squareroot_glcm_Idmn,squareroot_glcm_Idn,squareroot_glcm_Imc1,squareroot_glcm_Imc2,squareroot_glcm_InverseVariance,squareroot_glcm_JointAverage,squareroot_glcm_JointEnergy,squareroot_glcm_JointEntropy,squareroot_glcm_MCC,squareroot_glcm_MaximumProbability,squareroot_glcm_SumAverage,squareroot_glcm_SumEntropy,squareroot_glcm_SumSquares,squareroot_glrlm_GrayLevelNonUniformity,squareroot_glrlm_GrayLevelNonUniformityNormalized,squareroot_glrlm_GrayLevelVariance,squareroot_glrlm_HighGrayLevelRunEmphasis,squareroot_glrlm_LongRunEmphasis,squareroot_glrlm_LongRunHighGrayLevelEmphasis,squareroot_glrlm_LongRunLowGrayLevelEmphasis,squareroot_glrlm_LowGrayLevelRunEmphasis,squareroot_glrlm_RunEntropy,squareroot_glrlm_RunLengthNonUniformity,squareroot_glrlm_RunLengthNonUniformityNormalized,squareroot_glrlm_RunPercentage,squareroot_glrlm_RunVariance,squareroot_glrlm_ShortRunEmphasis,squareroot_glrlm_ShortRunHighGrayLevelEmphasis,squareroot_glrlm_ShortRunLowGrayLevelEmphasis,squareroot_glszm_GrayLevelNonUniformity,squareroot_glszm_GrayLevelNonUniformityNormalized,squareroot_glszm_GrayLevelVariance,squareroot_glszm_HighGrayLevelZoneEmphasis,squareroot_glszm_LargeAreaEmphasis,squareroot_glszm_LargeAreaHighGrayLevelEmphasis,squareroot_glszm_LargeAreaLowGrayLevelEmphasis,squareroot_glszm_LowGrayLevelZoneEmphasis,squareroot_glszm_SizeZoneNonUniformity,squareroot_glszm_SizeZoneNonUniformityNormalized,squareroot_glszm_SmallAreaEmphasis,squareroot_glszm_SmallAreaHighGrayLevelEmphasis,squareroot_glszm_SmallAreaLowGrayLevelEmphasis,squareroot_glszm_ZoneEntropy,squareroot_glszm_ZonePercentage,squareroot_glszm_ZoneVariance,squareroot_gldm_DependenceEntropy,squareroot_gldm_DependenceNonUniformity,squareroot_gldm_DependenceNonUniformityNormalized,squareroot_gldm_DependenceVariance,squareroot_gldm_GrayLevelNonUniformity,squareroot_gldm_GrayLevelVariance,squareroot_gldm_HighGrayLevelEmphasis,squareroot_gldm_LargeDependenceEmphasis,squareroot_gldm_LargeDependenceHighGrayLevelEmphasis,squareroot_gldm_LargeDependenceLowGrayLevelEmphasis,squareroot_gldm_LowGrayLevelEmphasis,squareroot_gldm_SmallDependenceEmphasis,squareroot_gldm_SmallDependenceHighGrayLevelEmphasis,squareroot_gldm_SmallDependenceLowGrayLevelEmphasis,squareroot_ngtdm_Busyness,squareroot_ngtdm_Coarseness,squareroot_ngtdm_Complexity,squareroot_ngtdm_Contrast,squareroot_ngtdm_Strength,logarithm_firstorder_10Percentile,logarithm_firstorder_90Percentile,logarithm_firstorder_Energy,logarithm_firstorder_Entropy,logarithm_firstorder_InterquartileRange,logarithm_firstorder_Kurtosis,logarithm_firstorder_Maximum,logarithm_firstorder_MeanAbsoluteDeviation,logarithm_firstorder_Mean,logarithm_firstorder_Median,logarithm_firstorder_Minimum,logarithm_firstorder_Range,logarithm_firstorder_RobustMeanAbsoluteDeviation,logarithm_firstorder_RootMeanSquared,logarithm_firstorder_Skewness,logarithm_firstorder_TotalEnergy,logarithm_firstorder_Uniformity,logarithm_firstorder_Variance,logarithm_glcm_Autocorrelation,logarithm_glcm_ClusterProminence,logarithm_glcm_ClusterShade,logarithm_glcm_ClusterTendency,logarithm_glcm_Contrast,logarithm_glcm_Correlation,logarithm_glcm_DifferenceAverage,logarithm_glcm_DifferenceEntropy,logarithm_glcm_DifferenceVariance,logarithm_glcm_Id,logarithm_glcm_Idm,logarithm_glcm_Idmn,logarithm_glcm_Idn,logarithm_glcm_Imc1,logarithm_glcm_Imc2,logarithm_glcm_InverseVariance,logarithm_glcm_JointAverage,logarithm_glcm_JointEnergy,logarithm_glcm_JointEntropy,logarithm_glcm_MCC,logarithm_glcm_MaximumProbability,logarithm_glcm_SumAverage,logarithm_glcm_SumEntropy,logarithm_glcm_SumSquares,logarithm_glrlm_GrayLevelNonUniformity,logarithm_glrlm_GrayLevelNonUniformityNormalized,logarithm_glrlm_GrayLevelVariance,logarithm_glrlm_HighGrayLevelRunEmphasis,logarithm_glrlm_LongRunEmphasis,logarithm_glrlm_LongRunHighGrayLevelEmphasis,logarithm_glrlm_LongRunLowGrayLevelEmphasis,logarithm_glrlm_LowGrayLevelRunEmphasis,logarithm_glrlm_RunEntropy,logarithm_glrlm_RunLengthNonUniformity,logarithm_glrlm_RunLengthNonUniformityNormalized,logarithm_glrlm_RunPercentage,logarithm_glrlm_RunVariance,logarithm_glrlm_ShortRunEmphasis,logarithm_glrlm_ShortRunHighGrayLevelEmphasis,logarithm_glrlm_ShortRunLowGrayLevelEmphasis,logarithm_glszm_GrayLevelNonUniformity,logarithm_glszm_GrayLevelNonUniformityNormalized,logarithm_glszm_GrayLevelVariance,logarithm_glszm_HighGrayLevelZoneEmphasis,logarithm_glszm_LargeAreaEmphasis,logarithm_glszm_LargeAreaHighGrayLevelEmphasis,logarithm_glszm_LargeAreaLowGrayLevelEmphasis,logarithm_glszm_LowGrayLevelZoneEmphasis,logarithm_glszm_SizeZoneNonUniformity,logarithm_glszm_SizeZoneNonUniformityNormalized,logarithm_glszm_SmallAreaEmphasis,logarithm_glszm_SmallAreaHighGrayLevelEmphasis,logarithm_glszm_SmallAreaLowGrayLevelEmphasis,logarithm_glszm_ZoneEntropy,logarithm_glszm_ZonePercentage,logarithm_glszm_ZoneVariance,logarithm_gldm_DependenceEntropy,logarithm_gldm_DependenceNonUniformity,logarithm_gldm_DependenceNonUniformityNormalized,logarithm_gldm_DependenceVariance,logarithm_gldm_GrayLevelNonUniformity,logarithm_gldm_GrayLevelVariance,logarithm_gldm_HighGrayLevelEmphasis,logarithm_gldm_LargeDependenceEmphasis,logarithm_gldm_LargeDependenceHighGrayLevelEmphasis,logarithm_gldm_LargeDependenceLowGrayLevelEmphasis,logarithm_gldm_LowGrayLevelEmphasis,logarithm_gldm_SmallDependenceEmphasis,logarithm_gldm_SmallDependenceHighGrayLevelEmphasis,logarithm_gldm_SmallDependenceLowGrayLevelEmphasis,logarithm_ngtdm_Busyness,logarithm_ngtdm_Coarseness,logarithm_ngtdm_Complexity,logarithm_ngtdm_Contrast,logarithm_ngtdm_Strength,exponential_firstorder_10Percentile,exponential_firstorder_90Percentile,exponential_firstorder_Energy,exponential_firstorder_Entropy,exponential_firstorder_InterquartileRange,exponential_firstorder_Kurtosis,exponential_firstorder_Maximum,exponential_firstorder_MeanAbsoluteDeviation,exponential_firstorder_Mean,exponential_firstorder_Median,exponential_firstorder_Minimum,exponential_firstorder_Range,exponential_firstorder_RobustMeanAbsoluteDeviation,exponential_firstorder_RootMeanSquared,exponential_firstorder_Skewness,exponential_firstorder_TotalEnergy,exponential_firstorder_Uniformity,exponential_firstorder_Variance,exponential_glcm_Autocorrelation,exponential_glcm_ClusterProminence,exponential_glcm_ClusterShade,exponential_glcm_ClusterTendency,exponential_glcm_Contrast,exponential_glcm_Correlation,exponential_glcm_DifferenceAverage,exponential_glcm_DifferenceEntropy,exponential_glcm_DifferenceVariance,exponential_glcm_Id,exponential_glcm_Idm,exponential_glcm_Idmn,exponential_glcm_Idn,exponential_glcm_Imc1,exponential_glcm_Imc2,exponential_glcm_InverseVariance,exponential_glcm_JointAverage,exponential_glcm_JointEnergy,exponential_glcm_JointEntropy,exponential_glcm_MCC,exponential_glcm_MaximumProbability,exponential_glcm_SumAverage,exponential_glcm_SumEntropy,exponential_glcm_SumSquares,exponential_glrlm_GrayLevelNonUniformity,exponential_glrlm_GrayLevelNonUniformityNormalized,exponential_glrlm_GrayLevelVariance,exponential_glrlm_HighGrayLevelRunEmphasis,exponential_glrlm_LongRunEmphasis,exponential_glrlm_LongRunHighGrayLevelEmphasis,exponential_glrlm_LongRunLowGrayLevelEmphasis,exponential_glrlm_LowGrayLevelRunEmphasis,exponential_glrlm_RunEntropy,exponential_glrlm_RunLengthNonUniformity,exponential_glrlm_RunLengthNonUniformityNormalized,exponential_glrlm_RunPercentage,exponential_glrlm_RunVariance,exponential_glrlm_ShortRunEmphasis,exponential_glrlm_ShortRunHighGrayLevelEmphasis,exponential_glrlm_ShortRunLowGrayLevelEmphasis,exponential_glszm_GrayLevelNonUniformity,exponential_glszm_GrayLevelNonUniformityNormalized,exponential_glszm_GrayLevelVariance,exponential_glszm_HighGrayLevelZoneEmphasis,exponential_glszm_LargeAreaEmphasis,exponential_glszm_LargeAreaHighGrayLevelEmphasis,exponential_glszm_LargeAreaLowGrayLevelEmphasis,exponential_glszm_LowGrayLevelZoneEmphasis,exponential_glszm_SizeZoneNonUniformity,exponential_glszm_SizeZoneNonUniformityNormalized,exponential_glszm_SmallAreaEmphasis,exponential_glszm_SmallAreaHighGrayLevelEmphasis,exponential_glszm_SmallAreaLowGrayLevelEmphasis,exponential_glszm_ZoneEntropy,exponential_glszm_ZonePercentage,exponential_glszm_ZoneVariance,exponential_gldm_DependenceEntropy,exponential_gldm_DependenceNonUniformity,exponential_gldm_DependenceNonUniformityNormalized,exponential_gldm_DependenceVariance,exponential_gldm_GrayLevelNonUniformity,exponential_gldm_GrayLevelVariance,exponential_gldm_HighGrayLevelEmphasis,exponential_gldm_LargeDependenceEmphasis,exponential_gldm_LargeDependenceHighGrayLevelEmphasis,exponential_gldm_LargeDependenceLowGrayLevelEmphasis,exponential_gldm_LowGrayLevelEmphasis,exponential_gldm_SmallDependenceEmphasis,exponential_gldm_SmallDependenceHighGrayLevelEmphasis,exponential_gldm_SmallDependenceLowGrayLevelEmphasis,exponential_ngtdm_Busyness,exponential_ngtdm_Coarseness,exponential_ngtdm_Complexity,exponential_ngtdm_Contrast,exponential_ngtdm_Strength,gradient_firstorder_10Percentile,gradient_firstorder_90Percentile,gradient_firstorder_Energy,gradient_firstorder_Entropy,gradient_firstorder_InterquartileRange,gradient_firstorder_Kurtosis,gradient_firstorder_Maximum,gradient_firstorder_MeanAbsoluteDeviation,gradient_firstorder_Mean,gradient_firstorder_Median,gradient_firstorder_Minimum,gradient_firstorder_Range,gradient_firstorder_RobustMeanAbsoluteDeviation,gradient_firstorder_RootMeanSquared,gradient_firstorder_Skewness,gradient_firstorder_TotalEnergy,gradient_firstorder_Uniformity,gradient_firstorder_Variance,gradient_glcm_Autocorrelation,gradient_glcm_ClusterProminence,gradient_glcm_ClusterShade,gradient_glcm_ClusterTendency,gradient_glcm_Contrast,gradient_glcm_Correlation,gradient_glcm_DifferenceAverage,gradient_glcm_DifferenceEntropy,gradient_glcm_DifferenceVariance,gradient_glcm_Id,gradient_glcm_Idm,gradient_glcm_Idmn,gradient_glcm_Idn,gradient_glcm_Imc1,gradient_glcm_Imc2,gradient_glcm_InverseVariance,gradient_glcm_JointAverage,gradient_glcm_JointEnergy,gradient_glcm_JointEntropy,gradient_glcm_MCC,gradient_glcm_MaximumProbability,gradient_glcm_SumAverage,gradient_glcm_SumEntropy,gradient_glcm_SumSquares,gradient_glrlm_GrayLevelNonUniformity,gradient_glrlm_GrayLevelNonUniformityNormalized,gradient_glrlm_GrayLevelVariance,gradient_glrlm_HighGrayLevelRunEmphasis,gradient_glrlm_LongRunEmphasis,gradient_glrlm_LongRunHighGrayLevelEmphasis,gradient_glrlm_LongRunLowGrayLevelEmphasis,gradient_glrlm_LowGrayLevelRunEmphasis,gradient_glrlm_RunEntropy,gradient_glrlm_RunLengthNonUniformity,gradient_glrlm_RunLengthNonUniformityNormalized,gradient_glrlm_RunPercentage,gradient_glrlm_RunVariance,gradient_glrlm_ShortRunEmphasis,gradient_glrlm_ShortRunHighGrayLevelEmphasis,gradient_glrlm_ShortRunLowGrayLevelEmphasis,gradient_glszm_GrayLevelNonUniformity,gradient_glszm_GrayLevelNonUniformityNormalized,gradient_glszm_GrayLevelVariance,gradient_glszm_HighGrayLevelZoneEmphasis,gradient_glszm_LargeAreaEmphasis,gradient_glszm_LargeAreaHighGrayLevelEmphasis,gradient_glszm_LargeAreaLowGrayLevelEmphasis,gradient_glszm_LowGrayLevelZoneEmphasis,gradient_glszm_SizeZoneNonUniformity,gradient_glszm_SizeZoneNonUniformityNormalized,gradient_glszm_SmallAreaEmphasis,gradient_glszm_SmallAreaHighGrayLevelEmphasis,gradient_glszm_SmallAreaLowGrayLevelEmphasis,gradient_glszm_ZoneEntropy,gradient_glszm_ZonePercentage,gradient_glszm_ZoneVariance,gradient_gldm_DependenceEntropy,gradient_gldm_DependenceNonUniformity,gradient_gldm_DependenceNonUniformityNormalized,gradient_gldm_DependenceVariance,gradient_gldm_GrayLevelNonUniformity,gradient_gldm_GrayLevelVariance,gradient_gldm_HighGrayLevelEmphasis,gradient_gldm_LargeDependenceEmphasis,gradient_gldm_LargeDependenceHighGrayLevelEmphasis,gradient_gldm_LargeDependenceLowGrayLevelEmphasis,gradient_gldm_LowGrayLevelEmphasis,gradient_gldm_SmallDependenceEmphasis,gradient_gldm_SmallDependenceHighGrayLevelEmphasis,gradient_gldm_SmallDependenceLowGrayLevelEmphasis,gradient_ngtdm_Busyness,gradient_ngtdm_Coarseness,gradient_ngtdm_Complexity,gradient_ngtdm_Contrast,gradient_ngtdm_Strength +113_HM10395,p4,1.3.6.1.4.1.14519.5.2.1.6834.5010.339023390306606021995936229543,"P4^P113^S303^I10349, Gated, 40.0%B",CT,99,2.25.186899387610254289948150314209581209847.35,RTSTRUCT,1.3.6.1.4.1.14519.5.2.1.6834.5010.339023390306606021995936229543,Tumor_c40,1,,v3.1.4,1.26.4,2.4.0,1.8.0,3.12.8,"{'minimumROIDimensions': 2, 'minimumROISize': None, 'normalize': False, 'normalizeScale': 1, 'removeOutliers': None, 'resampledPixelSpacing': [1.0, 1.0, 1.0], 'interpolator': 'sitkBSpline', 'preCrop': False, 'padDistance': 5, 'distances': [1], 'force2D': False, 'force2Ddimension': 0, 'resegmentRange': None, 'label': 1, 'additionalInfo': True, 'binWidth': 25}","{'Original': {}, 'Wavelet': {}, 'Square': {}, 'SquareRoot': {}, 'Logarithm': {}, 'Exponential': {}, 'Gradient': {}}",3a75b972baf9f9ce76fab0a87d320a69b2309234,3D,"(0.9766, 0.9766, 3.0)","(51, 92, 28)",-291.6146175861649,-1000.0,985.0,833db3db041c18cfaa07b7c7a93190356b5c6778,"(0.9766, 0.9766, 3.0)","(51, 92, 28)","(0, 0, 0, 51, 92, 28)",23611,1,"(22.300961416289017, 43.44466562195587, 14.644487738765829)","(58.89951891914787, 142.1144604464021, -944.0665367837025)","(1.0, 1.0, 1.0)","(50, 90, 84)",-292.2441031746032,-1073.0,1065.0,"(1.0, 1.0, 1.0)","(50, 90, 84)","(0, 0, 0, 50, 90, 84)",66504,1,"(21.75798448213641, 42.57127390833634, 44.74237639841213)","(58.89008448213643, 142.26937390833632, -944.2576236015879)",-23.043019968723687,-843.0,346.0,0.7986913522495777,0.41971778598136783,32.89111421471219,78.36483302180646,69.35416353759881,96.67471230885562,83.02409288875127,100.70253224224304,66346.66666666667,62.58931445499896,0.4738658046518448,16725.335054196203,0.2520900580917836,66504.0,-158.0,53.0,918255309.0,3.323349579407955,62.0,11.533201334550002,346.0,74.2215248493947,-23.043019968723687,15.0,-843.0,1189.0,32.48661926583811,117.50540406194251,-2.7306320124467955,918255309.0,0.16228558301164983,13276.539214481374,1163.1853576157607,57152.82519210049,-1561.4201342365932,65.897375899891,7.269303715591321,0.7990603796043161,1.5818940675197655,2.369985837076647,4.687687158085337,0.5748946239714018,0.5341861526470038,0.9969529448619591,0.9697702633203072,-0.1894945181178462,0.8218650710379204,0.42575752763610836,33.88983117581226,0.0497804628200677,5.797042037276695,0.8313584094788133,0.1269834353527784,67.7796623516245,4.061966319302024,18.291669903870588,6093.8847305679565,0.12687897610070278,26.66994237899032,1113.0890731466106,2.8502924147984525,3426.837653849391,0.0027199049202998255,0.0011974589910010295,4.707498016004693,28955.58999629492,0.6011287003380148,0.7187942425672488,0.8602662968747112,0.8024588538109619,869.4896585186059,0.0010280073312763454,308.44654088050316,0.04408898526022058,49.54476044630256,763.6626643796455,89810.4311034877,113578243.05831903,71.11487760279563,0.002429993162576102,2362.0383076043454,0.33762697364270233,0.5999167539741803,425.8085531683731,0.0016521154302165868,6.9523358642667725,0.10519667989895344,89720.06700226644,6.9698830796343705,3875.6921388187175,0.0582775793759581,26.81879576042845,10792.640412606761,21.330437548744886,1150.328431372549,95.89732948394082,120592.51987850355,0.07757982570317314,0.001094076325208488,0.10114182145210007,83.28419760545111,0.00022612598452353505,2.3043544403253517,0.00015625867216135437,1113.1794747457725,0.018031942249827432,0.4481900429281053,-40.78768892791091,12.352070283708619,104295620.09266213,2.043518041589367,17.384373454456284,128.5485376519331,735.4923424588355,18.40175472050726,-7.094249311848214,-2.1879771183300285,-672.70621498345,1408.1985574422856,8.741876071107823,39.601273437645496,0.9930339473154817,104295620.09266213,0.32255590595220507,1517.932484584508,740.7554709642268,4071.4566056759472,-8.797118595521352,5.855237793427216,3.108404792281685,0.27480480588935374,0.6264527210524489,1.383600808304623,2.6968220995947334,0.7519461959980636,0.7417801442688969,0.9992849788889935,0.9896695910982076,-0.21918727066792318,0.7436013850820327,0.4053522980823769,27.204203749413974,0.15156184445604332,3.5393976256021458,0.8236971992582035,0.2549966078181254,54.40840749882793,2.7409694947120826,2.240910646427225,8938.200260168407,0.26375373813242625,4.285959714968554,740.6341912251161,6.605122513712289,4924.747920726258,0.009263705033965815,0.0016369404394407352,4.232412881800972,12660.095540188939,0.3645471338140738,0.5093158074933608,2.4794334009361023,0.6132689098096038,452.99069812528586,0.0010933941399992953,87.65183752417795,0.0847696687854719,53.21895869265103,810.0009671179884,1303834.5087040619,978454736.0241779,1740.0726629852716,0.005110704935390999,187.41392649903287,0.18125137959287513,0.4244694985718572,366.04254879771923,0.0025686844880991847,7.169599562392703,0.015547936966197521,1299697.8045972711,6.289814599098732,3088.4187116564417,0.04643959328245582,34.01519405291893,21451.257969445447,2.566178129046639,743.126353302057,223.2919523637676,167115.2102580296,0.3008553236331289,0.0015060329388921737,0.020363671923519934,15.985788842824117,6.808442755400746e-05,2.619931228270794,0.0001329301120708055,750.0382791057244,0.0008071923153566478,0.9727627337614864,-56.28342326476618,48.3262360404268,194650628.1263639,2.9530363671441187,48.95059821868972,13.654508013283648,521.6506157816609,35.67186678931692,-2.6934528840807004,-2.6249087564990563,-578.8454558294251,1100.4960716110859,20.807778762025826,54.10084158756717,0.43119827591942633,194650628.1263639,0.17521694381421665,2919.646372044275,596.5494908645328,2296.2050672350183,26.39122579740147,11.92856045539677,6.340110209405536,0.30266334856282257,1.650211313354613,2.351480071436497,3.373541372122822,0.530450409587491,0.4773246769974028,0.9969870850903857,0.9660590977784508,-0.0951116281549449,0.5440810575027168,0.4224273872680065,24.395744939013113,0.041206607739232244,5.572699466589086,0.7688073085517632,0.08843945720233083,48.791489878026226,3.529169025007495,4.567167666200576,8100.121826188348,0.15704399558457524,5.601782705082903,600.7938524775437,2.3089562907321057,1381.8008148757335,0.004006878732901537,0.001779308507142412,4.032990947438012,34326.00119359374,0.654807206775762,0.7744508138319037,0.5496331792301399,0.831897523194326,500.5152938735906,0.0014914010691089578,408.0005735041101,0.0779966686109941,20.189399905954534,630.4144523035749,116112.79487669661,69040257.9443701,195.9295606513824,0.002122240965925884,1232.2819728541388,0.23557292541658167,0.48936823603456026,315.9021878246459,0.001097142508608918,6.84348281484619,0.07865692289185613,115951.16334261716,6.45231963012638,5192.875436063996,0.07808365566077223,14.783907446366896,11652.627631420666,4.753730265461946,599.7772615181042,61.90223144472513,36925.207731865754,0.10485837129175266,0.0017620974020155892,0.0832382671761528,51.81647184792083,0.00016842092518250094,4.730976276607744,0.00011075683765323118,1175.669904465022,0.005802351120797542,0.19639183477662261,-6.662364243848669,6.9515859971864655,2741667.5211386667,1.0552779122544145,6.35466066930114,12.031835788124736,86.51046498424131,4.456535015873026,0.06696561911709643,0.031553541361968265,-95.50779208082703,182.01825706506833,2.703851863601278,6.420716727056678,-0.08037724833820499,2741667.5211386667,0.4940233929901193,41.22111889496168,20.299940252264317,0.7168786524638683,-0.006151838865261119,0.5673573792967816,0.4779700934274359,0.08519942019170545,0.46713803944019777,0.9928608791321698,0.2470694315053684,0.7679823386994484,0.7674732507406525,0.9926711105067665,0.9482090009785608,-0.045961669910471355,0.21949172808191608,0.4597742591165135,4.5030648714741925,0.2593757807064318,2.0460379757797114,0.27941619679799906,0.2899239429539148,9.006129742948383,1.551435388345328,0.2613318681810544,16499.76763472257,0.48874199390789275,0.2767253521083934,20.521005645297635,6.816668653607232,140.1554159693315,0.34889352779837546,0.05162623694524874,3.051571407408471,12155.725875933547,0.3416375825415268,0.5072499976866631,2.0519227192220177,0.5571055179716974,11.427039128333645,0.028940332912879056,59.42767295597484,0.3737589494086468,2.6263992721806892,23.937106918238992,13734770.779874213,282312828.0440252,702032.3493859101,0.084727579186811,44.320754716981135,0.27874688501246,0.5362031733676872,14.26347763832353,0.041568623048648175,3.992317873507937,0.0023908336340671237,13559825.879909813,4.987996297399658,5046.056477805846,0.07587598456943712,14.605000672951997,32854.53172741489,0.264037810313824,20.536915072777578,205.3625345843859,4225.768780825213,10.48719549376073,0.05138091673700837,0.00909864722783638,0.19468196090799617,0.0005193785538299025,272.7545909726342,6.682130098419884e-05,14.235923641075956,0.0043509825784530465,0.0028751678949236912,-57.97808132131747,35.453243096005075,182163535.80260193,2.8173677618101665,40.60812393797857,12.744674355228552,629.184359726453,32.7858538294872,-7.34400749559726,-5.155732630096323,-398.9743262211971,1028.1586859476502,17.598304111682225,52.33676079174799,0.42103431895975457,182163535.80260193,0.2036183444587833,2685.2020840772616,264.55710261685414,1775.878078335087,12.707779284145923,11.661073146145359,4.660427281357953,0.42439904173291987,1.3484537432172863,2.151206854207518,2.7083344785871124,0.5819016038484254,0.5412104685428443,0.9974521432013675,0.9702002682535161,-0.11454718256784702,0.6092545059691865,0.4471770619499057,16.211318829828947,0.05934581561039671,5.205912575873573,0.6233856874910795,0.12594850410283215,32.42263765965789,3.4555396824705564,4.0803751068758265,8350.574666512608,0.17297693521125657,5.4852964706288185,267.34777627461307,2.820097736112417,752.9209599732283,0.011165019324454155,0.004172001712534177,4.133046074004534,29064.573534930234,0.5931999409664978,0.723299466081855,0.7905506970709826,0.7942356872827154,212.69455250517382,0.0033672602283743355,324.2616266255235,0.07147049297454783,21.186342899313555,295.1227683491294,168506.1282785982,45069137.83072515,633.4693478645279,0.0052293757332591145,1149.334582323121,0.2533247922246244,0.5125531027755548,157.75906072248912,0.0028376285300734496,6.895758357965711,0.06822146036328641,168291.26708873129,6.5192741801598375,4188.233008540839,0.06297715939704138,20.57815369754818,13541.434379886925,4.383140141627997,267.0098640683267,87.72329483940815,23433.378323108383,0.3342934414646447,0.00408558143037703,0.07146127741185067,20.53174327255382,0.0003539937476815866,7.16502629109687,0.00012075231039215825,809.3106307910915,0.0051128267716892325,0.2188670846661566,-5.800674353278586,6.607045045207655,2431645.1514909365,1.0480111149608033,5.433210676184256,14.456432230235578,75.38198873894169,4.0476793399955575,0.22798326610892597,0.057056049948860085,-80.9046262313387,156.28661497028037,2.3538758638235056,6.046808511248145,0.05360347402346265,2431645.1514909365,0.49510779687497036,36.511916802077316,20.348210515806723,0.7876223751200402,-0.009102802652176918,0.5957222967096132,0.4447617994051296,0.144865416187545,0.4363875713772721,0.9875319892858244,0.24617044199141505,0.7829567946463933,0.7826108569358148,0.9931777256410297,0.9515988687469442,-0.04310329472909057,0.2139289059542355,0.4311464386093307,4.506713864676544,0.25936764536160317,2.034727101328722,0.2682026700214713,0.29033476748960385,9.01342772935309,1.5797923388225308,0.2601210240286857,15643.814460860627,0.49024178870402635,0.2753353568791306,20.5267302002199,7.545534188352925,155.65191984651128,0.38478277302761626,0.05157674439415283,3.1519092122446564,10620.534533863964,0.31850100573209716,0.47956051226531193,2.432748439147485,0.5354988576278011,10.967594933932181,0.027845313292402918,42.12328767123287,0.2885156689810471,2.7568024019515858,22.945205479452056,14984027.397260275,308709709.7808219,764088.8488769395,0.09288623497344145,40.6986301369863,0.2787577406642897,0.5174068813925145,11.320721063677174,0.05927530402855655,4.28252556011941,0.002195356670275472,14776540.907487333,5.101601740898333,4661.782358955852,0.07009777395278258,17.114163332077723,32926.64892337303,0.26262614883527635,20.56571033321304,228.27652472031758,4710.877962227836,11.622737842090654,0.05127855592219847,0.00833851037144199,0.17320230449427979,0.0005109860767271539,254.74117848176414,7.13978175174493e-05,13.272363571863524,0.004034017787579726,0.0030837248331078704,-19.783110355974003,20.06196269150149,19266824.73284991,1.597694531465428,19.823604482564065,5.590834952377925,117.40458376857575,12.74722717723742,0.0823706193088814,0.08067317597449725,-135.7494104282188,253.15399419679454,8.338689605320324,17.020847851709114,-0.0935832356980328,19266824.73284991,0.392290835886405,289.7024766721054,42.30996227501741,7.3955239085598246,-0.12492945092163853,1.1624898278041167,1.0208200886290384,0.06425912057225977,0.7028151152208661,1.4260252408311105,0.5074459366834183,0.6931829210969561,0.679093510769712,0.9918657260967981,0.9433611293580472,-0.0441311186544126,0.2514076652665808,0.49496967290671623,6.50188776077256,0.16789552711036276,3.1000067064051526,0.2855201046937702,0.2159969097135617,13.003775521545116,2.0906524953352483,0.5458274791082889,14300.073218260139,0.3515160760066219,0.7015616340496637,42.94046165030113,4.781850911901214,204.36978719425161,0.1166796176265806,0.025152630383713608,3.284573808585066,18954.497587563725,0.45334124528423697,0.6107255549695101,1.5288093609798195,0.6811696057106107,29.33385450375164,0.01738727361043762,603.6,0.34890173410404623,3.072418056066023,44.61156069364162,984609.2843930636,41906269.666473985,23688.56693573672,0.03187525091301084,293.36878612716765,0.16957733302148417,0.3644752009150706,16.29851474730193,0.011845944922782957,5.041419868746839,0.026013472873812102,983131.5263603864,5.266299971707534,4703.887224828582,0.07073089174829457,17.582703774836006,26088.909749789487,0.5560536834289237,42.82892758330326,141.26236015878743,6021.4123812101525,3.408060868677558,0.024786972509634433,0.028791413414009984,1.2658335034179629,0.0008409226861629576,116.4440609919007,7.711560320483055e-05,34.73185358286678,0.006106297997683957,0.0059195527668089165,-2.727651915076569,2.697579987917129,363634.8253155718,0.9999996548843075,2.6856044900819347,6.542380104201547,24.880114340014675,1.7362820471228624,-0.0053501922139177,0.0026564409709276156,-22.85118250625188,47.73129684626656,1.1260471820156097,2.3383464174101847,0.018258602737045892,363634.8253155718,0.5000002392159497,5.467835343258319,2.2542688598204985,0.5068058576747397,-0.0002721479912293084,0.5068058775254034,0.49319371069947154,0.013612160209040972,0.49319371069947154,0.9881293211361982,0.24600939500231728,0.753403144650264,0.753403144650264,0.9013612578601057,0.8356020964335096,-0.011870689635677212,0.06705563288435513,0.49319371069947154,1.5002885717234113,0.2539908108852452,1.9881287166016028,0.057547488652683894,0.2644962823058651,3.0005771434468227,1.4949350059021318,0.2499998970562187,17810.19952058708,0.5000002690981288,0.2499998654509356,2.500538092612875,5.243444928819185,13.116299464400205,3.2752312949239317,0.6248654768467813,2.8192406256221934,13512.148119282514,0.3736240671922607,0.5356126641312495,1.4965006221242148,0.5969547875586626,1.4924301688124513,0.3730859422452155,2.6,0.52,0.24,2.2,442225231.6,1106520677.8,276151370.05,0.7,1.4,0.28,0.4500000003618074,1.050000000903735,0.30000000022632545,2.321928094887361,7.51834476121737e-05,265313950.95999998,4.537004720796886,6887.979760615903,0.1035724130971957,8.325982310406502,33252.01590881751,0.2499998803920252,2.501037531577048,179.2573078311079,448.49345904005776,111.94827002887044,0.624740617105738,0.007473779354068956,0.018717656829459216,0.00466280998522139,16339.16661679276,6.107589555950051e-05,0.4923935829245731,0.12309831543010134,6.107590618062138e-05,-461.25596089240423,135.4818808261219,7105356139.690095,4.637182820872559,171.87846952897587,11.04241295085689,888.3704631214168,210.17204320540154,-66.3213551214407,51.281661423341205,-2300.6125111298766,3188.9829742512934,93.38093319840343,326.86546807340386,-2.6850845900330746,7105356139.690095,0.06996464417205407,102442.51207370116,8522.610794072169,3288226.911030612,-33100.24029686041,510.45850405492115,47.306942330671866,0.8280889633919517,3.7981722462562746,3.364668087438716,32.382519626539555,0.4261705944678307,0.3615971833705917,0.9972508093402939,0.973011093167454,-0.18754398283270474,0.8908196653701956,0.3407430406229536,91.68836597243492,0.011766424274618577,8.153227361568883,0.8482182318134756,0.03719240149539756,183.3767319448698,5.424542317236619,139.44136159639794,3423.8691393187646,0.060960963347920866,184.6159711842211,8265.288790603048,1.7058135589872352,14791.421083907997,0.0002535938646208515,0.00017542507631306353,5.494393625187783,42106.923855025605,0.7490108508088322,0.8432459817338921,0.28962389787901394,0.8881741988635353,7237.408699809093,0.0001628325875685799,303.89834391569025,0.01989254067655235,324.02615798261616,6373.204097663153,12434.643843686588,116703336.4228579,1.3257738074306928,0.00032407612918371827,7489.889572560058,0.49027227679256774,0.7278881432808801,4330.461921894344,0.0002749372570427087,7.559491513000524,0.22971550583423553,12415.69340021043,7.674980327358473,6552.676440514856,0.09853056117699471,12.091571344582405,4652.928696018284,164.04378739248267,8416.961957175508,37.85333213039817,351626.0011427884,0.00416954562863214,0.00016529550360749767,0.21915739931255346,1430.0788428592507,7.052096303223794e-05,0.2652394259322411,0.0002027772151138754,14793.223561711839,0.047676611843895156,3.8547216679964422,0.0456663560111836,23.561043802423118,142126684.13998175,0.7769118670707766,2.942218080149115,47.17600500236458,662.3010251630942,19.661708122436238,12.868145371631293,1.14165890027959,0.0,662.3010251630942,2.1879171374634807,46.22893922929722,5.954010120828487,142126684.13998175,0.815601045891564,1971.5256569606195,3.372056738711637,3979.851052283622,154.76639796984307,7.968336825602901,1.4586991196533405,0.6869139787643099,0.2869981819442175,0.7381453231643567,1.37359432915528,0.9333086211684857,0.9253898744695422,0.9981807915947505,0.9909451318570686,-0.28104178335469593,0.5536411927232145,0.048297590130953694,1.3206736924709286,0.7921810019656775,1.1496609333732042,0.7206634437341699,0.8896988275557879,2.6413473849418576,0.9174175441311293,2.356758986314061,3367.776151602139,0.2800315076235382,11.921076595103113,21.77363286302598,100.78084821214406,124.70534868889999,100.17407808615872,0.5419933786925355,5.136395634961101,3368.3016259202245,0.28841929070234656,0.17692631559466637,66.80673036885449,0.5518158243686053,20.659308935182022,0.12041848782486217,177.13136601618277,0.08430812280636972,19.806870144789514,70.0271299381247,1713885.8039029033,1714822.3888624464,1713742.0444706513,0.05753261430669158,755.6634935744884,0.3596684881363581,0.6209555938720609,50.31546769453462,0.029612795294470706,5.940208303109792,0.031592084686635394,1712883.8599461147,3.0879982106967505,23455.69490556959,0.3526960018280042,56.86812581992736,54240.73195597257,2.8332863888989817,4.770675448093348,558.6243534223505,580.833408516781,557.5009393479172,0.9132346443152735,0.029324567241162565,1.8791228686668584,0.0035683980547424735,67.4867574468563,0.0002641444191946821,90.48930782869904,0.0017838855018527154,0.7933529428814686,-411.7450667585466,238.47222060441337,4645958021.0,4.83075908300708,363.03449140556864,3.317310323495062,609.3094451918499,221.23753446110362,3.5139253756683613,126.86607111438424,-951.0725524375099,1560.3819976293598,158.96273735632334,264.3100987401774,-1.126321360650408,4645958021.0,0.051541551262380816,69847.4806244966,1707.846618949099,523859.26500469714,-9118.742710226392,363.76493898358325,42.762172468353384,0.7882637181427005,4.533829725417451,3.690702885594677,21.55122677490221,0.34236335275759233,0.26271677903504237,0.9900533807986398,0.9378684161056109,-0.13690957199121015,0.8334602345218722,0.2604567238632084,40.34292286597185,0.005691967439257559,8.83762584575758,0.8208972907602128,0.020403967616308725,80.68584573194367,5.720091023101759,101.63177786298411,2829.573973956757,0.04734776239764879,114.52299463371926,1648.5291526259725,1.4014873222004256,2455.38980144056,0.0015251129088306435,0.0012181482817925195,5.397380026913738,49394.34529409604,0.8258622705029363,0.8979147581637659,0.15600391355015153,0.9262903029766526,1503.6591503755592,0.0011569784462110504,576.2114110550776,0.028488648821075727,116.87381287437323,1282.1547018688816,4153.477603085138,9260515.979531296,1.8729990078778125,0.001685942745948183,8157.14090774251,0.40329975812036534,0.6592778496526892,821.0263195610464,0.0011201684437626182,7.260969822172059,0.30413208228076505,4142.666362568124,7.512019249617046,9776.31832671719,0.1470034633513351,5.9917652735612466,3427.719325153374,111.7636069930153,1683.6075724768434,19.345061951160833,39850.4477625406,0.01351449680750479,0.001174544749031896,0.2727805304459975,365.5221532069831,0.00043180627762595154,2.1880369964961686,0.0001273840732066146,5196.850487912348,0.16752197770600627,0.33508359094628193,-779.3123648552629,613.2813852225288,21704144793.959618,5.360776277325471,1060.168149976003,1.710354394045484,899.2971548111383,516.8419450881097,98.34701030050404,426.2682007194575,-1035.9488650463977,1935.2460198575359,438.9891116209917,571.2779416507688,-0.6451756193278911,21704144793.959618,0.033410608405621225,316686.35218169173,2637.960953146693,5943733.409867232,-54841.004067926966,1653.5949280173368,258.60699572612333,0.7285878946311451,9.809244236124568,4.552459844759858,159.30542346468582,0.27353457432816575,0.1977423533123973,0.9651408962946472,0.9037712006450985,-0.12387967018744603,0.8359450988256326,0.1983350082309883,47.84387089763747,0.002480455856786504,9.955598986163514,0.820624244779438,0.011483918086624285,95.68774179527495,6.507260844014493,478.0504809358653,1954.6369595332196,0.03171291677489569,504.70537258373946,2617.407730617304,1.269020475171745,3501.0803404032176,0.005186458469234327,0.0038483112238893186,5.7805925406881835,53665.95635154148,0.8702758538001432,0.9264578648826212,0.10164010928989867,0.9467161935524698,2445.324013266989,0.003586418151875453,588.2401502319758,0.021659921578613146,427.9813166335991,2107.7224758818766,551.162309448413,2332748.1656602104,0.2547959646896143,0.002941105553621795,12728.814566610206,0.46869484375175663,0.7120320418689743,1438.6755824886802,0.001740669614023757,7.346194504981018,0.4083664140502827,545.1657800522103,7.701290531882027,12681.72636232407,0.1906911819187428,3.6854341147795786,2221.939101407434,507.1889527424089,2664.713505954529,12.165734391916276,41112.56479309515,0.06053951742577071,0.003930832234687862,0.3645143401594836,784.9941242989851,0.0010097744266188789,3.1829382652313805,7.633029913415448e-05,16444.28177374183,1.7300844873225476,0.32057098050258626,0.35788382686872006,1.4115430072475807,79029.93959682202,-3.203426503814917e-16,0.4221052779687098,9.845365670970114,9.489610180448576,0.3022890884895745,1.0148035674264804,1.1024686761203166,0.004159261712490565,9.485450918736085,0.19469275619724363,1.0901140604056918,-0.355975862164308,79029.93959682202,1.0,0.15852238423267243,1.0,0.0,0.0,0.0,0.0,1.0,0.0,-3.2034265038149176e-16,0.0,1.0,1.0,1.0,1.0,0.0,0.0,0.0,1.0,1.0,-3.2034265038149176e-16,1,1.0,2.0,-3.2034265038149176e-16,0.0,5596.076923076923,1.0,0.0,1.0,300.0164860849342,300.0164860849342,300.0164860849342,1.0,4.612808815324149,329.06825716882224,0.05674399063636899,0.08414647123596962,103.76845899315346,0.11979341230584822,0.11979341230584822,0.11979341230584822,1.0,1.0,0.0,1.0,4422782016.0,4422782016.0,4422782016.0,1.0,1.0,1.0,2.261020317940987e-10,2.261020317940987e-10,2.261020317940987e-10,-3.203426503814917e-16,1.503668952243474e-05,0.0,1.8722097876530313,34738.56799591002,0.522353061408487,16.864914515379994,66504.0,0.0,1.0,632.5097738481896,632.5097738481896,632.5097738481896,1.0,0.001893425414500431,0.001893425414500431,0.001893425414500431,0.0,1000000.0,0.0,0.0,0.0,11.715374946594238,152.51360778808603,448995550.9018776,2.4819442551491653,46.172006607055664,6.45127597707683,522.33251953125,44.88515550717034,55.42782113580021,29.351320266723633,0.5,521.83251953125,25.41234490109658,82.16694405821649,1.9291497253422458,448995550.9018776,0.26602172970398547,3679.163340003818,10.718859794468848,2458.733428552375,165.6301108001094,19.157527992449317,2.465406884874068,0.7705881722225261,0.9052803861947459,1.8464708473342253,1.6278276203659818,0.6928265304325478,0.6685423882120146,0.9946957702651075,0.9615776231077594,-0.2228359018008813,0.7999729936445673,0.38170396390026684,2.5580628158547962,0.13515053987116177,4.2325157933924915,0.8062566062477333,0.2945812306160475,5.1161256317095924,3.169505520579804,5.405733719330846,6824.056369798919,0.1793059133799832,7.549088812594292,19.599692216253143,6.299056372809409,36.520873322891035,4.6724398875572195,0.3478703412330473,4.38467845938194,18881.820696204984,0.49524425384222304,0.5706597174027705,3.17283900473366,0.7310603160676552,17.45962685655683,0.19534077541669378,254.8652585579024,0.09281327696937451,9.4252106884993,54.099781500364166,407254.99417334306,857328.7246904589,305886.8090081211,0.06883331650118767,671.9796067006555,0.24471216558654607,0.5052762092629753,27.295128743054835,0.040156267737665,6.464028658452641,0.0412907494286058,406668.45844873216,6.457775639116485,2723.3224467701193,0.04094975410155959,53.90151514534874,17691.50911223385,6.004047392780209,13.327799831589077,201.83637074461686,594.2167689161554,160.95803888703907,0.5007001310599757,0.048081985614931426,2.016697576365152,0.00639693810427145,142.3080869479446,0.00012436982891091857,155.2982796061203,0.02201623070862774,0.08753850136656253 From c29d7914f2456b7a4b5cdb1a4554cc7300c23180 Mon Sep 17 00:00:00 2001 From: Katy Scott Date: Thu, 12 Dec 2024 18:15:45 -0500 Subject: [PATCH 06/17] test: add ct to seg match file for 4D Lung so tests work --- tests/output/ct_to_seg_match_list_4D-Lung.csv | 2 ++ 1 file changed, 2 insertions(+) create mode 100644 tests/output/ct_to_seg_match_list_4D-Lung.csv diff --git a/tests/output/ct_to_seg_match_list_4D-Lung.csv b/tests/output/ct_to_seg_match_list_4D-Lung.csv new file mode 100644 index 0000000..4260bb3 --- /dev/null +++ b/tests/output/ct_to_seg_match_list_4D-Lung.csv @@ -0,0 +1,2 @@ +patient_ID,study_CT,study_description_CT,series_CT,series_description_CT,subseries_CT,modality_CT,instances_CT,instance_uid_CT,reference_ct_CT,reference_rs_CT,reference_pl_CT,reference_frame_CT,folder_CT,orientation_CT,orientation_type_CT,MR_repetition_time_CT,MR_echo_time_CT,MR_scan_sequence_CT,MR_magnetic_field_strength_CT,MR_imaged_nucleus_CT,file_path_CT,series_seg,subseries_seg,modality_seg,instances_seg,instance_uid_seg,reference_ct_seg,reference_rs_seg,reference_pl_seg,reference_frame_seg,folder_seg,orientation_seg,orientation_type_seg,MR_repetition_time_seg,MR_echo_time_seg,MR_scan_sequence_seg,MR_magnetic_field_strength_seg,MR_imaged_nucleus_seg,file_path_seg,edge_type +113_HM10395,1.3.6.1.4.1.14519.5.2.1.6834.5010.324605948863389564556891313296,p4,1.3.6.1.4.1.14519.5.2.1.6834.5010.339023390306606021995936229543,"P4^P113^S303^I10349, Gated, 40.0%B",default,CT,99,1.3.6.1.4.1.14519.5.2.1.6834.5010.249506064276270740866733345688,,,,1.3.6.1.4.1.14519.5.2.1.6834.5010.107174034240688216982546597713,4D-Lung/113_HM10395/11-26-1999-NA-p4-13296/1.000000-P4P113S303I10349 Gated 40.0B-29543,"[1, 0, 0, 0, 1, 0]",,,,,,,4D-Lung/113_HM10395/11-26-1999-NA-p4-13296/1.000000-P4P113S303I10349 Gated 40.0B-29543/1-81.dcm,2.25.186899387610254289948150314209581209847.35,default,RTSTRUCT,1,1.3.6.1.4.1.14519.5.2.1.6834.5010.815153834456695039602326691312,1.3.6.1.4.1.14519.5.2.1.6834.5010.339023390306606021995936229543,,,1.3.6.1.4.1.14519.5.2.1.6834.5010.107174034240688216982546597713,4D-Lung/113_HM10395/11-26-1999-NA-p4-13296/1.000000-P4P113S303I10349 Gated 40.0B-47.35/1-1.dcm,,,,,,,,4D-Lung/113_HM10395/11-26-1999-NA-p4-13296/1.000000-P4P113S303I10349 Gated 40.0B-47.35/1-1.dcm,2 From 186851f8e0af7da963d8c31e4d3c764ec834adf7 Mon Sep 17 00:00:00 2001 From: Katy Scott Date: Thu, 12 Dec 2024 18:18:44 -0500 Subject: [PATCH 07/17] refactor: improve import in test_general --- tests/io/loaders/test_general.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/io/loaders/test_general.py b/tests/io/loaders/test_general.py index 709ef61..b49de9a 100644 --- a/tests/io/loaders/test_general.py +++ b/tests/io/loaders/test_general.py @@ -1,4 +1,4 @@ -from readii.io.loaders.general import * +from readii.io.loaders.general import loadImageDatasetConfig import pytest @pytest.fixture From 42f1370d7721080ddefe3af87485f250e3c8ddb8 Mon Sep 17 00:00:00 2001 From: Katy Scott Date: Thu, 12 Dec 2024 18:20:30 -0500 Subject: [PATCH 08/17] chore: ignore test outputs in new data structure --- .gitignore | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.gitignore b/.gitignore index 2760637..e72c23c 100644 --- a/.gitignore +++ b/.gitignore @@ -146,6 +146,8 @@ dmypy.json # Test outputs tests/output/* +tests/NSCLC_Radiogenomics/results/* +tests/4D-Lung/results/* # pixi environments .pixi From b2c61e41c4fef2f7d2c6d7b8863c617dc345436e Mon Sep 17 00:00:00 2001 From: Katy Scott Date: Thu, 12 Dec 2024 18:20:59 -0500 Subject: [PATCH 09/17] chore: remove output feature file for 4D-lung --- .../results/features/radiomicfeatures_original_4D-Lung.csv | 2 -- 1 file changed, 2 deletions(-) delete mode 100644 tests/4D-Lung/results/features/radiomicfeatures_original_4D-Lung.csv diff --git a/tests/4D-Lung/results/features/radiomicfeatures_original_4D-Lung.csv b/tests/4D-Lung/results/features/radiomicfeatures_original_4D-Lung.csv deleted file mode 100644 index 9b2c600..0000000 --- a/tests/4D-Lung/results/features/radiomicfeatures_original_4D-Lung.csv +++ /dev/null @@ -1,2 +0,0 @@ -patient_ID,study_description,series_UID,series_description,image_modality,instances,seg_series_UID,seg_modality,seg_ref_image,roi,roi_number,negative_control,diagnostics_Versions_PyRadiomics,diagnostics_Versions_Numpy,diagnostics_Versions_SimpleITK,diagnostics_Versions_PyWavelet,diagnostics_Versions_Python,diagnostics_Configuration_Settings,diagnostics_Configuration_EnabledImageTypes,diagnostics_Image-original_Hash,diagnostics_Image-original_Dimensionality,diagnostics_Image-original_Spacing,diagnostics_Image-original_Size,diagnostics_Image-original_Mean,diagnostics_Image-original_Minimum,diagnostics_Image-original_Maximum,diagnostics_Mask-original_Hash,diagnostics_Mask-original_Spacing,diagnostics_Mask-original_Size,diagnostics_Mask-original_BoundingBox,diagnostics_Mask-original_VoxelNum,diagnostics_Mask-original_VolumeNum,diagnostics_Mask-original_CenterOfMassIndex,diagnostics_Mask-original_CenterOfMass,diagnostics_Image-interpolated_Spacing,diagnostics_Image-interpolated_Size,diagnostics_Image-interpolated_Mean,diagnostics_Image-interpolated_Minimum,diagnostics_Image-interpolated_Maximum,diagnostics_Mask-interpolated_Spacing,diagnostics_Mask-interpolated_Size,diagnostics_Mask-interpolated_BoundingBox,diagnostics_Mask-interpolated_VoxelNum,diagnostics_Mask-interpolated_VolumeNum,diagnostics_Mask-interpolated_CenterOfMassIndex,diagnostics_Mask-interpolated_CenterOfMass,diagnostics_Mask-interpolated_Mean,diagnostics_Mask-interpolated_Minimum,diagnostics_Mask-interpolated_Maximum,original_shape_Elongation,original_shape_Flatness,original_shape_LeastAxisLength,original_shape_MajorAxisLength,original_shape_Maximum2DDiameterColumn,original_shape_Maximum2DDiameterRow,original_shape_Maximum2DDiameterSlice,original_shape_Maximum3DDiameter,original_shape_MeshVolume,original_shape_MinorAxisLength,original_shape_Sphericity,original_shape_SurfaceArea,original_shape_SurfaceVolumeRatio,original_shape_VoxelVolume,original_firstorder_10Percentile,original_firstorder_90Percentile,original_firstorder_Energy,original_firstorder_Entropy,original_firstorder_InterquartileRange,original_firstorder_Kurtosis,original_firstorder_Maximum,original_firstorder_MeanAbsoluteDeviation,original_firstorder_Mean,original_firstorder_Median,original_firstorder_Minimum,original_firstorder_Range,original_firstorder_RobustMeanAbsoluteDeviation,original_firstorder_RootMeanSquared,original_firstorder_Skewness,original_firstorder_TotalEnergy,original_firstorder_Uniformity,original_firstorder_Variance,original_glcm_Autocorrelation,original_glcm_ClusterProminence,original_glcm_ClusterShade,original_glcm_ClusterTendency,original_glcm_Contrast,original_glcm_Correlation,original_glcm_DifferenceAverage,original_glcm_DifferenceEntropy,original_glcm_DifferenceVariance,original_glcm_Id,original_glcm_Idm,original_glcm_Idmn,original_glcm_Idn,original_glcm_Imc1,original_glcm_Imc2,original_glcm_InverseVariance,original_glcm_JointAverage,original_glcm_JointEnergy,original_glcm_JointEntropy,original_glcm_MCC,original_glcm_MaximumProbability,original_glcm_SumAverage,original_glcm_SumEntropy,original_glcm_SumSquares,original_glrlm_GrayLevelNonUniformity,original_glrlm_GrayLevelNonUniformityNormalized,original_glrlm_GrayLevelVariance,original_glrlm_HighGrayLevelRunEmphasis,original_glrlm_LongRunEmphasis,original_glrlm_LongRunHighGrayLevelEmphasis,original_glrlm_LongRunLowGrayLevelEmphasis,original_glrlm_LowGrayLevelRunEmphasis,original_glrlm_RunEntropy,original_glrlm_RunLengthNonUniformity,original_glrlm_RunLengthNonUniformityNormalized,original_glrlm_RunPercentage,original_glrlm_RunVariance,original_glrlm_ShortRunEmphasis,original_glrlm_ShortRunHighGrayLevelEmphasis,original_glrlm_ShortRunLowGrayLevelEmphasis,original_glszm_GrayLevelNonUniformity,original_glszm_GrayLevelNonUniformityNormalized,original_glszm_GrayLevelVariance,original_glszm_HighGrayLevelZoneEmphasis,original_glszm_LargeAreaEmphasis,original_glszm_LargeAreaHighGrayLevelEmphasis,original_glszm_LargeAreaLowGrayLevelEmphasis,original_glszm_LowGrayLevelZoneEmphasis,original_glszm_SizeZoneNonUniformity,original_glszm_SizeZoneNonUniformityNormalized,original_glszm_SmallAreaEmphasis,original_glszm_SmallAreaHighGrayLevelEmphasis,original_glszm_SmallAreaLowGrayLevelEmphasis,original_glszm_ZoneEntropy,original_glszm_ZonePercentage,original_glszm_ZoneVariance,original_gldm_DependenceEntropy,original_gldm_DependenceNonUniformity,original_gldm_DependenceNonUniformityNormalized,original_gldm_DependenceVariance,original_gldm_GrayLevelNonUniformity,original_gldm_GrayLevelVariance,original_gldm_HighGrayLevelEmphasis,original_gldm_LargeDependenceEmphasis,original_gldm_LargeDependenceHighGrayLevelEmphasis,original_gldm_LargeDependenceLowGrayLevelEmphasis,original_gldm_LowGrayLevelEmphasis,original_gldm_SmallDependenceEmphasis,original_gldm_SmallDependenceHighGrayLevelEmphasis,original_gldm_SmallDependenceLowGrayLevelEmphasis,original_ngtdm_Busyness,original_ngtdm_Coarseness,original_ngtdm_Complexity,original_ngtdm_Contrast,original_ngtdm_Strength,wavelet-LLH_firstorder_10Percentile,wavelet-LLH_firstorder_90Percentile,wavelet-LLH_firstorder_Energy,wavelet-LLH_firstorder_Entropy,wavelet-LLH_firstorder_InterquartileRange,wavelet-LLH_firstorder_Kurtosis,wavelet-LLH_firstorder_Maximum,wavelet-LLH_firstorder_MeanAbsoluteDeviation,wavelet-LLH_firstorder_Mean,wavelet-LLH_firstorder_Median,wavelet-LLH_firstorder_Minimum,wavelet-LLH_firstorder_Range,wavelet-LLH_firstorder_RobustMeanAbsoluteDeviation,wavelet-LLH_firstorder_RootMeanSquared,wavelet-LLH_firstorder_Skewness,wavelet-LLH_firstorder_TotalEnergy,wavelet-LLH_firstorder_Uniformity,wavelet-LLH_firstorder_Variance,wavelet-LLH_glcm_Autocorrelation,wavelet-LLH_glcm_ClusterProminence,wavelet-LLH_glcm_ClusterShade,wavelet-LLH_glcm_ClusterTendency,wavelet-LLH_glcm_Contrast,wavelet-LLH_glcm_Correlation,wavelet-LLH_glcm_DifferenceAverage,wavelet-LLH_glcm_DifferenceEntropy,wavelet-LLH_glcm_DifferenceVariance,wavelet-LLH_glcm_Id,wavelet-LLH_glcm_Idm,wavelet-LLH_glcm_Idmn,wavelet-LLH_glcm_Idn,wavelet-LLH_glcm_Imc1,wavelet-LLH_glcm_Imc2,wavelet-LLH_glcm_InverseVariance,wavelet-LLH_glcm_JointAverage,wavelet-LLH_glcm_JointEnergy,wavelet-LLH_glcm_JointEntropy,wavelet-LLH_glcm_MCC,wavelet-LLH_glcm_MaximumProbability,wavelet-LLH_glcm_SumAverage,wavelet-LLH_glcm_SumEntropy,wavelet-LLH_glcm_SumSquares,wavelet-LLH_glrlm_GrayLevelNonUniformity,wavelet-LLH_glrlm_GrayLevelNonUniformityNormalized,wavelet-LLH_glrlm_GrayLevelVariance,wavelet-LLH_glrlm_HighGrayLevelRunEmphasis,wavelet-LLH_glrlm_LongRunEmphasis,wavelet-LLH_glrlm_LongRunHighGrayLevelEmphasis,wavelet-LLH_glrlm_LongRunLowGrayLevelEmphasis,wavelet-LLH_glrlm_LowGrayLevelRunEmphasis,wavelet-LLH_glrlm_RunEntropy,wavelet-LLH_glrlm_RunLengthNonUniformity,wavelet-LLH_glrlm_RunLengthNonUniformityNormalized,wavelet-LLH_glrlm_RunPercentage,wavelet-LLH_glrlm_RunVariance,wavelet-LLH_glrlm_ShortRunEmphasis,wavelet-LLH_glrlm_ShortRunHighGrayLevelEmphasis,wavelet-LLH_glrlm_ShortRunLowGrayLevelEmphasis,wavelet-LLH_glszm_GrayLevelNonUniformity,wavelet-LLH_glszm_GrayLevelNonUniformityNormalized,wavelet-LLH_glszm_GrayLevelVariance,wavelet-LLH_glszm_HighGrayLevelZoneEmphasis,wavelet-LLH_glszm_LargeAreaEmphasis,wavelet-LLH_glszm_LargeAreaHighGrayLevelEmphasis,wavelet-LLH_glszm_LargeAreaLowGrayLevelEmphasis,wavelet-LLH_glszm_LowGrayLevelZoneEmphasis,wavelet-LLH_glszm_SizeZoneNonUniformity,wavelet-LLH_glszm_SizeZoneNonUniformityNormalized,wavelet-LLH_glszm_SmallAreaEmphasis,wavelet-LLH_glszm_SmallAreaHighGrayLevelEmphasis,wavelet-LLH_glszm_SmallAreaLowGrayLevelEmphasis,wavelet-LLH_glszm_ZoneEntropy,wavelet-LLH_glszm_ZonePercentage,wavelet-LLH_glszm_ZoneVariance,wavelet-LLH_gldm_DependenceEntropy,wavelet-LLH_gldm_DependenceNonUniformity,wavelet-LLH_gldm_DependenceNonUniformityNormalized,wavelet-LLH_gldm_DependenceVariance,wavelet-LLH_gldm_GrayLevelNonUniformity,wavelet-LLH_gldm_GrayLevelVariance,wavelet-LLH_gldm_HighGrayLevelEmphasis,wavelet-LLH_gldm_LargeDependenceEmphasis,wavelet-LLH_gldm_LargeDependenceHighGrayLevelEmphasis,wavelet-LLH_gldm_LargeDependenceLowGrayLevelEmphasis,wavelet-LLH_gldm_LowGrayLevelEmphasis,wavelet-LLH_gldm_SmallDependenceEmphasis,wavelet-LLH_gldm_SmallDependenceHighGrayLevelEmphasis,wavelet-LLH_gldm_SmallDependenceLowGrayLevelEmphasis,wavelet-LLH_ngtdm_Busyness,wavelet-LLH_ngtdm_Coarseness,wavelet-LLH_ngtdm_Complexity,wavelet-LLH_ngtdm_Contrast,wavelet-LLH_ngtdm_Strength,wavelet-LHL_firstorder_10Percentile,wavelet-LHL_firstorder_90Percentile,wavelet-LHL_firstorder_Energy,wavelet-LHL_firstorder_Entropy,wavelet-LHL_firstorder_InterquartileRange,wavelet-LHL_firstorder_Kurtosis,wavelet-LHL_firstorder_Maximum,wavelet-LHL_firstorder_MeanAbsoluteDeviation,wavelet-LHL_firstorder_Mean,wavelet-LHL_firstorder_Median,wavelet-LHL_firstorder_Minimum,wavelet-LHL_firstorder_Range,wavelet-LHL_firstorder_RobustMeanAbsoluteDeviation,wavelet-LHL_firstorder_RootMeanSquared,wavelet-LHL_firstorder_Skewness,wavelet-LHL_firstorder_TotalEnergy,wavelet-LHL_firstorder_Uniformity,wavelet-LHL_firstorder_Variance,wavelet-LHL_glcm_Autocorrelation,wavelet-LHL_glcm_ClusterProminence,wavelet-LHL_glcm_ClusterShade,wavelet-LHL_glcm_ClusterTendency,wavelet-LHL_glcm_Contrast,wavelet-LHL_glcm_Correlation,wavelet-LHL_glcm_DifferenceAverage,wavelet-LHL_glcm_DifferenceEntropy,wavelet-LHL_glcm_DifferenceVariance,wavelet-LHL_glcm_Id,wavelet-LHL_glcm_Idm,wavelet-LHL_glcm_Idmn,wavelet-LHL_glcm_Idn,wavelet-LHL_glcm_Imc1,wavelet-LHL_glcm_Imc2,wavelet-LHL_glcm_InverseVariance,wavelet-LHL_glcm_JointAverage,wavelet-LHL_glcm_JointEnergy,wavelet-LHL_glcm_JointEntropy,wavelet-LHL_glcm_MCC,wavelet-LHL_glcm_MaximumProbability,wavelet-LHL_glcm_SumAverage,wavelet-LHL_glcm_SumEntropy,wavelet-LHL_glcm_SumSquares,wavelet-LHL_glrlm_GrayLevelNonUniformity,wavelet-LHL_glrlm_GrayLevelNonUniformityNormalized,wavelet-LHL_glrlm_GrayLevelVariance,wavelet-LHL_glrlm_HighGrayLevelRunEmphasis,wavelet-LHL_glrlm_LongRunEmphasis,wavelet-LHL_glrlm_LongRunHighGrayLevelEmphasis,wavelet-LHL_glrlm_LongRunLowGrayLevelEmphasis,wavelet-LHL_glrlm_LowGrayLevelRunEmphasis,wavelet-LHL_glrlm_RunEntropy,wavelet-LHL_glrlm_RunLengthNonUniformity,wavelet-LHL_glrlm_RunLengthNonUniformityNormalized,wavelet-LHL_glrlm_RunPercentage,wavelet-LHL_glrlm_RunVariance,wavelet-LHL_glrlm_ShortRunEmphasis,wavelet-LHL_glrlm_ShortRunHighGrayLevelEmphasis,wavelet-LHL_glrlm_ShortRunLowGrayLevelEmphasis,wavelet-LHL_glszm_GrayLevelNonUniformity,wavelet-LHL_glszm_GrayLevelNonUniformityNormalized,wavelet-LHL_glszm_GrayLevelVariance,wavelet-LHL_glszm_HighGrayLevelZoneEmphasis,wavelet-LHL_glszm_LargeAreaEmphasis,wavelet-LHL_glszm_LargeAreaHighGrayLevelEmphasis,wavelet-LHL_glszm_LargeAreaLowGrayLevelEmphasis,wavelet-LHL_glszm_LowGrayLevelZoneEmphasis,wavelet-LHL_glszm_SizeZoneNonUniformity,wavelet-LHL_glszm_SizeZoneNonUniformityNormalized,wavelet-LHL_glszm_SmallAreaEmphasis,wavelet-LHL_glszm_SmallAreaHighGrayLevelEmphasis,wavelet-LHL_glszm_SmallAreaLowGrayLevelEmphasis,wavelet-LHL_glszm_ZoneEntropy,wavelet-LHL_glszm_ZonePercentage,wavelet-LHL_glszm_ZoneVariance,wavelet-LHL_gldm_DependenceEntropy,wavelet-LHL_gldm_DependenceNonUniformity,wavelet-LHL_gldm_DependenceNonUniformityNormalized,wavelet-LHL_gldm_DependenceVariance,wavelet-LHL_gldm_GrayLevelNonUniformity,wavelet-LHL_gldm_GrayLevelVariance,wavelet-LHL_gldm_HighGrayLevelEmphasis,wavelet-LHL_gldm_LargeDependenceEmphasis,wavelet-LHL_gldm_LargeDependenceHighGrayLevelEmphasis,wavelet-LHL_gldm_LargeDependenceLowGrayLevelEmphasis,wavelet-LHL_gldm_LowGrayLevelEmphasis,wavelet-LHL_gldm_SmallDependenceEmphasis,wavelet-LHL_gldm_SmallDependenceHighGrayLevelEmphasis,wavelet-LHL_gldm_SmallDependenceLowGrayLevelEmphasis,wavelet-LHL_ngtdm_Busyness,wavelet-LHL_ngtdm_Coarseness,wavelet-LHL_ngtdm_Complexity,wavelet-LHL_ngtdm_Contrast,wavelet-LHL_ngtdm_Strength,wavelet-LHH_firstorder_10Percentile,wavelet-LHH_firstorder_90Percentile,wavelet-LHH_firstorder_Energy,wavelet-LHH_firstorder_Entropy,wavelet-LHH_firstorder_InterquartileRange,wavelet-LHH_firstorder_Kurtosis,wavelet-LHH_firstorder_Maximum,wavelet-LHH_firstorder_MeanAbsoluteDeviation,wavelet-LHH_firstorder_Mean,wavelet-LHH_firstorder_Median,wavelet-LHH_firstorder_Minimum,wavelet-LHH_firstorder_Range,wavelet-LHH_firstorder_RobustMeanAbsoluteDeviation,wavelet-LHH_firstorder_RootMeanSquared,wavelet-LHH_firstorder_Skewness,wavelet-LHH_firstorder_TotalEnergy,wavelet-LHH_firstorder_Uniformity,wavelet-LHH_firstorder_Variance,wavelet-LHH_glcm_Autocorrelation,wavelet-LHH_glcm_ClusterProminence,wavelet-LHH_glcm_ClusterShade,wavelet-LHH_glcm_ClusterTendency,wavelet-LHH_glcm_Contrast,wavelet-LHH_glcm_Correlation,wavelet-LHH_glcm_DifferenceAverage,wavelet-LHH_glcm_DifferenceEntropy,wavelet-LHH_glcm_DifferenceVariance,wavelet-LHH_glcm_Id,wavelet-LHH_glcm_Idm,wavelet-LHH_glcm_Idmn,wavelet-LHH_glcm_Idn,wavelet-LHH_glcm_Imc1,wavelet-LHH_glcm_Imc2,wavelet-LHH_glcm_InverseVariance,wavelet-LHH_glcm_JointAverage,wavelet-LHH_glcm_JointEnergy,wavelet-LHH_glcm_JointEntropy,wavelet-LHH_glcm_MCC,wavelet-LHH_glcm_MaximumProbability,wavelet-LHH_glcm_SumAverage,wavelet-LHH_glcm_SumEntropy,wavelet-LHH_glcm_SumSquares,wavelet-LHH_glrlm_GrayLevelNonUniformity,wavelet-LHH_glrlm_GrayLevelNonUniformityNormalized,wavelet-LHH_glrlm_GrayLevelVariance,wavelet-LHH_glrlm_HighGrayLevelRunEmphasis,wavelet-LHH_glrlm_LongRunEmphasis,wavelet-LHH_glrlm_LongRunHighGrayLevelEmphasis,wavelet-LHH_glrlm_LongRunLowGrayLevelEmphasis,wavelet-LHH_glrlm_LowGrayLevelRunEmphasis,wavelet-LHH_glrlm_RunEntropy,wavelet-LHH_glrlm_RunLengthNonUniformity,wavelet-LHH_glrlm_RunLengthNonUniformityNormalized,wavelet-LHH_glrlm_RunPercentage,wavelet-LHH_glrlm_RunVariance,wavelet-LHH_glrlm_ShortRunEmphasis,wavelet-LHH_glrlm_ShortRunHighGrayLevelEmphasis,wavelet-LHH_glrlm_ShortRunLowGrayLevelEmphasis,wavelet-LHH_glszm_GrayLevelNonUniformity,wavelet-LHH_glszm_GrayLevelNonUniformityNormalized,wavelet-LHH_glszm_GrayLevelVariance,wavelet-LHH_glszm_HighGrayLevelZoneEmphasis,wavelet-LHH_glszm_LargeAreaEmphasis,wavelet-LHH_glszm_LargeAreaHighGrayLevelEmphasis,wavelet-LHH_glszm_LargeAreaLowGrayLevelEmphasis,wavelet-LHH_glszm_LowGrayLevelZoneEmphasis,wavelet-LHH_glszm_SizeZoneNonUniformity,wavelet-LHH_glszm_SizeZoneNonUniformityNormalized,wavelet-LHH_glszm_SmallAreaEmphasis,wavelet-LHH_glszm_SmallAreaHighGrayLevelEmphasis,wavelet-LHH_glszm_SmallAreaLowGrayLevelEmphasis,wavelet-LHH_glszm_ZoneEntropy,wavelet-LHH_glszm_ZonePercentage,wavelet-LHH_glszm_ZoneVariance,wavelet-LHH_gldm_DependenceEntropy,wavelet-LHH_gldm_DependenceNonUniformity,wavelet-LHH_gldm_DependenceNonUniformityNormalized,wavelet-LHH_gldm_DependenceVariance,wavelet-LHH_gldm_GrayLevelNonUniformity,wavelet-LHH_gldm_GrayLevelVariance,wavelet-LHH_gldm_HighGrayLevelEmphasis,wavelet-LHH_gldm_LargeDependenceEmphasis,wavelet-LHH_gldm_LargeDependenceHighGrayLevelEmphasis,wavelet-LHH_gldm_LargeDependenceLowGrayLevelEmphasis,wavelet-LHH_gldm_LowGrayLevelEmphasis,wavelet-LHH_gldm_SmallDependenceEmphasis,wavelet-LHH_gldm_SmallDependenceHighGrayLevelEmphasis,wavelet-LHH_gldm_SmallDependenceLowGrayLevelEmphasis,wavelet-LHH_ngtdm_Busyness,wavelet-LHH_ngtdm_Coarseness,wavelet-LHH_ngtdm_Complexity,wavelet-LHH_ngtdm_Contrast,wavelet-LHH_ngtdm_Strength,wavelet-HLL_firstorder_10Percentile,wavelet-HLL_firstorder_90Percentile,wavelet-HLL_firstorder_Energy,wavelet-HLL_firstorder_Entropy,wavelet-HLL_firstorder_InterquartileRange,wavelet-HLL_firstorder_Kurtosis,wavelet-HLL_firstorder_Maximum,wavelet-HLL_firstorder_MeanAbsoluteDeviation,wavelet-HLL_firstorder_Mean,wavelet-HLL_firstorder_Median,wavelet-HLL_firstorder_Minimum,wavelet-HLL_firstorder_Range,wavelet-HLL_firstorder_RobustMeanAbsoluteDeviation,wavelet-HLL_firstorder_RootMeanSquared,wavelet-HLL_firstorder_Skewness,wavelet-HLL_firstorder_TotalEnergy,wavelet-HLL_firstorder_Uniformity,wavelet-HLL_firstorder_Variance,wavelet-HLL_glcm_Autocorrelation,wavelet-HLL_glcm_ClusterProminence,wavelet-HLL_glcm_ClusterShade,wavelet-HLL_glcm_ClusterTendency,wavelet-HLL_glcm_Contrast,wavelet-HLL_glcm_Correlation,wavelet-HLL_glcm_DifferenceAverage,wavelet-HLL_glcm_DifferenceEntropy,wavelet-HLL_glcm_DifferenceVariance,wavelet-HLL_glcm_Id,wavelet-HLL_glcm_Idm,wavelet-HLL_glcm_Idmn,wavelet-HLL_glcm_Idn,wavelet-HLL_glcm_Imc1,wavelet-HLL_glcm_Imc2,wavelet-HLL_glcm_InverseVariance,wavelet-HLL_glcm_JointAverage,wavelet-HLL_glcm_JointEnergy,wavelet-HLL_glcm_JointEntropy,wavelet-HLL_glcm_MCC,wavelet-HLL_glcm_MaximumProbability,wavelet-HLL_glcm_SumAverage,wavelet-HLL_glcm_SumEntropy,wavelet-HLL_glcm_SumSquares,wavelet-HLL_glrlm_GrayLevelNonUniformity,wavelet-HLL_glrlm_GrayLevelNonUniformityNormalized,wavelet-HLL_glrlm_GrayLevelVariance,wavelet-HLL_glrlm_HighGrayLevelRunEmphasis,wavelet-HLL_glrlm_LongRunEmphasis,wavelet-HLL_glrlm_LongRunHighGrayLevelEmphasis,wavelet-HLL_glrlm_LongRunLowGrayLevelEmphasis,wavelet-HLL_glrlm_LowGrayLevelRunEmphasis,wavelet-HLL_glrlm_RunEntropy,wavelet-HLL_glrlm_RunLengthNonUniformity,wavelet-HLL_glrlm_RunLengthNonUniformityNormalized,wavelet-HLL_glrlm_RunPercentage,wavelet-HLL_glrlm_RunVariance,wavelet-HLL_glrlm_ShortRunEmphasis,wavelet-HLL_glrlm_ShortRunHighGrayLevelEmphasis,wavelet-HLL_glrlm_ShortRunLowGrayLevelEmphasis,wavelet-HLL_glszm_GrayLevelNonUniformity,wavelet-HLL_glszm_GrayLevelNonUniformityNormalized,wavelet-HLL_glszm_GrayLevelVariance,wavelet-HLL_glszm_HighGrayLevelZoneEmphasis,wavelet-HLL_glszm_LargeAreaEmphasis,wavelet-HLL_glszm_LargeAreaHighGrayLevelEmphasis,wavelet-HLL_glszm_LargeAreaLowGrayLevelEmphasis,wavelet-HLL_glszm_LowGrayLevelZoneEmphasis,wavelet-HLL_glszm_SizeZoneNonUniformity,wavelet-HLL_glszm_SizeZoneNonUniformityNormalized,wavelet-HLL_glszm_SmallAreaEmphasis,wavelet-HLL_glszm_SmallAreaHighGrayLevelEmphasis,wavelet-HLL_glszm_SmallAreaLowGrayLevelEmphasis,wavelet-HLL_glszm_ZoneEntropy,wavelet-HLL_glszm_ZonePercentage,wavelet-HLL_glszm_ZoneVariance,wavelet-HLL_gldm_DependenceEntropy,wavelet-HLL_gldm_DependenceNonUniformity,wavelet-HLL_gldm_DependenceNonUniformityNormalized,wavelet-HLL_gldm_DependenceVariance,wavelet-HLL_gldm_GrayLevelNonUniformity,wavelet-HLL_gldm_GrayLevelVariance,wavelet-HLL_gldm_HighGrayLevelEmphasis,wavelet-HLL_gldm_LargeDependenceEmphasis,wavelet-HLL_gldm_LargeDependenceHighGrayLevelEmphasis,wavelet-HLL_gldm_LargeDependenceLowGrayLevelEmphasis,wavelet-HLL_gldm_LowGrayLevelEmphasis,wavelet-HLL_gldm_SmallDependenceEmphasis,wavelet-HLL_gldm_SmallDependenceHighGrayLevelEmphasis,wavelet-HLL_gldm_SmallDependenceLowGrayLevelEmphasis,wavelet-HLL_ngtdm_Busyness,wavelet-HLL_ngtdm_Coarseness,wavelet-HLL_ngtdm_Complexity,wavelet-HLL_ngtdm_Contrast,wavelet-HLL_ngtdm_Strength,wavelet-HLH_firstorder_10Percentile,wavelet-HLH_firstorder_90Percentile,wavelet-HLH_firstorder_Energy,wavelet-HLH_firstorder_Entropy,wavelet-HLH_firstorder_InterquartileRange,wavelet-HLH_firstorder_Kurtosis,wavelet-HLH_firstorder_Maximum,wavelet-HLH_firstorder_MeanAbsoluteDeviation,wavelet-HLH_firstorder_Mean,wavelet-HLH_firstorder_Median,wavelet-HLH_firstorder_Minimum,wavelet-HLH_firstorder_Range,wavelet-HLH_firstorder_RobustMeanAbsoluteDeviation,wavelet-HLH_firstorder_RootMeanSquared,wavelet-HLH_firstorder_Skewness,wavelet-HLH_firstorder_TotalEnergy,wavelet-HLH_firstorder_Uniformity,wavelet-HLH_firstorder_Variance,wavelet-HLH_glcm_Autocorrelation,wavelet-HLH_glcm_ClusterProminence,wavelet-HLH_glcm_ClusterShade,wavelet-HLH_glcm_ClusterTendency,wavelet-HLH_glcm_Contrast,wavelet-HLH_glcm_Correlation,wavelet-HLH_glcm_DifferenceAverage,wavelet-HLH_glcm_DifferenceEntropy,wavelet-HLH_glcm_DifferenceVariance,wavelet-HLH_glcm_Id,wavelet-HLH_glcm_Idm,wavelet-HLH_glcm_Idmn,wavelet-HLH_glcm_Idn,wavelet-HLH_glcm_Imc1,wavelet-HLH_glcm_Imc2,wavelet-HLH_glcm_InverseVariance,wavelet-HLH_glcm_JointAverage,wavelet-HLH_glcm_JointEnergy,wavelet-HLH_glcm_JointEntropy,wavelet-HLH_glcm_MCC,wavelet-HLH_glcm_MaximumProbability,wavelet-HLH_glcm_SumAverage,wavelet-HLH_glcm_SumEntropy,wavelet-HLH_glcm_SumSquares,wavelet-HLH_glrlm_GrayLevelNonUniformity,wavelet-HLH_glrlm_GrayLevelNonUniformityNormalized,wavelet-HLH_glrlm_GrayLevelVariance,wavelet-HLH_glrlm_HighGrayLevelRunEmphasis,wavelet-HLH_glrlm_LongRunEmphasis,wavelet-HLH_glrlm_LongRunHighGrayLevelEmphasis,wavelet-HLH_glrlm_LongRunLowGrayLevelEmphasis,wavelet-HLH_glrlm_LowGrayLevelRunEmphasis,wavelet-HLH_glrlm_RunEntropy,wavelet-HLH_glrlm_RunLengthNonUniformity,wavelet-HLH_glrlm_RunLengthNonUniformityNormalized,wavelet-HLH_glrlm_RunPercentage,wavelet-HLH_glrlm_RunVariance,wavelet-HLH_glrlm_ShortRunEmphasis,wavelet-HLH_glrlm_ShortRunHighGrayLevelEmphasis,wavelet-HLH_glrlm_ShortRunLowGrayLevelEmphasis,wavelet-HLH_glszm_GrayLevelNonUniformity,wavelet-HLH_glszm_GrayLevelNonUniformityNormalized,wavelet-HLH_glszm_GrayLevelVariance,wavelet-HLH_glszm_HighGrayLevelZoneEmphasis,wavelet-HLH_glszm_LargeAreaEmphasis,wavelet-HLH_glszm_LargeAreaHighGrayLevelEmphasis,wavelet-HLH_glszm_LargeAreaLowGrayLevelEmphasis,wavelet-HLH_glszm_LowGrayLevelZoneEmphasis,wavelet-HLH_glszm_SizeZoneNonUniformity,wavelet-HLH_glszm_SizeZoneNonUniformityNormalized,wavelet-HLH_glszm_SmallAreaEmphasis,wavelet-HLH_glszm_SmallAreaHighGrayLevelEmphasis,wavelet-HLH_glszm_SmallAreaLowGrayLevelEmphasis,wavelet-HLH_glszm_ZoneEntropy,wavelet-HLH_glszm_ZonePercentage,wavelet-HLH_glszm_ZoneVariance,wavelet-HLH_gldm_DependenceEntropy,wavelet-HLH_gldm_DependenceNonUniformity,wavelet-HLH_gldm_DependenceNonUniformityNormalized,wavelet-HLH_gldm_DependenceVariance,wavelet-HLH_gldm_GrayLevelNonUniformity,wavelet-HLH_gldm_GrayLevelVariance,wavelet-HLH_gldm_HighGrayLevelEmphasis,wavelet-HLH_gldm_LargeDependenceEmphasis,wavelet-HLH_gldm_LargeDependenceHighGrayLevelEmphasis,wavelet-HLH_gldm_LargeDependenceLowGrayLevelEmphasis,wavelet-HLH_gldm_LowGrayLevelEmphasis,wavelet-HLH_gldm_SmallDependenceEmphasis,wavelet-HLH_gldm_SmallDependenceHighGrayLevelEmphasis,wavelet-HLH_gldm_SmallDependenceLowGrayLevelEmphasis,wavelet-HLH_ngtdm_Busyness,wavelet-HLH_ngtdm_Coarseness,wavelet-HLH_ngtdm_Complexity,wavelet-HLH_ngtdm_Contrast,wavelet-HLH_ngtdm_Strength,wavelet-HHL_firstorder_10Percentile,wavelet-HHL_firstorder_90Percentile,wavelet-HHL_firstorder_Energy,wavelet-HHL_firstorder_Entropy,wavelet-HHL_firstorder_InterquartileRange,wavelet-HHL_firstorder_Kurtosis,wavelet-HHL_firstorder_Maximum,wavelet-HHL_firstorder_MeanAbsoluteDeviation,wavelet-HHL_firstorder_Mean,wavelet-HHL_firstorder_Median,wavelet-HHL_firstorder_Minimum,wavelet-HHL_firstorder_Range,wavelet-HHL_firstorder_RobustMeanAbsoluteDeviation,wavelet-HHL_firstorder_RootMeanSquared,wavelet-HHL_firstorder_Skewness,wavelet-HHL_firstorder_TotalEnergy,wavelet-HHL_firstorder_Uniformity,wavelet-HHL_firstorder_Variance,wavelet-HHL_glcm_Autocorrelation,wavelet-HHL_glcm_ClusterProminence,wavelet-HHL_glcm_ClusterShade,wavelet-HHL_glcm_ClusterTendency,wavelet-HHL_glcm_Contrast,wavelet-HHL_glcm_Correlation,wavelet-HHL_glcm_DifferenceAverage,wavelet-HHL_glcm_DifferenceEntropy,wavelet-HHL_glcm_DifferenceVariance,wavelet-HHL_glcm_Id,wavelet-HHL_glcm_Idm,wavelet-HHL_glcm_Idmn,wavelet-HHL_glcm_Idn,wavelet-HHL_glcm_Imc1,wavelet-HHL_glcm_Imc2,wavelet-HHL_glcm_InverseVariance,wavelet-HHL_glcm_JointAverage,wavelet-HHL_glcm_JointEnergy,wavelet-HHL_glcm_JointEntropy,wavelet-HHL_glcm_MCC,wavelet-HHL_glcm_MaximumProbability,wavelet-HHL_glcm_SumAverage,wavelet-HHL_glcm_SumEntropy,wavelet-HHL_glcm_SumSquares,wavelet-HHL_glrlm_GrayLevelNonUniformity,wavelet-HHL_glrlm_GrayLevelNonUniformityNormalized,wavelet-HHL_glrlm_GrayLevelVariance,wavelet-HHL_glrlm_HighGrayLevelRunEmphasis,wavelet-HHL_glrlm_LongRunEmphasis,wavelet-HHL_glrlm_LongRunHighGrayLevelEmphasis,wavelet-HHL_glrlm_LongRunLowGrayLevelEmphasis,wavelet-HHL_glrlm_LowGrayLevelRunEmphasis,wavelet-HHL_glrlm_RunEntropy,wavelet-HHL_glrlm_RunLengthNonUniformity,wavelet-HHL_glrlm_RunLengthNonUniformityNormalized,wavelet-HHL_glrlm_RunPercentage,wavelet-HHL_glrlm_RunVariance,wavelet-HHL_glrlm_ShortRunEmphasis,wavelet-HHL_glrlm_ShortRunHighGrayLevelEmphasis,wavelet-HHL_glrlm_ShortRunLowGrayLevelEmphasis,wavelet-HHL_glszm_GrayLevelNonUniformity,wavelet-HHL_glszm_GrayLevelNonUniformityNormalized,wavelet-HHL_glszm_GrayLevelVariance,wavelet-HHL_glszm_HighGrayLevelZoneEmphasis,wavelet-HHL_glszm_LargeAreaEmphasis,wavelet-HHL_glszm_LargeAreaHighGrayLevelEmphasis,wavelet-HHL_glszm_LargeAreaLowGrayLevelEmphasis,wavelet-HHL_glszm_LowGrayLevelZoneEmphasis,wavelet-HHL_glszm_SizeZoneNonUniformity,wavelet-HHL_glszm_SizeZoneNonUniformityNormalized,wavelet-HHL_glszm_SmallAreaEmphasis,wavelet-HHL_glszm_SmallAreaHighGrayLevelEmphasis,wavelet-HHL_glszm_SmallAreaLowGrayLevelEmphasis,wavelet-HHL_glszm_ZoneEntropy,wavelet-HHL_glszm_ZonePercentage,wavelet-HHL_glszm_ZoneVariance,wavelet-HHL_gldm_DependenceEntropy,wavelet-HHL_gldm_DependenceNonUniformity,wavelet-HHL_gldm_DependenceNonUniformityNormalized,wavelet-HHL_gldm_DependenceVariance,wavelet-HHL_gldm_GrayLevelNonUniformity,wavelet-HHL_gldm_GrayLevelVariance,wavelet-HHL_gldm_HighGrayLevelEmphasis,wavelet-HHL_gldm_LargeDependenceEmphasis,wavelet-HHL_gldm_LargeDependenceHighGrayLevelEmphasis,wavelet-HHL_gldm_LargeDependenceLowGrayLevelEmphasis,wavelet-HHL_gldm_LowGrayLevelEmphasis,wavelet-HHL_gldm_SmallDependenceEmphasis,wavelet-HHL_gldm_SmallDependenceHighGrayLevelEmphasis,wavelet-HHL_gldm_SmallDependenceLowGrayLevelEmphasis,wavelet-HHL_ngtdm_Busyness,wavelet-HHL_ngtdm_Coarseness,wavelet-HHL_ngtdm_Complexity,wavelet-HHL_ngtdm_Contrast,wavelet-HHL_ngtdm_Strength,wavelet-HHH_firstorder_10Percentile,wavelet-HHH_firstorder_90Percentile,wavelet-HHH_firstorder_Energy,wavelet-HHH_firstorder_Entropy,wavelet-HHH_firstorder_InterquartileRange,wavelet-HHH_firstorder_Kurtosis,wavelet-HHH_firstorder_Maximum,wavelet-HHH_firstorder_MeanAbsoluteDeviation,wavelet-HHH_firstorder_Mean,wavelet-HHH_firstorder_Median,wavelet-HHH_firstorder_Minimum,wavelet-HHH_firstorder_Range,wavelet-HHH_firstorder_RobustMeanAbsoluteDeviation,wavelet-HHH_firstorder_RootMeanSquared,wavelet-HHH_firstorder_Skewness,wavelet-HHH_firstorder_TotalEnergy,wavelet-HHH_firstorder_Uniformity,wavelet-HHH_firstorder_Variance,wavelet-HHH_glcm_Autocorrelation,wavelet-HHH_glcm_ClusterProminence,wavelet-HHH_glcm_ClusterShade,wavelet-HHH_glcm_ClusterTendency,wavelet-HHH_glcm_Contrast,wavelet-HHH_glcm_Correlation,wavelet-HHH_glcm_DifferenceAverage,wavelet-HHH_glcm_DifferenceEntropy,wavelet-HHH_glcm_DifferenceVariance,wavelet-HHH_glcm_Id,wavelet-HHH_glcm_Idm,wavelet-HHH_glcm_Idmn,wavelet-HHH_glcm_Idn,wavelet-HHH_glcm_Imc1,wavelet-HHH_glcm_Imc2,wavelet-HHH_glcm_InverseVariance,wavelet-HHH_glcm_JointAverage,wavelet-HHH_glcm_JointEnergy,wavelet-HHH_glcm_JointEntropy,wavelet-HHH_glcm_MCC,wavelet-HHH_glcm_MaximumProbability,wavelet-HHH_glcm_SumAverage,wavelet-HHH_glcm_SumEntropy,wavelet-HHH_glcm_SumSquares,wavelet-HHH_glrlm_GrayLevelNonUniformity,wavelet-HHH_glrlm_GrayLevelNonUniformityNormalized,wavelet-HHH_glrlm_GrayLevelVariance,wavelet-HHH_glrlm_HighGrayLevelRunEmphasis,wavelet-HHH_glrlm_LongRunEmphasis,wavelet-HHH_glrlm_LongRunHighGrayLevelEmphasis,wavelet-HHH_glrlm_LongRunLowGrayLevelEmphasis,wavelet-HHH_glrlm_LowGrayLevelRunEmphasis,wavelet-HHH_glrlm_RunEntropy,wavelet-HHH_glrlm_RunLengthNonUniformity,wavelet-HHH_glrlm_RunLengthNonUniformityNormalized,wavelet-HHH_glrlm_RunPercentage,wavelet-HHH_glrlm_RunVariance,wavelet-HHH_glrlm_ShortRunEmphasis,wavelet-HHH_glrlm_ShortRunHighGrayLevelEmphasis,wavelet-HHH_glrlm_ShortRunLowGrayLevelEmphasis,wavelet-HHH_glszm_GrayLevelNonUniformity,wavelet-HHH_glszm_GrayLevelNonUniformityNormalized,wavelet-HHH_glszm_GrayLevelVariance,wavelet-HHH_glszm_HighGrayLevelZoneEmphasis,wavelet-HHH_glszm_LargeAreaEmphasis,wavelet-HHH_glszm_LargeAreaHighGrayLevelEmphasis,wavelet-HHH_glszm_LargeAreaLowGrayLevelEmphasis,wavelet-HHH_glszm_LowGrayLevelZoneEmphasis,wavelet-HHH_glszm_SizeZoneNonUniformity,wavelet-HHH_glszm_SizeZoneNonUniformityNormalized,wavelet-HHH_glszm_SmallAreaEmphasis,wavelet-HHH_glszm_SmallAreaHighGrayLevelEmphasis,wavelet-HHH_glszm_SmallAreaLowGrayLevelEmphasis,wavelet-HHH_glszm_ZoneEntropy,wavelet-HHH_glszm_ZonePercentage,wavelet-HHH_glszm_ZoneVariance,wavelet-HHH_gldm_DependenceEntropy,wavelet-HHH_gldm_DependenceNonUniformity,wavelet-HHH_gldm_DependenceNonUniformityNormalized,wavelet-HHH_gldm_DependenceVariance,wavelet-HHH_gldm_GrayLevelNonUniformity,wavelet-HHH_gldm_GrayLevelVariance,wavelet-HHH_gldm_HighGrayLevelEmphasis,wavelet-HHH_gldm_LargeDependenceEmphasis,wavelet-HHH_gldm_LargeDependenceHighGrayLevelEmphasis,wavelet-HHH_gldm_LargeDependenceLowGrayLevelEmphasis,wavelet-HHH_gldm_LowGrayLevelEmphasis,wavelet-HHH_gldm_SmallDependenceEmphasis,wavelet-HHH_gldm_SmallDependenceHighGrayLevelEmphasis,wavelet-HHH_gldm_SmallDependenceLowGrayLevelEmphasis,wavelet-HHH_ngtdm_Busyness,wavelet-HHH_ngtdm_Coarseness,wavelet-HHH_ngtdm_Complexity,wavelet-HHH_ngtdm_Contrast,wavelet-HHH_ngtdm_Strength,wavelet-LLL_firstorder_10Percentile,wavelet-LLL_firstorder_90Percentile,wavelet-LLL_firstorder_Energy,wavelet-LLL_firstorder_Entropy,wavelet-LLL_firstorder_InterquartileRange,wavelet-LLL_firstorder_Kurtosis,wavelet-LLL_firstorder_Maximum,wavelet-LLL_firstorder_MeanAbsoluteDeviation,wavelet-LLL_firstorder_Mean,wavelet-LLL_firstorder_Median,wavelet-LLL_firstorder_Minimum,wavelet-LLL_firstorder_Range,wavelet-LLL_firstorder_RobustMeanAbsoluteDeviation,wavelet-LLL_firstorder_RootMeanSquared,wavelet-LLL_firstorder_Skewness,wavelet-LLL_firstorder_TotalEnergy,wavelet-LLL_firstorder_Uniformity,wavelet-LLL_firstorder_Variance,wavelet-LLL_glcm_Autocorrelation,wavelet-LLL_glcm_ClusterProminence,wavelet-LLL_glcm_ClusterShade,wavelet-LLL_glcm_ClusterTendency,wavelet-LLL_glcm_Contrast,wavelet-LLL_glcm_Correlation,wavelet-LLL_glcm_DifferenceAverage,wavelet-LLL_glcm_DifferenceEntropy,wavelet-LLL_glcm_DifferenceVariance,wavelet-LLL_glcm_Id,wavelet-LLL_glcm_Idm,wavelet-LLL_glcm_Idmn,wavelet-LLL_glcm_Idn,wavelet-LLL_glcm_Imc1,wavelet-LLL_glcm_Imc2,wavelet-LLL_glcm_InverseVariance,wavelet-LLL_glcm_JointAverage,wavelet-LLL_glcm_JointEnergy,wavelet-LLL_glcm_JointEntropy,wavelet-LLL_glcm_MCC,wavelet-LLL_glcm_MaximumProbability,wavelet-LLL_glcm_SumAverage,wavelet-LLL_glcm_SumEntropy,wavelet-LLL_glcm_SumSquares,wavelet-LLL_glrlm_GrayLevelNonUniformity,wavelet-LLL_glrlm_GrayLevelNonUniformityNormalized,wavelet-LLL_glrlm_GrayLevelVariance,wavelet-LLL_glrlm_HighGrayLevelRunEmphasis,wavelet-LLL_glrlm_LongRunEmphasis,wavelet-LLL_glrlm_LongRunHighGrayLevelEmphasis,wavelet-LLL_glrlm_LongRunLowGrayLevelEmphasis,wavelet-LLL_glrlm_LowGrayLevelRunEmphasis,wavelet-LLL_glrlm_RunEntropy,wavelet-LLL_glrlm_RunLengthNonUniformity,wavelet-LLL_glrlm_RunLengthNonUniformityNormalized,wavelet-LLL_glrlm_RunPercentage,wavelet-LLL_glrlm_RunVariance,wavelet-LLL_glrlm_ShortRunEmphasis,wavelet-LLL_glrlm_ShortRunHighGrayLevelEmphasis,wavelet-LLL_glrlm_ShortRunLowGrayLevelEmphasis,wavelet-LLL_glszm_GrayLevelNonUniformity,wavelet-LLL_glszm_GrayLevelNonUniformityNormalized,wavelet-LLL_glszm_GrayLevelVariance,wavelet-LLL_glszm_HighGrayLevelZoneEmphasis,wavelet-LLL_glszm_LargeAreaEmphasis,wavelet-LLL_glszm_LargeAreaHighGrayLevelEmphasis,wavelet-LLL_glszm_LargeAreaLowGrayLevelEmphasis,wavelet-LLL_glszm_LowGrayLevelZoneEmphasis,wavelet-LLL_glszm_SizeZoneNonUniformity,wavelet-LLL_glszm_SizeZoneNonUniformityNormalized,wavelet-LLL_glszm_SmallAreaEmphasis,wavelet-LLL_glszm_SmallAreaHighGrayLevelEmphasis,wavelet-LLL_glszm_SmallAreaLowGrayLevelEmphasis,wavelet-LLL_glszm_ZoneEntropy,wavelet-LLL_glszm_ZonePercentage,wavelet-LLL_glszm_ZoneVariance,wavelet-LLL_gldm_DependenceEntropy,wavelet-LLL_gldm_DependenceNonUniformity,wavelet-LLL_gldm_DependenceNonUniformityNormalized,wavelet-LLL_gldm_DependenceVariance,wavelet-LLL_gldm_GrayLevelNonUniformity,wavelet-LLL_gldm_GrayLevelVariance,wavelet-LLL_gldm_HighGrayLevelEmphasis,wavelet-LLL_gldm_LargeDependenceEmphasis,wavelet-LLL_gldm_LargeDependenceHighGrayLevelEmphasis,wavelet-LLL_gldm_LargeDependenceLowGrayLevelEmphasis,wavelet-LLL_gldm_LowGrayLevelEmphasis,wavelet-LLL_gldm_SmallDependenceEmphasis,wavelet-LLL_gldm_SmallDependenceHighGrayLevelEmphasis,wavelet-LLL_gldm_SmallDependenceLowGrayLevelEmphasis,wavelet-LLL_ngtdm_Busyness,wavelet-LLL_ngtdm_Coarseness,wavelet-LLL_ngtdm_Complexity,wavelet-LLL_ngtdm_Contrast,wavelet-LLL_ngtdm_Strength,square_firstorder_10Percentile,square_firstorder_90Percentile,square_firstorder_Energy,square_firstorder_Entropy,square_firstorder_InterquartileRange,square_firstorder_Kurtosis,square_firstorder_Maximum,square_firstorder_MeanAbsoluteDeviation,square_firstorder_Mean,square_firstorder_Median,square_firstorder_Minimum,square_firstorder_Range,square_firstorder_RobustMeanAbsoluteDeviation,square_firstorder_RootMeanSquared,square_firstorder_Skewness,square_firstorder_TotalEnergy,square_firstorder_Uniformity,square_firstorder_Variance,square_glcm_Autocorrelation,square_glcm_ClusterProminence,square_glcm_ClusterShade,square_glcm_ClusterTendency,square_glcm_Contrast,square_glcm_Correlation,square_glcm_DifferenceAverage,square_glcm_DifferenceEntropy,square_glcm_DifferenceVariance,square_glcm_Id,square_glcm_Idm,square_glcm_Idmn,square_glcm_Idn,square_glcm_Imc1,square_glcm_Imc2,square_glcm_InverseVariance,square_glcm_JointAverage,square_glcm_JointEnergy,square_glcm_JointEntropy,square_glcm_MCC,square_glcm_MaximumProbability,square_glcm_SumAverage,square_glcm_SumEntropy,square_glcm_SumSquares,square_glrlm_GrayLevelNonUniformity,square_glrlm_GrayLevelNonUniformityNormalized,square_glrlm_GrayLevelVariance,square_glrlm_HighGrayLevelRunEmphasis,square_glrlm_LongRunEmphasis,square_glrlm_LongRunHighGrayLevelEmphasis,square_glrlm_LongRunLowGrayLevelEmphasis,square_glrlm_LowGrayLevelRunEmphasis,square_glrlm_RunEntropy,square_glrlm_RunLengthNonUniformity,square_glrlm_RunLengthNonUniformityNormalized,square_glrlm_RunPercentage,square_glrlm_RunVariance,square_glrlm_ShortRunEmphasis,square_glrlm_ShortRunHighGrayLevelEmphasis,square_glrlm_ShortRunLowGrayLevelEmphasis,square_glszm_GrayLevelNonUniformity,square_glszm_GrayLevelNonUniformityNormalized,square_glszm_GrayLevelVariance,square_glszm_HighGrayLevelZoneEmphasis,square_glszm_LargeAreaEmphasis,square_glszm_LargeAreaHighGrayLevelEmphasis,square_glszm_LargeAreaLowGrayLevelEmphasis,square_glszm_LowGrayLevelZoneEmphasis,square_glszm_SizeZoneNonUniformity,square_glszm_SizeZoneNonUniformityNormalized,square_glszm_SmallAreaEmphasis,square_glszm_SmallAreaHighGrayLevelEmphasis,square_glszm_SmallAreaLowGrayLevelEmphasis,square_glszm_ZoneEntropy,square_glszm_ZonePercentage,square_glszm_ZoneVariance,square_gldm_DependenceEntropy,square_gldm_DependenceNonUniformity,square_gldm_DependenceNonUniformityNormalized,square_gldm_DependenceVariance,square_gldm_GrayLevelNonUniformity,square_gldm_GrayLevelVariance,square_gldm_HighGrayLevelEmphasis,square_gldm_LargeDependenceEmphasis,square_gldm_LargeDependenceHighGrayLevelEmphasis,square_gldm_LargeDependenceLowGrayLevelEmphasis,square_gldm_LowGrayLevelEmphasis,square_gldm_SmallDependenceEmphasis,square_gldm_SmallDependenceHighGrayLevelEmphasis,square_gldm_SmallDependenceLowGrayLevelEmphasis,square_ngtdm_Busyness,square_ngtdm_Coarseness,square_ngtdm_Complexity,square_ngtdm_Contrast,square_ngtdm_Strength,squareroot_firstorder_10Percentile,squareroot_firstorder_90Percentile,squareroot_firstorder_Energy,squareroot_firstorder_Entropy,squareroot_firstorder_InterquartileRange,squareroot_firstorder_Kurtosis,squareroot_firstorder_Maximum,squareroot_firstorder_MeanAbsoluteDeviation,squareroot_firstorder_Mean,squareroot_firstorder_Median,squareroot_firstorder_Minimum,squareroot_firstorder_Range,squareroot_firstorder_RobustMeanAbsoluteDeviation,squareroot_firstorder_RootMeanSquared,squareroot_firstorder_Skewness,squareroot_firstorder_TotalEnergy,squareroot_firstorder_Uniformity,squareroot_firstorder_Variance,squareroot_glcm_Autocorrelation,squareroot_glcm_ClusterProminence,squareroot_glcm_ClusterShade,squareroot_glcm_ClusterTendency,squareroot_glcm_Contrast,squareroot_glcm_Correlation,squareroot_glcm_DifferenceAverage,squareroot_glcm_DifferenceEntropy,squareroot_glcm_DifferenceVariance,squareroot_glcm_Id,squareroot_glcm_Idm,squareroot_glcm_Idmn,squareroot_glcm_Idn,squareroot_glcm_Imc1,squareroot_glcm_Imc2,squareroot_glcm_InverseVariance,squareroot_glcm_JointAverage,squareroot_glcm_JointEnergy,squareroot_glcm_JointEntropy,squareroot_glcm_MCC,squareroot_glcm_MaximumProbability,squareroot_glcm_SumAverage,squareroot_glcm_SumEntropy,squareroot_glcm_SumSquares,squareroot_glrlm_GrayLevelNonUniformity,squareroot_glrlm_GrayLevelNonUniformityNormalized,squareroot_glrlm_GrayLevelVariance,squareroot_glrlm_HighGrayLevelRunEmphasis,squareroot_glrlm_LongRunEmphasis,squareroot_glrlm_LongRunHighGrayLevelEmphasis,squareroot_glrlm_LongRunLowGrayLevelEmphasis,squareroot_glrlm_LowGrayLevelRunEmphasis,squareroot_glrlm_RunEntropy,squareroot_glrlm_RunLengthNonUniformity,squareroot_glrlm_RunLengthNonUniformityNormalized,squareroot_glrlm_RunPercentage,squareroot_glrlm_RunVariance,squareroot_glrlm_ShortRunEmphasis,squareroot_glrlm_ShortRunHighGrayLevelEmphasis,squareroot_glrlm_ShortRunLowGrayLevelEmphasis,squareroot_glszm_GrayLevelNonUniformity,squareroot_glszm_GrayLevelNonUniformityNormalized,squareroot_glszm_GrayLevelVariance,squareroot_glszm_HighGrayLevelZoneEmphasis,squareroot_glszm_LargeAreaEmphasis,squareroot_glszm_LargeAreaHighGrayLevelEmphasis,squareroot_glszm_LargeAreaLowGrayLevelEmphasis,squareroot_glszm_LowGrayLevelZoneEmphasis,squareroot_glszm_SizeZoneNonUniformity,squareroot_glszm_SizeZoneNonUniformityNormalized,squareroot_glszm_SmallAreaEmphasis,squareroot_glszm_SmallAreaHighGrayLevelEmphasis,squareroot_glszm_SmallAreaLowGrayLevelEmphasis,squareroot_glszm_ZoneEntropy,squareroot_glszm_ZonePercentage,squareroot_glszm_ZoneVariance,squareroot_gldm_DependenceEntropy,squareroot_gldm_DependenceNonUniformity,squareroot_gldm_DependenceNonUniformityNormalized,squareroot_gldm_DependenceVariance,squareroot_gldm_GrayLevelNonUniformity,squareroot_gldm_GrayLevelVariance,squareroot_gldm_HighGrayLevelEmphasis,squareroot_gldm_LargeDependenceEmphasis,squareroot_gldm_LargeDependenceHighGrayLevelEmphasis,squareroot_gldm_LargeDependenceLowGrayLevelEmphasis,squareroot_gldm_LowGrayLevelEmphasis,squareroot_gldm_SmallDependenceEmphasis,squareroot_gldm_SmallDependenceHighGrayLevelEmphasis,squareroot_gldm_SmallDependenceLowGrayLevelEmphasis,squareroot_ngtdm_Busyness,squareroot_ngtdm_Coarseness,squareroot_ngtdm_Complexity,squareroot_ngtdm_Contrast,squareroot_ngtdm_Strength,logarithm_firstorder_10Percentile,logarithm_firstorder_90Percentile,logarithm_firstorder_Energy,logarithm_firstorder_Entropy,logarithm_firstorder_InterquartileRange,logarithm_firstorder_Kurtosis,logarithm_firstorder_Maximum,logarithm_firstorder_MeanAbsoluteDeviation,logarithm_firstorder_Mean,logarithm_firstorder_Median,logarithm_firstorder_Minimum,logarithm_firstorder_Range,logarithm_firstorder_RobustMeanAbsoluteDeviation,logarithm_firstorder_RootMeanSquared,logarithm_firstorder_Skewness,logarithm_firstorder_TotalEnergy,logarithm_firstorder_Uniformity,logarithm_firstorder_Variance,logarithm_glcm_Autocorrelation,logarithm_glcm_ClusterProminence,logarithm_glcm_ClusterShade,logarithm_glcm_ClusterTendency,logarithm_glcm_Contrast,logarithm_glcm_Correlation,logarithm_glcm_DifferenceAverage,logarithm_glcm_DifferenceEntropy,logarithm_glcm_DifferenceVariance,logarithm_glcm_Id,logarithm_glcm_Idm,logarithm_glcm_Idmn,logarithm_glcm_Idn,logarithm_glcm_Imc1,logarithm_glcm_Imc2,logarithm_glcm_InverseVariance,logarithm_glcm_JointAverage,logarithm_glcm_JointEnergy,logarithm_glcm_JointEntropy,logarithm_glcm_MCC,logarithm_glcm_MaximumProbability,logarithm_glcm_SumAverage,logarithm_glcm_SumEntropy,logarithm_glcm_SumSquares,logarithm_glrlm_GrayLevelNonUniformity,logarithm_glrlm_GrayLevelNonUniformityNormalized,logarithm_glrlm_GrayLevelVariance,logarithm_glrlm_HighGrayLevelRunEmphasis,logarithm_glrlm_LongRunEmphasis,logarithm_glrlm_LongRunHighGrayLevelEmphasis,logarithm_glrlm_LongRunLowGrayLevelEmphasis,logarithm_glrlm_LowGrayLevelRunEmphasis,logarithm_glrlm_RunEntropy,logarithm_glrlm_RunLengthNonUniformity,logarithm_glrlm_RunLengthNonUniformityNormalized,logarithm_glrlm_RunPercentage,logarithm_glrlm_RunVariance,logarithm_glrlm_ShortRunEmphasis,logarithm_glrlm_ShortRunHighGrayLevelEmphasis,logarithm_glrlm_ShortRunLowGrayLevelEmphasis,logarithm_glszm_GrayLevelNonUniformity,logarithm_glszm_GrayLevelNonUniformityNormalized,logarithm_glszm_GrayLevelVariance,logarithm_glszm_HighGrayLevelZoneEmphasis,logarithm_glszm_LargeAreaEmphasis,logarithm_glszm_LargeAreaHighGrayLevelEmphasis,logarithm_glszm_LargeAreaLowGrayLevelEmphasis,logarithm_glszm_LowGrayLevelZoneEmphasis,logarithm_glszm_SizeZoneNonUniformity,logarithm_glszm_SizeZoneNonUniformityNormalized,logarithm_glszm_SmallAreaEmphasis,logarithm_glszm_SmallAreaHighGrayLevelEmphasis,logarithm_glszm_SmallAreaLowGrayLevelEmphasis,logarithm_glszm_ZoneEntropy,logarithm_glszm_ZonePercentage,logarithm_glszm_ZoneVariance,logarithm_gldm_DependenceEntropy,logarithm_gldm_DependenceNonUniformity,logarithm_gldm_DependenceNonUniformityNormalized,logarithm_gldm_DependenceVariance,logarithm_gldm_GrayLevelNonUniformity,logarithm_gldm_GrayLevelVariance,logarithm_gldm_HighGrayLevelEmphasis,logarithm_gldm_LargeDependenceEmphasis,logarithm_gldm_LargeDependenceHighGrayLevelEmphasis,logarithm_gldm_LargeDependenceLowGrayLevelEmphasis,logarithm_gldm_LowGrayLevelEmphasis,logarithm_gldm_SmallDependenceEmphasis,logarithm_gldm_SmallDependenceHighGrayLevelEmphasis,logarithm_gldm_SmallDependenceLowGrayLevelEmphasis,logarithm_ngtdm_Busyness,logarithm_ngtdm_Coarseness,logarithm_ngtdm_Complexity,logarithm_ngtdm_Contrast,logarithm_ngtdm_Strength,exponential_firstorder_10Percentile,exponential_firstorder_90Percentile,exponential_firstorder_Energy,exponential_firstorder_Entropy,exponential_firstorder_InterquartileRange,exponential_firstorder_Kurtosis,exponential_firstorder_Maximum,exponential_firstorder_MeanAbsoluteDeviation,exponential_firstorder_Mean,exponential_firstorder_Median,exponential_firstorder_Minimum,exponential_firstorder_Range,exponential_firstorder_RobustMeanAbsoluteDeviation,exponential_firstorder_RootMeanSquared,exponential_firstorder_Skewness,exponential_firstorder_TotalEnergy,exponential_firstorder_Uniformity,exponential_firstorder_Variance,exponential_glcm_Autocorrelation,exponential_glcm_ClusterProminence,exponential_glcm_ClusterShade,exponential_glcm_ClusterTendency,exponential_glcm_Contrast,exponential_glcm_Correlation,exponential_glcm_DifferenceAverage,exponential_glcm_DifferenceEntropy,exponential_glcm_DifferenceVariance,exponential_glcm_Id,exponential_glcm_Idm,exponential_glcm_Idmn,exponential_glcm_Idn,exponential_glcm_Imc1,exponential_glcm_Imc2,exponential_glcm_InverseVariance,exponential_glcm_JointAverage,exponential_glcm_JointEnergy,exponential_glcm_JointEntropy,exponential_glcm_MCC,exponential_glcm_MaximumProbability,exponential_glcm_SumAverage,exponential_glcm_SumEntropy,exponential_glcm_SumSquares,exponential_glrlm_GrayLevelNonUniformity,exponential_glrlm_GrayLevelNonUniformityNormalized,exponential_glrlm_GrayLevelVariance,exponential_glrlm_HighGrayLevelRunEmphasis,exponential_glrlm_LongRunEmphasis,exponential_glrlm_LongRunHighGrayLevelEmphasis,exponential_glrlm_LongRunLowGrayLevelEmphasis,exponential_glrlm_LowGrayLevelRunEmphasis,exponential_glrlm_RunEntropy,exponential_glrlm_RunLengthNonUniformity,exponential_glrlm_RunLengthNonUniformityNormalized,exponential_glrlm_RunPercentage,exponential_glrlm_RunVariance,exponential_glrlm_ShortRunEmphasis,exponential_glrlm_ShortRunHighGrayLevelEmphasis,exponential_glrlm_ShortRunLowGrayLevelEmphasis,exponential_glszm_GrayLevelNonUniformity,exponential_glszm_GrayLevelNonUniformityNormalized,exponential_glszm_GrayLevelVariance,exponential_glszm_HighGrayLevelZoneEmphasis,exponential_glszm_LargeAreaEmphasis,exponential_glszm_LargeAreaHighGrayLevelEmphasis,exponential_glszm_LargeAreaLowGrayLevelEmphasis,exponential_glszm_LowGrayLevelZoneEmphasis,exponential_glszm_SizeZoneNonUniformity,exponential_glszm_SizeZoneNonUniformityNormalized,exponential_glszm_SmallAreaEmphasis,exponential_glszm_SmallAreaHighGrayLevelEmphasis,exponential_glszm_SmallAreaLowGrayLevelEmphasis,exponential_glszm_ZoneEntropy,exponential_glszm_ZonePercentage,exponential_glszm_ZoneVariance,exponential_gldm_DependenceEntropy,exponential_gldm_DependenceNonUniformity,exponential_gldm_DependenceNonUniformityNormalized,exponential_gldm_DependenceVariance,exponential_gldm_GrayLevelNonUniformity,exponential_gldm_GrayLevelVariance,exponential_gldm_HighGrayLevelEmphasis,exponential_gldm_LargeDependenceEmphasis,exponential_gldm_LargeDependenceHighGrayLevelEmphasis,exponential_gldm_LargeDependenceLowGrayLevelEmphasis,exponential_gldm_LowGrayLevelEmphasis,exponential_gldm_SmallDependenceEmphasis,exponential_gldm_SmallDependenceHighGrayLevelEmphasis,exponential_gldm_SmallDependenceLowGrayLevelEmphasis,exponential_ngtdm_Busyness,exponential_ngtdm_Coarseness,exponential_ngtdm_Complexity,exponential_ngtdm_Contrast,exponential_ngtdm_Strength,gradient_firstorder_10Percentile,gradient_firstorder_90Percentile,gradient_firstorder_Energy,gradient_firstorder_Entropy,gradient_firstorder_InterquartileRange,gradient_firstorder_Kurtosis,gradient_firstorder_Maximum,gradient_firstorder_MeanAbsoluteDeviation,gradient_firstorder_Mean,gradient_firstorder_Median,gradient_firstorder_Minimum,gradient_firstorder_Range,gradient_firstorder_RobustMeanAbsoluteDeviation,gradient_firstorder_RootMeanSquared,gradient_firstorder_Skewness,gradient_firstorder_TotalEnergy,gradient_firstorder_Uniformity,gradient_firstorder_Variance,gradient_glcm_Autocorrelation,gradient_glcm_ClusterProminence,gradient_glcm_ClusterShade,gradient_glcm_ClusterTendency,gradient_glcm_Contrast,gradient_glcm_Correlation,gradient_glcm_DifferenceAverage,gradient_glcm_DifferenceEntropy,gradient_glcm_DifferenceVariance,gradient_glcm_Id,gradient_glcm_Idm,gradient_glcm_Idmn,gradient_glcm_Idn,gradient_glcm_Imc1,gradient_glcm_Imc2,gradient_glcm_InverseVariance,gradient_glcm_JointAverage,gradient_glcm_JointEnergy,gradient_glcm_JointEntropy,gradient_glcm_MCC,gradient_glcm_MaximumProbability,gradient_glcm_SumAverage,gradient_glcm_SumEntropy,gradient_glcm_SumSquares,gradient_glrlm_GrayLevelNonUniformity,gradient_glrlm_GrayLevelNonUniformityNormalized,gradient_glrlm_GrayLevelVariance,gradient_glrlm_HighGrayLevelRunEmphasis,gradient_glrlm_LongRunEmphasis,gradient_glrlm_LongRunHighGrayLevelEmphasis,gradient_glrlm_LongRunLowGrayLevelEmphasis,gradient_glrlm_LowGrayLevelRunEmphasis,gradient_glrlm_RunEntropy,gradient_glrlm_RunLengthNonUniformity,gradient_glrlm_RunLengthNonUniformityNormalized,gradient_glrlm_RunPercentage,gradient_glrlm_RunVariance,gradient_glrlm_ShortRunEmphasis,gradient_glrlm_ShortRunHighGrayLevelEmphasis,gradient_glrlm_ShortRunLowGrayLevelEmphasis,gradient_glszm_GrayLevelNonUniformity,gradient_glszm_GrayLevelNonUniformityNormalized,gradient_glszm_GrayLevelVariance,gradient_glszm_HighGrayLevelZoneEmphasis,gradient_glszm_LargeAreaEmphasis,gradient_glszm_LargeAreaHighGrayLevelEmphasis,gradient_glszm_LargeAreaLowGrayLevelEmphasis,gradient_glszm_LowGrayLevelZoneEmphasis,gradient_glszm_SizeZoneNonUniformity,gradient_glszm_SizeZoneNonUniformityNormalized,gradient_glszm_SmallAreaEmphasis,gradient_glszm_SmallAreaHighGrayLevelEmphasis,gradient_glszm_SmallAreaLowGrayLevelEmphasis,gradient_glszm_ZoneEntropy,gradient_glszm_ZonePercentage,gradient_glszm_ZoneVariance,gradient_gldm_DependenceEntropy,gradient_gldm_DependenceNonUniformity,gradient_gldm_DependenceNonUniformityNormalized,gradient_gldm_DependenceVariance,gradient_gldm_GrayLevelNonUniformity,gradient_gldm_GrayLevelVariance,gradient_gldm_HighGrayLevelEmphasis,gradient_gldm_LargeDependenceEmphasis,gradient_gldm_LargeDependenceHighGrayLevelEmphasis,gradient_gldm_LargeDependenceLowGrayLevelEmphasis,gradient_gldm_LowGrayLevelEmphasis,gradient_gldm_SmallDependenceEmphasis,gradient_gldm_SmallDependenceHighGrayLevelEmphasis,gradient_gldm_SmallDependenceLowGrayLevelEmphasis,gradient_ngtdm_Busyness,gradient_ngtdm_Coarseness,gradient_ngtdm_Complexity,gradient_ngtdm_Contrast,gradient_ngtdm_Strength -113_HM10395,p4,1.3.6.1.4.1.14519.5.2.1.6834.5010.339023390306606021995936229543,"P4^P113^S303^I10349, Gated, 40.0%B",CT,99,2.25.186899387610254289948150314209581209847.35,RTSTRUCT,1.3.6.1.4.1.14519.5.2.1.6834.5010.339023390306606021995936229543,Tumor_c40,1,,v3.1.4,1.26.4,2.4.0,1.8.0,3.12.8,"{'minimumROIDimensions': 2, 'minimumROISize': None, 'normalize': False, 'normalizeScale': 1, 'removeOutliers': None, 'resampledPixelSpacing': [1.0, 1.0, 1.0], 'interpolator': 'sitkBSpline', 'preCrop': False, 'padDistance': 5, 'distances': [1], 'force2D': False, 'force2Ddimension': 0, 'resegmentRange': None, 'label': 1, 'additionalInfo': True, 'binWidth': 25}","{'Original': {}, 'Wavelet': {}, 'Square': {}, 'SquareRoot': {}, 'Logarithm': {}, 'Exponential': {}, 'Gradient': {}}",3a75b972baf9f9ce76fab0a87d320a69b2309234,3D,"(0.9766, 0.9766, 3.0)","(51, 92, 28)",-291.6146175861649,-1000.0,985.0,833db3db041c18cfaa07b7c7a93190356b5c6778,"(0.9766, 0.9766, 3.0)","(51, 92, 28)","(0, 0, 0, 51, 92, 28)",23611,1,"(22.300961416289017, 43.44466562195587, 14.644487738765829)","(58.89951891914787, 142.1144604464021, -944.0665367837025)","(1.0, 1.0, 1.0)","(50, 90, 84)",-292.2441031746032,-1073.0,1065.0,"(1.0, 1.0, 1.0)","(50, 90, 84)","(0, 0, 0, 50, 90, 84)",66504,1,"(21.75798448213641, 42.57127390833634, 44.74237639841213)","(58.89008448213643, 142.26937390833632, -944.2576236015879)",-23.043019968723687,-843.0,346.0,0.7986913522495777,0.41971778598136783,32.89111421471219,78.36483302180646,69.35416353759881,96.67471230885562,83.02409288875127,100.70253224224304,66346.66666666667,62.58931445499896,0.4738658046518448,16725.335054196203,0.2520900580917836,66504.0,-158.0,53.0,918255309.0,3.323349579407955,62.0,11.533201334550002,346.0,74.2215248493947,-23.043019968723687,15.0,-843.0,1189.0,32.48661926583811,117.50540406194251,-2.7306320124467955,918255309.0,0.16228558301164983,13276.539214481374,1163.1853576157607,57152.82519210049,-1561.4201342365932,65.897375899891,7.269303715591321,0.7990603796043161,1.5818940675197655,2.369985837076647,4.687687158085337,0.5748946239714018,0.5341861526470038,0.9969529448619591,0.9697702633203072,-0.1894945181178462,0.8218650710379204,0.42575752763610836,33.88983117581226,0.0497804628200677,5.797042037276695,0.8313584094788133,0.1269834353527784,67.7796623516245,4.061966319302024,18.291669903870588,6093.8847305679565,0.12687897610070278,26.66994237899032,1113.0890731466106,2.8502924147984525,3426.837653849391,0.0027199049202998255,0.0011974589910010295,4.707498016004693,28955.58999629492,0.6011287003380148,0.7187942425672488,0.8602662968747112,0.8024588538109619,869.4896585186059,0.0010280073312763454,308.44654088050316,0.04408898526022058,49.54476044630256,763.6626643796455,89810.4311034877,113578243.05831903,71.11487760279563,0.002429993162576102,2362.0383076043454,0.33762697364270233,0.5999167539741803,425.8085531683731,0.0016521154302165868,6.9523358642667725,0.10519667989895344,89720.06700226644,6.9698830796343705,3875.6921388187175,0.0582775793759581,26.81879576042845,10792.640412606761,21.330437548744886,1150.328431372549,95.89732948394082,120592.51987850355,0.07757982570317314,0.001094076325208488,0.10114182145210007,83.28419760545111,0.00022612598452353505,2.3043544403253517,0.00015625867216135437,1113.1794747457725,0.018031942249827432,0.4481900429281053,-40.78768892791091,12.352070283708619,104295620.09266213,2.043518041589367,17.384373454456284,128.5485376519331,735.4923424588355,18.40175472050726,-7.094249311848214,-2.1879771183300285,-672.70621498345,1408.1985574422856,8.741876071107823,39.601273437645496,0.9930339473154817,104295620.09266213,0.32255590595220507,1517.932484584508,740.7554709642268,4071.4566056759472,-8.797118595521352,5.855237793427216,3.108404792281685,0.27480480588935374,0.6264527210524489,1.383600808304623,2.6968220995947334,0.7519461959980636,0.7417801442688969,0.9992849788889935,0.9896695910982076,-0.21918727066792318,0.7436013850820327,0.4053522980823769,27.204203749413974,0.15156184445604332,3.5393976256021458,0.8236971992582035,0.2549966078181254,54.40840749882793,2.7409694947120826,2.240910646427225,8938.200260168407,0.26375373813242625,4.285959714968554,740.6341912251161,6.605122513712289,4924.747920726258,0.009263705033965815,0.0016369404394407352,4.232412881800972,12660.095540188939,0.3645471338140738,0.5093158074933608,2.4794334009361023,0.6132689098096038,452.99069812528586,0.0010933941399992953,87.65183752417795,0.0847696687854719,53.21895869265103,810.0009671179884,1303834.5087040619,978454736.0241779,1740.0726629852716,0.005110704935390999,187.41392649903287,0.18125137959287513,0.4244694985718572,366.04254879771923,0.0025686844880991847,7.169599562392703,0.015547936966197521,1299697.8045972711,6.289814599098732,3088.4187116564417,0.04643959328245582,34.01519405291893,21451.257969445447,2.566178129046639,743.126353302057,223.2919523637676,167115.2102580296,0.3008553236331289,0.0015060329388921737,0.020363671923519934,15.985788842824117,6.808442755400746e-05,2.619931228270794,0.0001329301120708055,750.0382791057244,0.0008071923153566478,0.9727627337614864,-56.28342326476618,48.3262360404268,194650628.1263639,2.9530363671441187,48.95059821868972,13.654508013283648,521.6506157816609,35.67186678931692,-2.6934528840807004,-2.6249087564990563,-578.8454558294251,1100.4960716110859,20.807778762025826,54.10084158756717,0.43119827591942633,194650628.1263639,0.17521694381421665,2919.646372044275,596.5494908645328,2296.2050672350183,26.39122579740147,11.92856045539677,6.340110209405536,0.30266334856282257,1.650211313354613,2.351480071436497,3.373541372122822,0.530450409587491,0.4773246769974028,0.9969870850903857,0.9660590977784508,-0.0951116281549449,0.5440810575027168,0.4224273872680065,24.395744939013113,0.041206607739232244,5.572699466589086,0.7688073085517632,0.08843945720233083,48.791489878026226,3.529169025007495,4.567167666200576,8100.121826188348,0.15704399558457524,5.601782705082903,600.7938524775437,2.3089562907321057,1381.8008148757335,0.004006878732901537,0.001779308507142412,4.032990947438012,34326.00119359374,0.654807206775762,0.7744508138319037,0.5496331792301399,0.831897523194326,500.5152938735906,0.0014914010691089578,408.0005735041101,0.0779966686109941,20.189399905954534,630.4144523035749,116112.79487669661,69040257.9443701,195.9295606513824,0.002122240965925884,1232.2819728541388,0.23557292541658167,0.48936823603456026,315.9021878246459,0.001097142508608918,6.84348281484619,0.07865692289185613,115951.16334261716,6.45231963012638,5192.875436063996,0.07808365566077223,14.783907446366896,11652.627631420666,4.753730265461946,599.7772615181042,61.90223144472513,36925.207731865754,0.10485837129175266,0.0017620974020155892,0.0832382671761528,51.81647184792083,0.00016842092518250094,4.730976276607744,0.00011075683765323118,1175.669904465022,0.005802351120797542,0.19639183477662261,-6.662364243848669,6.9515859971864655,2741667.5211386667,1.0552779122544145,6.35466066930114,12.031835788124736,86.51046498424131,4.456535015873026,0.06696561911709643,0.031553541361968265,-95.50779208082703,182.01825706506833,2.703851863601278,6.420716727056678,-0.08037724833820499,2741667.5211386667,0.4940233929901193,41.22111889496168,20.299940252264317,0.7168786524638683,-0.006151838865261119,0.5673573792967816,0.4779700934274359,0.08519942019170545,0.46713803944019777,0.9928608791321698,0.2470694315053684,0.7679823386994484,0.7674732507406525,0.9926711105067665,0.9482090009785608,-0.045961669910471355,0.21949172808191608,0.4597742591165135,4.5030648714741925,0.2593757807064318,2.0460379757797114,0.27941619679799906,0.2899239429539148,9.006129742948383,1.551435388345328,0.2613318681810544,16499.76763472257,0.48874199390789275,0.2767253521083934,20.521005645297635,6.816668653607232,140.1554159693315,0.34889352779837546,0.05162623694524874,3.051571407408471,12155.725875933547,0.3416375825415268,0.5072499976866631,2.0519227192220177,0.5571055179716974,11.427039128333645,0.028940332912879056,59.42767295597484,0.3737589494086468,2.6263992721806892,23.937106918238992,13734770.779874213,282312828.0440252,702032.3493859101,0.084727579186811,44.320754716981135,0.27874688501246,0.5362031733676872,14.26347763832353,0.041568623048648175,3.992317873507937,0.0023908336340671237,13559825.879909813,4.987996297399658,5046.056477805846,0.07587598456943712,14.605000672951997,32854.53172741489,0.264037810313824,20.536915072777578,205.3625345843859,4225.768780825213,10.48719549376073,0.05138091673700837,0.00909864722783638,0.19468196090799617,0.0005193785538299025,272.7545909726342,6.682130098419884e-05,14.235923641075956,0.0043509825784530465,0.0028751678949236912,-57.97808132131747,35.453243096005075,182163535.80260193,2.8173677618101665,40.60812393797857,12.744674355228552,629.184359726453,32.7858538294872,-7.34400749559726,-5.155732630096323,-398.9743262211971,1028.1586859476502,17.598304111682225,52.33676079174799,0.42103431895975457,182163535.80260193,0.2036183444587833,2685.2020840772616,264.55710261685414,1775.878078335087,12.707779284145923,11.661073146145359,4.660427281357953,0.42439904173291987,1.3484537432172863,2.151206854207518,2.7083344785871124,0.5819016038484254,0.5412104685428443,0.9974521432013675,0.9702002682535161,-0.11454718256784702,0.6092545059691865,0.4471770619499057,16.211318829828947,0.05934581561039671,5.205912575873573,0.6233856874910795,0.12594850410283215,32.42263765965789,3.4555396824705564,4.0803751068758265,8350.574666512608,0.17297693521125657,5.4852964706288185,267.34777627461307,2.820097736112417,752.9209599732283,0.011165019324454155,0.004172001712534177,4.133046074004534,29064.573534930234,0.5931999409664978,0.723299466081855,0.7905506970709826,0.7942356872827154,212.69455250517382,0.0033672602283743355,324.2616266255235,0.07147049297454783,21.186342899313555,295.1227683491294,168506.1282785982,45069137.83072515,633.4693478645279,0.0052293757332591145,1149.334582323121,0.2533247922246244,0.5125531027755548,157.75906072248912,0.0028376285300734496,6.895758357965711,0.06822146036328641,168291.26708873129,6.5192741801598375,4188.233008540839,0.06297715939704138,20.57815369754818,13541.434379886925,4.383140141627997,267.0098640683267,87.72329483940815,23433.378323108383,0.3342934414646447,0.00408558143037703,0.07146127741185067,20.53174327255382,0.0003539937476815866,7.16502629109687,0.00012075231039215825,809.3106307910915,0.0051128267716892325,0.2188670846661566,-5.800674353278586,6.607045045207655,2431645.1514909365,1.0480111149608033,5.433210676184256,14.456432230235578,75.38198873894169,4.0476793399955575,0.22798326610892597,0.057056049948860085,-80.9046262313387,156.28661497028037,2.3538758638235056,6.046808511248145,0.05360347402346265,2431645.1514909365,0.49510779687497036,36.511916802077316,20.348210515806723,0.7876223751200402,-0.009102802652176918,0.5957222967096132,0.4447617994051296,0.144865416187545,0.4363875713772721,0.9875319892858244,0.24617044199141505,0.7829567946463933,0.7826108569358148,0.9931777256410297,0.9515988687469442,-0.04310329472909057,0.2139289059542355,0.4311464386093307,4.506713864676544,0.25936764536160317,2.034727101328722,0.2682026700214713,0.29033476748960385,9.01342772935309,1.5797923388225308,0.2601210240286857,15643.814460860627,0.49024178870402635,0.2753353568791306,20.5267302002199,7.545534188352925,155.65191984651128,0.38478277302761626,0.05157674439415283,3.1519092122446564,10620.534533863964,0.31850100573209716,0.47956051226531193,2.432748439147485,0.5354988576278011,10.967594933932181,0.027845313292402918,42.12328767123287,0.2885156689810471,2.7568024019515858,22.945205479452056,14984027.397260275,308709709.7808219,764088.8488769395,0.09288623497344145,40.6986301369863,0.2787577406642897,0.5174068813925145,11.320721063677174,0.05927530402855655,4.28252556011941,0.002195356670275472,14776540.907487333,5.101601740898333,4661.782358955852,0.07009777395278258,17.114163332077723,32926.64892337303,0.26262614883527635,20.56571033321304,228.27652472031758,4710.877962227836,11.622737842090654,0.05127855592219847,0.00833851037144199,0.17320230449427979,0.0005109860767271539,254.74117848176414,7.13978175174493e-05,13.272363571863524,0.004034017787579726,0.0030837248331078704,-19.783110355974003,20.06196269150149,19266824.73284991,1.597694531465428,19.823604482564065,5.590834952377925,117.40458376857575,12.74722717723742,0.0823706193088814,0.08067317597449725,-135.7494104282188,253.15399419679454,8.338689605320324,17.020847851709114,-0.0935832356980328,19266824.73284991,0.392290835886405,289.7024766721054,42.30996227501741,7.3955239085598246,-0.12492945092163853,1.1624898278041167,1.0208200886290384,0.06425912057225977,0.7028151152208661,1.4260252408311105,0.5074459366834183,0.6931829210969561,0.679093510769712,0.9918657260967981,0.9433611293580472,-0.0441311186544126,0.2514076652665808,0.49496967290671623,6.50188776077256,0.16789552711036276,3.1000067064051526,0.2855201046937702,0.2159969097135617,13.003775521545116,2.0906524953352483,0.5458274791082889,14300.073218260139,0.3515160760066219,0.7015616340496637,42.94046165030113,4.781850911901214,204.36978719425161,0.1166796176265806,0.025152630383713608,3.284573808585066,18954.497587563725,0.45334124528423697,0.6107255549695101,1.5288093609798195,0.6811696057106107,29.33385450375164,0.01738727361043762,603.6,0.34890173410404623,3.072418056066023,44.61156069364162,984609.2843930636,41906269.666473985,23688.56693573672,0.03187525091301084,293.36878612716765,0.16957733302148417,0.3644752009150706,16.29851474730193,0.011845944922782957,5.041419868746839,0.026013472873812102,983131.5263603864,5.266299971707534,4703.887224828582,0.07073089174829457,17.582703774836006,26088.909749789487,0.5560536834289237,42.82892758330326,141.26236015878743,6021.4123812101525,3.408060868677558,0.024786972509634433,0.028791413414009984,1.2658335034179629,0.0008409226861629576,116.4440609919007,7.711560320483055e-05,34.73185358286678,0.006106297997683957,0.0059195527668089165,-2.727651915076569,2.697579987917129,363634.8253155718,0.9999996548843075,2.6856044900819347,6.542380104201547,24.880114340014675,1.7362820471228624,-0.0053501922139177,0.0026564409709276156,-22.85118250625188,47.73129684626656,1.1260471820156097,2.3383464174101847,0.018258602737045892,363634.8253155718,0.5000002392159497,5.467835343258319,2.2542688598204985,0.5068058576747397,-0.0002721479912293084,0.5068058775254034,0.49319371069947154,0.013612160209040972,0.49319371069947154,0.9881293211361982,0.24600939500231728,0.753403144650264,0.753403144650264,0.9013612578601057,0.8356020964335096,-0.011870689635677212,0.06705563288435513,0.49319371069947154,1.5002885717234113,0.2539908108852452,1.9881287166016028,0.057547488652683894,0.2644962823058651,3.0005771434468227,1.4949350059021318,0.2499998970562187,17810.19952058708,0.5000002690981288,0.2499998654509356,2.500538092612875,5.243444928819185,13.116299464400205,3.2752312949239317,0.6248654768467813,2.8192406256221934,13512.148119282514,0.3736240671922607,0.5356126641312495,1.4965006221242148,0.5969547875586626,1.4924301688124513,0.3730859422452155,2.6,0.52,0.24,2.2,442225231.6,1106520677.8,276151370.05,0.7,1.4,0.28,0.4500000003618074,1.050000000903735,0.30000000022632545,2.321928094887361,7.51834476121737e-05,265313950.95999998,4.537004720796886,6887.979760615903,0.1035724130971957,8.325982310406502,33252.01590881751,0.2499998803920252,2.501037531577048,179.2573078311079,448.49345904005776,111.94827002887044,0.624740617105738,0.007473779354068956,0.018717656829459216,0.00466280998522139,16339.16661679276,6.107589555950051e-05,0.4923935829245731,0.12309831543010134,6.107590618062138e-05,-461.25596089240423,135.4818808261219,7105356139.690095,4.637182820872559,171.87846952897587,11.04241295085689,888.3704631214168,210.17204320540154,-66.3213551214407,51.281661423341205,-2300.6125111298766,3188.9829742512934,93.38093319840343,326.86546807340386,-2.6850845900330746,7105356139.690095,0.06996464417205407,102442.51207370116,8522.610794072169,3288226.911030612,-33100.24029686041,510.45850405492115,47.306942330671866,0.8280889633919517,3.7981722462562746,3.364668087438716,32.382519626539555,0.4261705944678307,0.3615971833705917,0.9972508093402939,0.973011093167454,-0.18754398283270474,0.8908196653701956,0.3407430406229536,91.68836597243492,0.011766424274618577,8.153227361568883,0.8482182318134756,0.03719240149539756,183.3767319448698,5.424542317236619,139.44136159639794,3423.8691393187646,0.060960963347920866,184.6159711842211,8265.288790603048,1.7058135589872352,14791.421083907997,0.0002535938646208515,0.00017542507631306353,5.494393625187783,42106.923855025605,0.7490108508088322,0.8432459817338921,0.28962389787901394,0.8881741988635353,7237.408699809093,0.0001628325875685799,303.89834391569025,0.01989254067655235,324.02615798261616,6373.204097663153,12434.643843686588,116703336.4228579,1.3257738074306928,0.00032407612918371827,7489.889572560058,0.49027227679256774,0.7278881432808801,4330.461921894344,0.0002749372570427087,7.559491513000524,0.22971550583423553,12415.69340021043,7.674980327358473,6552.676440514856,0.09853056117699471,12.091571344582405,4652.928696018284,164.04378739248267,8416.961957175508,37.85333213039817,351626.0011427884,0.00416954562863214,0.00016529550360749767,0.21915739931255346,1430.0788428592507,7.052096303223794e-05,0.2652394259322411,0.0002027772151138754,14793.223561711839,0.047676611843895156,3.8547216679964422,0.0456663560111836,23.561043802423118,142126684.13998175,0.7769118670707766,2.942218080149115,47.17600500236458,662.3010251630942,19.661708122436238,12.868145371631293,1.14165890027959,0.0,662.3010251630942,2.1879171374634807,46.22893922929722,5.954010120828487,142126684.13998175,0.815601045891564,1971.5256569606195,3.372056738711637,3979.851052283622,154.76639796984307,7.968336825602901,1.4586991196533405,0.6869139787643099,0.2869981819442175,0.7381453231643567,1.37359432915528,0.9333086211684857,0.9253898744695422,0.9981807915947505,0.9909451318570686,-0.28104178335469593,0.5536411927232145,0.048297590130953694,1.3206736924709286,0.7921810019656775,1.1496609333732042,0.7206634437341699,0.8896988275557879,2.6413473849418576,0.9174175441311293,2.356758986314061,3367.776151602139,0.2800315076235382,11.921076595103113,21.77363286302598,100.78084821214406,124.70534868889999,100.17407808615872,0.5419933786925355,5.136395634961101,3368.3016259202245,0.28841929070234656,0.17692631559466637,66.80673036885449,0.5518158243686053,20.659308935182022,0.12041848782486217,177.13136601618277,0.08430812280636972,19.806870144789514,70.0271299381247,1713885.8039029033,1714822.3888624464,1713742.0444706513,0.05753261430669158,755.6634935744884,0.3596684881363581,0.6209555938720609,50.31546769453462,0.029612795294470706,5.940208303109792,0.031592084686635394,1712883.8599461147,3.0879982106967505,23455.69490556959,0.3526960018280042,56.86812581992736,54240.73195597257,2.8332863888989817,4.770675448093348,558.6243534223505,580.833408516781,557.5009393479172,0.9132346443152735,0.029324567241162565,1.8791228686668584,0.0035683980547424735,67.4867574468563,0.0002641444191946821,90.48930782869904,0.0017838855018527154,0.7933529428814686,-411.7450667585466,238.47222060441337,4645958021.0,4.83075908300708,363.03449140556864,3.317310323495062,609.3094451918499,221.23753446110362,3.5139253756683613,126.86607111438424,-951.0725524375099,1560.3819976293598,158.96273735632334,264.3100987401774,-1.126321360650408,4645958021.0,0.051541551262380816,69847.4806244966,1707.846618949099,523859.26500469714,-9118.742710226392,363.76493898358325,42.762172468353384,0.7882637181427005,4.533829725417451,3.690702885594677,21.55122677490221,0.34236335275759233,0.26271677903504237,0.9900533807986398,0.9378684161056109,-0.13690957199121015,0.8334602345218722,0.2604567238632084,40.34292286597185,0.005691967439257559,8.83762584575758,0.8208972907602128,0.020403967616308725,80.68584573194367,5.720091023101759,101.63177786298411,2829.573973956757,0.04734776239764879,114.52299463371926,1648.5291526259725,1.4014873222004256,2455.38980144056,0.0015251129088306435,0.0012181482817925195,5.397380026913738,49394.34529409604,0.8258622705029363,0.8979147581637659,0.15600391355015153,0.9262903029766526,1503.6591503755592,0.0011569784462110504,576.2114110550776,0.028488648821075727,116.87381287437323,1282.1547018688816,4153.477603085138,9260515.979531296,1.8729990078778125,0.001685942745948183,8157.14090774251,0.40329975812036534,0.6592778496526892,821.0263195610464,0.0011201684437626182,7.260969822172059,0.30413208228076505,4142.666362568124,7.512019249617046,9776.31832671719,0.1470034633513351,5.9917652735612466,3427.719325153374,111.7636069930153,1683.6075724768434,19.345061951160833,39850.4477625406,0.01351449680750479,0.001174544749031896,0.2727805304459975,365.5221532069831,0.00043180627762595154,2.1880369964961686,0.0001273840732066146,5196.850487912348,0.16752197770600627,0.33508359094628193,-779.3123648552629,613.2813852225288,21704144793.959618,5.360776277325471,1060.168149976003,1.710354394045484,899.2971548111383,516.8419450881097,98.34701030050404,426.2682007194575,-1035.9488650463977,1935.2460198575359,438.9891116209917,571.2779416507688,-0.6451756193278911,21704144793.959618,0.033410608405621225,316686.35218169173,2637.960953146693,5943733.409867232,-54841.004067926966,1653.5949280173368,258.60699572612333,0.7285878946311451,9.809244236124568,4.552459844759858,159.30542346468582,0.27353457432816575,0.1977423533123973,0.9651408962946472,0.9037712006450985,-0.12387967018744603,0.8359450988256326,0.1983350082309883,47.84387089763747,0.002480455856786504,9.955598986163514,0.820624244779438,0.011483918086624285,95.68774179527495,6.507260844014493,478.0504809358653,1954.6369595332196,0.03171291677489569,504.70537258373946,2617.407730617304,1.269020475171745,3501.0803404032176,0.005186458469234327,0.0038483112238893186,5.7805925406881835,53665.95635154148,0.8702758538001432,0.9264578648826212,0.10164010928989867,0.9467161935524698,2445.324013266989,0.003586418151875453,588.2401502319758,0.021659921578613146,427.9813166335991,2107.7224758818766,551.162309448413,2332748.1656602104,0.2547959646896143,0.002941105553621795,12728.814566610206,0.46869484375175663,0.7120320418689743,1438.6755824886802,0.001740669614023757,7.346194504981018,0.4083664140502827,545.1657800522103,7.701290531882027,12681.72636232407,0.1906911819187428,3.6854341147795786,2221.939101407434,507.1889527424089,2664.713505954529,12.165734391916276,41112.56479309515,0.06053951742577071,0.003930832234687862,0.3645143401594836,784.9941242989851,0.0010097744266188789,3.1829382652313805,7.633029913415448e-05,16444.28177374183,1.7300844873225476,0.32057098050258626,0.35788382686872006,1.4115430072475807,79029.93959682202,-3.203426503814917e-16,0.4221052779687098,9.845365670970114,9.489610180448576,0.3022890884895745,1.0148035674264804,1.1024686761203166,0.004159261712490565,9.485450918736085,0.19469275619724363,1.0901140604056918,-0.355975862164308,79029.93959682202,1.0,0.15852238423267243,1.0,0.0,0.0,0.0,0.0,1.0,0.0,-3.2034265038149176e-16,0.0,1.0,1.0,1.0,1.0,0.0,0.0,0.0,1.0,1.0,-3.2034265038149176e-16,1,1.0,2.0,-3.2034265038149176e-16,0.0,5596.076923076923,1.0,0.0,1.0,300.0164860849342,300.0164860849342,300.0164860849342,1.0,4.612808815324149,329.06825716882224,0.05674399063636899,0.08414647123596962,103.76845899315346,0.11979341230584822,0.11979341230584822,0.11979341230584822,1.0,1.0,0.0,1.0,4422782016.0,4422782016.0,4422782016.0,1.0,1.0,1.0,2.261020317940987e-10,2.261020317940987e-10,2.261020317940987e-10,-3.203426503814917e-16,1.503668952243474e-05,0.0,1.8722097876530313,34738.56799591002,0.522353061408487,16.864914515379994,66504.0,0.0,1.0,632.5097738481896,632.5097738481896,632.5097738481896,1.0,0.001893425414500431,0.001893425414500431,0.001893425414500431,0.0,1000000.0,0.0,0.0,0.0,11.715374946594238,152.51360778808603,448995550.9018776,2.4819442551491653,46.172006607055664,6.45127597707683,522.33251953125,44.88515550717034,55.42782113580021,29.351320266723633,0.5,521.83251953125,25.41234490109658,82.16694405821649,1.9291497253422458,448995550.9018776,0.26602172970398547,3679.163340003818,10.718859794468848,2458.733428552375,165.6301108001094,19.157527992449317,2.465406884874068,0.7705881722225261,0.9052803861947459,1.8464708473342253,1.6278276203659818,0.6928265304325478,0.6685423882120146,0.9946957702651075,0.9615776231077594,-0.2228359018008813,0.7999729936445673,0.38170396390026684,2.5580628158547962,0.13515053987116177,4.2325157933924915,0.8062566062477333,0.2945812306160475,5.1161256317095924,3.169505520579804,5.405733719330846,6824.056369798919,0.1793059133799832,7.549088812594292,19.599692216253143,6.299056372809409,36.520873322891035,4.6724398875572195,0.3478703412330473,4.38467845938194,18881.820696204984,0.49524425384222304,0.5706597174027705,3.17283900473366,0.7310603160676552,17.45962685655683,0.19534077541669378,254.8652585579024,0.09281327696937451,9.4252106884993,54.099781500364166,407254.99417334306,857328.7246904589,305886.8090081211,0.06883331650118767,671.9796067006555,0.24471216558654607,0.5052762092629753,27.295128743054835,0.040156267737665,6.464028658452641,0.0412907494286058,406668.45844873216,6.457775639116485,2723.3224467701193,0.04094975410155959,53.90151514534874,17691.50911223385,6.004047392780209,13.327799831589077,201.83637074461686,594.2167689161554,160.95803888703907,0.5007001310599757,0.048081985614931426,2.016697576365152,0.00639693810427145,142.3080869479446,0.00012436982891091857,155.2982796061203,0.02201623070862774,0.08753850136656253 From 89bc370bf75d5470098d6f7fd6d205d44bcbd061 Mon Sep 17 00:00:00 2001 From: Jermiah Joseph <44614774+jjjermiah@users.noreply.github.com> Date: Fri, 13 Dec 2024 11:45:04 -0500 Subject: [PATCH 10/17] Refactor file loading with custom error handling and pathlib support (#87) these are mostly just qc stuff from ruff - pathlib over os.path - formatted docstrings (if looking to add these functions on the mkdocs, the numpydoc parser is not really forgiving) - exception handling is a lot easier to debug when you pass exception context back to the stack trace with `raise .... from e` --- src/readii/io/loaders/general.py | 92 +++++++++++++++++++------------- 1 file changed, 55 insertions(+), 37 deletions(-) diff --git a/src/readii/io/loaders/general.py b/src/readii/io/loaders/general.py index 397e4f9..643b9a6 100644 --- a/src/readii/io/loaders/general.py +++ b/src/readii/io/loaders/general.py @@ -1,17 +1,29 @@ -import os -import pandas as pd +from pathlib import Path + +import pandas as pd import yaml -def loadImageDatasetConfig(dataset_name:str, - config_dir_path:str) -> dict: - """Load the configuration file for a given dataset. Expects the configuration file to be named .yaml. +class ConfigError(Exception): + """Base class for errors in the config module.""" + + pass + +class DataFrameLoadError(Exception): + """Custom exception for DataFrame loading errors.""" + + pass + +def loadImageDatasetConfig(dataset_name: str, config_dir_path: str | Path) -> dict: + """Load the configuration file for a given dataset. + + Expects the configuration file to be named .yaml. Parameters ---------- dataset_name : str Name of the dataset to load the configuration file for. - config_dir_path : str + config_dir_path : str or pathlib.Path Path to the directory containing the configuration files. Returns @@ -21,61 +33,67 @@ def loadImageDatasetConfig(dataset_name:str, Examples -------- - >>> config = loadImageDatasetConfig("NSCLC_Radiogenomics", "config/") + >>> config = loadImageDatasetConfig("NSCLC_Radiogenomics", "config") """ - # Make full path to config file - config_file_path = os.path.join(config_dir_path, f"{dataset_name}.yaml") + config_dir_path = Path(config_dir_path) + config_file_path = config_dir_path / f"{dataset_name}.yaml" - # Check if config file exists - if not os.path.exists(config_file_path): - raise FileNotFoundError(f"Config file {config_file_path} does not exist.") + if not config_file_path.exists(): + msg = f"Config file {config_file_path} does not exist." + raise FileNotFoundError(msg) try: - # Load the config file - with open(config_file_path, "r") as f: - return yaml.safe_load(f) + with config_file_path.open("r") as f: + config = yaml.safe_load(f) + except yaml.YAMLError as ye: + raise ConfigError("Invalid YAML in config file") from ye - except yaml.YAMLError as e: - raise ValueError(f"Invalid YAML in config file: {e}") + if not config: + raise ConfigError("Config file is empty or invalid") + return config -def loadFileToDataFrame(file_path:str) -> pd.DataFrame: + +def loadFileToDataFrame(file_path: str | Path) -> pd.DataFrame: """Load data from a csv or xlsx file into a pandas dataframe. Parameters ---------- - file_path (str): Path to the data file. + file_path : str or pathlib.Path + Path to the data file. Returns ------- - pd.DataFrame: Dataframe containing the data from the file. + pd.DataFrame + Dataframe containing the data from the file. """ + file_path = Path(file_path) if not file_path: - raise ValueError("file_path cannot be empty") + raise ValueError("File is empty") - if not os.path.exists(file_path): - raise FileNotFoundError(f"File {file_path} does not exist") + if not file_path.exists(): + msg = f"File {file_path} does not exist" + raise FileNotFoundError(msg) # Get the file extension - _, file_extension = os.path.splitext(file_path) - + file_extension = file_path.suffix + try: - # Check if the file is an Excel file if file_extension == '.xlsx': df = pd.read_excel(file_path) - # Check if the file is a CSV file elif file_extension == '.csv': df = pd.read_csv(file_path) else: - raise ValueError("Unsupported file format. Please provide a .csv or .xlsx file.") - - if df.empty: - raise ValueError("Loaded DataFrame is empty") - - return df - - except pd.errors.EmptyDataError: - raise ValueError("File is empty") + msg = f"Unsupported file format {file_extension}. Please provide a .csv or .xlsx file." + raise ValueError(msg) + + except pd.errors.EmptyDataError as e: + raise DataFrameLoadError("File is empty") from e + except (pd.errors.ParserError, ValueError) as e: - raise ValueError(f"Error parsing file: {e}") \ No newline at end of file + raise DataFrameLoadError("Error parsing file") from e + + if df.empty: + raise DataFrameLoadError("Dataframe is empty") + return df \ No newline at end of file From 8386e718c1a870c816baa38072e306b8ddbe705a Mon Sep 17 00:00:00 2001 From: Katy Scott Date: Fri, 13 Dec 2024 11:51:34 -0500 Subject: [PATCH 11/17] refactor: apply suggest updates for error handling, add logger --- src/readii/io/loaders/features.py | 24 ++++++++++++++---------- 1 file changed, 14 insertions(+), 10 deletions(-) diff --git a/src/readii/io/loaders/features.py b/src/readii/io/loaders/features.py index 0b088ad..a499798 100644 --- a/src/readii/io/loaders/features.py +++ b/src/readii/io/loaders/features.py @@ -5,6 +5,8 @@ from readii.io.loaders.general import loadFileToDataFrame +from readii.utils import logger + def loadFeatureFilesFromImageTypes(extracted_feature_dir:str, image_types:list, @@ -45,13 +47,14 @@ def loadFeatureFilesFromImageTypes(extracted_feature_dir:str, # Loop through all the files in the directory for image_type in image_types: try: - # Extract the image type feature csv file from the feature directory - # This should return a list of length 1, so we can just take the first element - image_type_feature_file = [file for file in feature_file_list if (image_type in file) and (file.endswith(".csv"))][0] - # Remove the image type file from the list of feature files - feature_file_list.remove(image_type_feature_file) - except Exception as e: - print(f"{e}\n No {image_type} feature csv files found in {extracted_feature_dir}") + # Extract the image type feature csv file from the feature directory + matching_files = [file for file in feature_file_list if (image_type in file) and (file.endswith(".csv"))] + if matching_files: + image_type_feature_file = matching_files[0] + # Remove the image type file from the list of feature files + feature_file_list.remove(image_type_feature_file) + except IndexError as e: + logger.warning(f"No {image_type} feature csv files found in {extracted_feature_dir}") # Skip to the next image type continue @@ -68,14 +71,15 @@ def loadFeatureFilesFromImageTypes(extracted_feature_dir:str, # Data is now only extracted features raw_feature_data.drop(labels_to_drop, axis=1, inplace=True) except KeyError as e: - print(f"{feature_file_path} does not have the labels {labels_to_drop} to drop.") + logger.warning(f"{feature_file_path} does not have the labels {labels_to_drop} to drop.") # Skip to the next image type continue # Save the dataframe to the feature_sets dictionary feature_sets[image_type] = raw_feature_data - if not feature_sets: - raise ValueError(f"No valid feature sets were loaded from {extracted_feature_dir}") + # After processing all image types, check if any feature sets were loaded + if not feature_sets: + raise ValueError(f"No valid feature sets were loaded from {extracted_feature_dir}") return feature_sets \ No newline at end of file From e1aa3d8cda8d2c61f50b23e81a15ad307c6f98c0 Mon Sep 17 00:00:00 2001 From: Katy Scott Date: Fri, 13 Dec 2024 11:55:31 -0500 Subject: [PATCH 12/17] refactor: made expected image types a fixture --- tests/io/loaders/test_general.py | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/tests/io/loaders/test_general.py b/tests/io/loaders/test_general.py index b49de9a..d255c0c 100644 --- a/tests/io/loaders/test_general.py +++ b/tests/io/loaders/test_general.py @@ -9,16 +9,21 @@ def nsclcConfigDirPath(): def lung4DConfigDirPath(): return "tests/4D-Lung" -def test_NSCLC_loadImageDatasetConfig(nsclcConfigDirPath): +@pytest.fixture +def expected_image_types(): + return ["original", "shuffled_full","shuffled_roi","shuffled_non_roi","randomized_sampled_full","randomized_sampled_roi","randomized_sampled_non_roi"] + + +def test_NSCLC_loadImageDatasetConfig(nsclcConfigDirPath, expected_image_types): config = loadImageDatasetConfig("NSCLC_Radiogenomics", nsclcConfigDirPath) assert config["dataset_name"] == "NSCLC_Radiogenomics" - assert config["image_types"] == ["original", "shuffled_full","shuffled_roi","shuffled_non_roi","randomized_sampled_full","randomized_sampled_roi","randomized_sampled_non_roi"] + assert config["image_types"] == expected_image_types assert config["outcome_variables"]["event_label"] == "Survival Status" assert config["outcome_variables"]["event_value_mapping"] == {'Alive': 0, 'Dead': 1} -def test_lung4D_loadImageDatasetConfig(lung4DConfigDirPath): +def test_lung4D_loadImageDatasetConfig(lung4DConfigDirPath, expected_image_types): config = loadImageDatasetConfig("4D-Lung", lung4DConfigDirPath) assert config["dataset_name"] == "4D-Lung" - assert config["image_types"] == ["original", "shuffled_full","shuffled_roi","shuffled_non_roi","randomized_sampled_full","randomized_sampled_roi","randomized_sampled_non_roi"] - assert config["outcome_variables"]["event_label"] == None - assert config["outcome_variables"]["event_value_mapping"] == None \ No newline at end of file + assert config["image_types"] == expected_image_types + assert config["outcome_variables"]["event_label"] is None + assert config["outcome_variables"]["event_value_mapping"] is None \ No newline at end of file From 9b87aae399008681d4c973de81e2a23a451cf66f Mon Sep 17 00:00:00 2001 From: Katy Scott Date: Fri, 13 Dec 2024 11:55:50 -0500 Subject: [PATCH 13/17] build: readii updated to 1.20.0 --- pixi.lock | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pixi.lock b/pixi.lock index a4ebbb0..65d6d3a 100644 --- a/pixi.lock +++ b/pixi.lock @@ -6462,8 +6462,8 @@ packages: timestamp: 1728642457661 - pypi: . name: readii - version: 1.19.0 - sha256: 277f89611527d7b68de50f891783a6ffab837a21ba91e32c6025c77741f0de50 + version: 1.20.0 + sha256: cc0ae6cbbc3e33388cbb9cbe8fee9a4b9b9181b0e2b4cba2a34bf9eca809c698 requires_dist: - simpleitk>=2.3.1 - matplotlib>=3.9.2,<4 From 229663bd112659a5889a1f35c5567072bc68512e Mon Sep 17 00:00:00 2001 From: Katy Scott Date: Fri, 13 Dec 2024 13:05:36 -0500 Subject: [PATCH 14/17] fix: update output paths for ct_to_seg files for new data arrangement --- tests/test_feature_extraction.py | 10 ++++---- tests/test_metadata.py | 41 ++++++++++++++++++++++---------- 2 files changed, 35 insertions(+), 16 deletions(-) diff --git a/tests/test_feature_extraction.py b/tests/test_feature_extraction.py index 72b500a..01885e6 100644 --- a/tests/test_feature_extraction.py +++ b/tests/test_feature_extraction.py @@ -44,11 +44,11 @@ def pyradiomicsParamFilePath(): @pytest.fixture def nsclcMetadataPath(): - return "tests/output/ct_to_seg_match_list_NSCLC_Radiogenomics.csv" + return "tests/NSCLC_Radiogenomics/procdata/ct_to_seg_match_list_NSCLC_Radiogenomics.csv" @pytest.fixture def lung4DMetadataPath(): - return "tests/output/ct_to_seg_match_list_4D-Lung.csv" + return "tests/4D-Lung/procdata/ct_to_seg_match_list_4D-Lung.csv" def test_singleRadiomicFeatureExtraction_SEG(nsclcCTImage, nsclcSEGImage, pyradiomicsParamFilePath): @@ -118,7 +118,7 @@ def test_NSCLC_radiomicFeatureExtraction_output(nsclcMetadataPath): imageDirPath = "tests/", roiNames = None, outputDirPath = "tests/NSCLC_Radiogenomics/results/") - expected_path = "tests/output/features/radiomicfeatures_original_NSCLC_Radiogenomics.csv" + expected_path = "tests/NSCLC_Radiogenomics/results/features/radiomicfeatures_original_NSCLC_Radiogenomics.csv" assert os.path.exists(expected_path) @@ -127,4 +127,6 @@ def test_4DLung_radiomicFeatureExtraction_output(lung4DMetadataPath): actual = radiomicFeatureExtraction(lung4DMetadataPath, imageDirPath = "tests/", roiNames = "Tumor_c40", - outputDirPath = "tests/4D-Lung/results/") \ No newline at end of file + outputDirPath = "tests/4D-Lung/results/") + expected_path = "tests/4D-Lung/results/features/radiomicfeatures_original_4D-Lung.csv" + assert os.path.exists(expected_path) \ No newline at end of file diff --git a/tests/test_metadata.py b/tests/test_metadata.py index 7b1c505..59947bf 100644 --- a/tests/test_metadata.py +++ b/tests/test_metadata.py @@ -1,5 +1,5 @@ import pytest -import os +from pathlib import Path from readii.metadata import ( matchCTtoSegmentation, @@ -49,12 +49,21 @@ def test_matchCTtoRTSTRUCT(lung4DSummaryFilePath): "Incorrect segmentation type has been found" -def test_matchCTtoSegmentation_output(nsclcSummaryFilePath): +@pytest.mark.parametrize( + "summary_file_path, modality, output_file_path", + [ + ("nsclcSummaryFilePath","SEG","tests/NSCLC_Radiogenomics/procdata/ct_to_seg_match_list_NSCLC_Radiogenomics.csv") + ] +) +def test_matchCTtoSegmentation_output(summary_file_path, modality, output_file_path, request): """Test saving output of summary file""" - actual = matchCTtoSegmentation(nsclcSummaryFilePath, - segType = "SEG", - outputFilePath = "tests/output/ct_to_seg_match_list_NSCLC_Radiogenomics.csv") - assert os.path.exists("tests/output/ct_to_seg_match_list_NSCLC_Radiogenomics.csv") == True, \ + summary_file_path = request.getfixturevalue(summary_file_path) + + matchCTtoSegmentation(summary_file_path, + segType = modality, + outputFilePath = output_file_path) + + assert Path(output_file_path).exists(), \ "Output does not exist, double check output file is named correctly." @@ -71,13 +80,21 @@ def test_getCTWithRTTRUCT(lung4DEdgesSummaryFilePath): assert actual['modality_seg'][0] == 'RTSTRUCT', \ "Incorrect segmentation type has been found" - -def test_getCTtoSegmentation_output(lung4DEdgesSummaryFilePath): +@pytest.mark.parametrize( + "summary_file_path, modality, output_file_path", + [ + ("lung4DEdgesSummaryFilePath","RTSTRUCT","tests/4D-Lung/procdata/ct_to_seg_match_list_4D-Lung.csv") + ] +) +def test_getCTtoSegmentation_output(summary_file_path, modality, output_file_path, request): """Test saving output of summary file""" - actual = getCTWithSegmentation(lung4DEdgesSummaryFilePath, - segType = "RTSTRUCT", - outputFilePath = "tests/output/ct_to_seg_match_list_4D-Lung.csv") - assert os.path.exists("tests/output/ct_to_seg_match_list_4D-Lung.csv") == True, \ + summary_file_path = request.getfixturevalue(summary_file_path) + + getCTWithSegmentation(summary_file_path, + segType = modality, + outputFilePath = output_file_path) + + assert Path(output_file_path).exists(), \ "Output does not exist, double check output file is named correctly." From f4cc54893f8dea2c1f5ce10bd70afe3ee58f4084 Mon Sep 17 00:00:00 2001 From: Katy Scott Date: Fri, 13 Dec 2024 13:06:17 -0500 Subject: [PATCH 15/17] feat: update test output ignore to have procdata along with results for any dataset --- .gitignore | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.gitignore b/.gitignore index e72c23c..c33d9cb 100644 --- a/.gitignore +++ b/.gitignore @@ -146,8 +146,8 @@ dmypy.json # Test outputs tests/output/* -tests/NSCLC_Radiogenomics/results/* -tests/4D-Lung/results/* +tests/*/procdata/* +tests/*/results/* # pixi environments .pixi From 11def04161b4883d8debfe5ab84b140ee8c01444 Mon Sep 17 00:00:00 2001 From: Jermiah Joseph Date: Fri, 13 Dec 2024 14:02:41 -0500 Subject: [PATCH 16/17] chore: update lockfile --- pixi.lock | 64 ++++++++++++++++++++++++------------------------------- 1 file changed, 28 insertions(+), 36 deletions(-) diff --git a/pixi.lock b/pixi.lock index 4bfd105..0461c8e 100644 --- a/pixi.lock +++ b/pixi.lock @@ -31,7 +31,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2024b-hc8b5060_0.conda - pypi: https://files.pythonhosted.org/packages/b9/74/fbb6559de3607b3300b9be3cc64e97548d55678e44623db17820dbd20002/aiohappyeyeballs-2.4.4-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/a8/e9/1ac90733e36e7848693aece522936a13bf17eeb617da662f94adfafc1c25/aiohttp-3.11.10-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl - - pypi: https://files.pythonhosted.org/packages/76/ac/a7305707cb852b7e16ff80eaf5692309bde30e2b1100a1fcacdc8f731d97/aiosignal-1.3.1-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/ec/6a/bc7e17a3e87a2985d3e8f4da4cd0f481060eb78fb08596c42be62c90a4d9/aiosignal-1.3.2-py2.py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/6a/21/5b6702a7f963e95456c0de2d495f67bf5fd62840ac655dc451586d23d39a/attrs-24.2.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/00/2e/d53fa4befbf2cfa713304affc7ca780ce4fc1fd8710527771b58311a3229/click-8.1.7-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/ba/99/6794142b90b853a9155316c8f470d2e4821fe6f086b03e372aca848227dd/contourpy-1.3.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl @@ -103,7 +103,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2024b-hc8b5060_0.conda - pypi: https://files.pythonhosted.org/packages/b9/74/fbb6559de3607b3300b9be3cc64e97548d55678e44623db17820dbd20002/aiohappyeyeballs-2.4.4-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/8a/36/a64b583771fc673062a7a1374728a6241d49e2eda5a9041fbf248e18c804/aiohttp-3.11.10-cp312-cp312-macosx_11_0_arm64.whl - - pypi: https://files.pythonhosted.org/packages/76/ac/a7305707cb852b7e16ff80eaf5692309bde30e2b1100a1fcacdc8f731d97/aiosignal-1.3.1-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/ec/6a/bc7e17a3e87a2985d3e8f4da4cd0f481060eb78fb08596c42be62c90a4d9/aiosignal-1.3.2-py2.py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/6a/21/5b6702a7f963e95456c0de2d495f67bf5fd62840ac655dc451586d23d39a/attrs-24.2.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/00/2e/d53fa4befbf2cfa713304affc7ca780ce4fc1fd8710527771b58311a3229/click-8.1.7-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/6b/6a/7833cfae2c1e63d1d8875a50fd23371394f540ce809d7383550681a1fa64/contourpy-1.3.1-cp312-cp312-macosx_11_0_arm64.whl @@ -281,7 +281,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/nbformat-5.10.4-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/ncurses-6.5-he02047a_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/nest-asyncio-1.6.0-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/nodeenv-1.9.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/nodeenv-1.9.1-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/notebook-shim-0.2.4-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/openssl-3.4.0-hb9d3cd8_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/optype-0.7.3-py312h7900ff3_2.conda @@ -374,7 +374,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/zstd-1.5.6-ha6fb4c9_0.conda - pypi: https://files.pythonhosted.org/packages/b9/74/fbb6559de3607b3300b9be3cc64e97548d55678e44623db17820dbd20002/aiohappyeyeballs-2.4.4-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/a8/e9/1ac90733e36e7848693aece522936a13bf17eeb617da662f94adfafc1c25/aiohttp-3.11.10-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl - - pypi: https://files.pythonhosted.org/packages/76/ac/a7305707cb852b7e16ff80eaf5692309bde30e2b1100a1fcacdc8f731d97/aiosignal-1.3.1-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/ec/6a/bc7e17a3e87a2985d3e8f4da4cd0f481060eb78fb08596c42be62c90a4d9/aiosignal-1.3.2-py2.py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/ba/99/6794142b90b853a9155316c8f470d2e4821fe6f086b03e372aca848227dd/contourpy-1.3.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl - pypi: https://files.pythonhosted.org/packages/e7/05/c19819d5e3d95294a6f5947fb9b9629efb316b96de511b418c53d245aae6/cycler-0.12.1-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/46/d1/e73b6ad76f0b1fb7f23c35c6d95dbc506a9c8804f43dda8cb5b0fa6331fd/dill-0.3.9-py3-none-any.whl @@ -522,7 +522,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/nbformat-5.10.4-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ncurses-6.5-h7bae524_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/nest-asyncio-1.6.0-pyhd8ed1ab_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/nodeenv-1.9.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/nodeenv-1.9.1-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/notebook-shim-0.2.4-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/openssl-3.4.0-h39f12f2_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/optype-0.7.3-py312h81bd7bf_2.conda @@ -617,7 +617,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/zstd-1.5.6-hb46c0d2_0.conda - pypi: https://files.pythonhosted.org/packages/b9/74/fbb6559de3607b3300b9be3cc64e97548d55678e44623db17820dbd20002/aiohappyeyeballs-2.4.4-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/8a/36/a64b583771fc673062a7a1374728a6241d49e2eda5a9041fbf248e18c804/aiohttp-3.11.10-cp312-cp312-macosx_11_0_arm64.whl - - pypi: https://files.pythonhosted.org/packages/76/ac/a7305707cb852b7e16ff80eaf5692309bde30e2b1100a1fcacdc8f731d97/aiosignal-1.3.1-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/ec/6a/bc7e17a3e87a2985d3e8f4da4cd0f481060eb78fb08596c42be62c90a4d9/aiosignal-1.3.2-py2.py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/6b/6a/7833cfae2c1e63d1d8875a50fd23371394f540ce809d7383550681a1fa64/contourpy-1.3.1-cp312-cp312-macosx_11_0_arm64.whl - pypi: https://files.pythonhosted.org/packages/e7/05/c19819d5e3d95294a6f5947fb9b9629efb316b96de511b418c53d245aae6/cycler-0.12.1-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/46/d1/e73b6ad76f0b1fb7f23c35c6d95dbc506a9c8804f43dda8cb5b0fa6331fd/dill-0.3.9-py3-none-any.whl @@ -760,7 +760,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/zstd-1.5.6-ha6fb4c9_0.conda - pypi: https://files.pythonhosted.org/packages/b9/74/fbb6559de3607b3300b9be3cc64e97548d55678e44623db17820dbd20002/aiohappyeyeballs-2.4.4-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/a8/e9/1ac90733e36e7848693aece522936a13bf17eeb617da662f94adfafc1c25/aiohttp-3.11.10-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl - - pypi: https://files.pythonhosted.org/packages/76/ac/a7305707cb852b7e16ff80eaf5692309bde30e2b1100a1fcacdc8f731d97/aiosignal-1.3.1-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/ec/6a/bc7e17a3e87a2985d3e8f4da4cd0f481060eb78fb08596c42be62c90a4d9/aiosignal-1.3.2-py2.py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/ba/99/6794142b90b853a9155316c8f470d2e4821fe6f086b03e372aca848227dd/contourpy-1.3.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl - pypi: https://files.pythonhosted.org/packages/e7/05/c19819d5e3d95294a6f5947fb9b9629efb316b96de511b418c53d245aae6/cycler-0.12.1-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/46/d1/e73b6ad76f0b1fb7f23c35c6d95dbc506a9c8804f43dda8cb5b0fa6331fd/dill-0.3.9-py3-none-any.whl @@ -888,7 +888,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/zstd-1.5.6-hb46c0d2_0.conda - pypi: https://files.pythonhosted.org/packages/b9/74/fbb6559de3607b3300b9be3cc64e97548d55678e44623db17820dbd20002/aiohappyeyeballs-2.4.4-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/8a/36/a64b583771fc673062a7a1374728a6241d49e2eda5a9041fbf248e18c804/aiohttp-3.11.10-cp312-cp312-macosx_11_0_arm64.whl - - pypi: https://files.pythonhosted.org/packages/76/ac/a7305707cb852b7e16ff80eaf5692309bde30e2b1100a1fcacdc8f731d97/aiosignal-1.3.1-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/ec/6a/bc7e17a3e87a2985d3e8f4da4cd0f481060eb78fb08596c42be62c90a4d9/aiosignal-1.3.2-py2.py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/6b/6a/7833cfae2c1e63d1d8875a50fd23371394f540ce809d7383550681a1fa64/contourpy-1.3.1-cp312-cp312-macosx_11_0_arm64.whl - pypi: https://files.pythonhosted.org/packages/e7/05/c19819d5e3d95294a6f5947fb9b9629efb316b96de511b418c53d245aae6/cycler-0.12.1-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/46/d1/e73b6ad76f0b1fb7f23c35c6d95dbc506a9c8804f43dda8cb5b0fa6331fd/dill-0.3.9-py3-none-any.whl @@ -1054,7 +1054,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/zstd-1.5.6-ha6fb4c9_0.conda - pypi: https://files.pythonhosted.org/packages/b9/74/fbb6559de3607b3300b9be3cc64e97548d55678e44623db17820dbd20002/aiohappyeyeballs-2.4.4-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/a8/e9/1ac90733e36e7848693aece522936a13bf17eeb617da662f94adfafc1c25/aiohttp-3.11.10-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl - - pypi: https://files.pythonhosted.org/packages/76/ac/a7305707cb852b7e16ff80eaf5692309bde30e2b1100a1fcacdc8f731d97/aiosignal-1.3.1-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/ec/6a/bc7e17a3e87a2985d3e8f4da4cd0f481060eb78fb08596c42be62c90a4d9/aiosignal-1.3.2-py2.py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/ba/99/6794142b90b853a9155316c8f470d2e4821fe6f086b03e372aca848227dd/contourpy-1.3.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl - pypi: https://files.pythonhosted.org/packages/e7/05/c19819d5e3d95294a6f5947fb9b9629efb316b96de511b418c53d245aae6/cycler-0.12.1-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/46/d1/e73b6ad76f0b1fb7f23c35c6d95dbc506a9c8804f43dda8cb5b0fa6331fd/dill-0.3.9-py3-none-any.whl @@ -1195,7 +1195,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/zstd-1.5.6-hb46c0d2_0.conda - pypi: https://files.pythonhosted.org/packages/b9/74/fbb6559de3607b3300b9be3cc64e97548d55678e44623db17820dbd20002/aiohappyeyeballs-2.4.4-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/8a/36/a64b583771fc673062a7a1374728a6241d49e2eda5a9041fbf248e18c804/aiohttp-3.11.10-cp312-cp312-macosx_11_0_arm64.whl - - pypi: https://files.pythonhosted.org/packages/76/ac/a7305707cb852b7e16ff80eaf5692309bde30e2b1100a1fcacdc8f731d97/aiosignal-1.3.1-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/ec/6a/bc7e17a3e87a2985d3e8f4da4cd0f481060eb78fb08596c42be62c90a4d9/aiosignal-1.3.2-py2.py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/6b/6a/7833cfae2c1e63d1d8875a50fd23371394f540ce809d7383550681a1fa64/contourpy-1.3.1-cp312-cp312-macosx_11_0_arm64.whl - pypi: https://files.pythonhosted.org/packages/e7/05/c19819d5e3d95294a6f5947fb9b9629efb316b96de511b418c53d245aae6/cycler-0.12.1-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/46/d1/e73b6ad76f0b1fb7f23c35c6d95dbc506a9c8804f43dda8cb5b0fa6331fd/dill-0.3.9-py3-none-any.whl @@ -1276,7 +1276,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2024b-hc8b5060_0.conda - pypi: https://files.pythonhosted.org/packages/b9/74/fbb6559de3607b3300b9be3cc64e97548d55678e44623db17820dbd20002/aiohappyeyeballs-2.4.4-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/9c/3e/a2f4cee0dca934b1d2c4b6a7821040ce4452b9b2e4347c9be6cb10eaa835/aiohttp-3.11.10-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl - - pypi: https://files.pythonhosted.org/packages/76/ac/a7305707cb852b7e16ff80eaf5692309bde30e2b1100a1fcacdc8f731d97/aiosignal-1.3.1-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/ec/6a/bc7e17a3e87a2985d3e8f4da4cd0f481060eb78fb08596c42be62c90a4d9/aiosignal-1.3.2-py2.py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/fe/ba/e2081de779ca30d473f21f5b30e0e737c438205440784c7dfc81efc2b029/async_timeout-5.0.1-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/6a/21/5b6702a7f963e95456c0de2d495f67bf5fd62840ac655dc451586d23d39a/attrs-24.2.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/00/2e/d53fa4befbf2cfa713304affc7ca780ce4fc1fd8710527771b58311a3229/click-8.1.7-py3-none-any.whl @@ -1360,7 +1360,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2024b-hc8b5060_0.conda - pypi: https://files.pythonhosted.org/packages/b9/74/fbb6559de3607b3300b9be3cc64e97548d55678e44623db17820dbd20002/aiohappyeyeballs-2.4.4-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/c9/0b/d326251888bb86ff7cb00b171e1cf3b0f0ed695622857f84a98bbc5f254b/aiohttp-3.11.10-cp310-cp310-macosx_11_0_arm64.whl - - pypi: https://files.pythonhosted.org/packages/76/ac/a7305707cb852b7e16ff80eaf5692309bde30e2b1100a1fcacdc8f731d97/aiosignal-1.3.1-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/ec/6a/bc7e17a3e87a2985d3e8f4da4cd0f481060eb78fb08596c42be62c90a4d9/aiosignal-1.3.2-py2.py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/fe/ba/e2081de779ca30d473f21f5b30e0e737c438205440784c7dfc81efc2b029/async_timeout-5.0.1-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/6a/21/5b6702a7f963e95456c0de2d495f67bf5fd62840ac655dc451586d23d39a/attrs-24.2.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/00/2e/d53fa4befbf2cfa713304affc7ca780ce4fc1fd8710527771b58311a3229/click-8.1.7-py3-none-any.whl @@ -1459,7 +1459,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2024b-hc8b5060_0.conda - pypi: https://files.pythonhosted.org/packages/b9/74/fbb6559de3607b3300b9be3cc64e97548d55678e44623db17820dbd20002/aiohappyeyeballs-2.4.4-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/7c/b8/df6d76a149cbd969a58da478baec0be617287c496c842ddf21fe6bce07b3/aiohttp-3.11.10-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl - - pypi: https://files.pythonhosted.org/packages/76/ac/a7305707cb852b7e16ff80eaf5692309bde30e2b1100a1fcacdc8f731d97/aiosignal-1.3.1-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/ec/6a/bc7e17a3e87a2985d3e8f4da4cd0f481060eb78fb08596c42be62c90a4d9/aiosignal-1.3.2-py2.py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/6a/21/5b6702a7f963e95456c0de2d495f67bf5fd62840ac655dc451586d23d39a/attrs-24.2.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/00/2e/d53fa4befbf2cfa713304affc7ca780ce4fc1fd8710527771b58311a3229/click-8.1.7-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/85/fc/7fa5d17daf77306840a4e84668a48ddff09e6bc09ba4e37e85ffc8e4faa3/contourpy-1.3.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl @@ -1543,7 +1543,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2024b-hc8b5060_0.conda - pypi: https://files.pythonhosted.org/packages/b9/74/fbb6559de3607b3300b9be3cc64e97548d55678e44623db17820dbd20002/aiohappyeyeballs-2.4.4-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/ab/70/0ddb3a61b835068eb0badbe8016b4b65b966bad5f8af0f2d63998ff4cfa4/aiohttp-3.11.10-cp311-cp311-macosx_11_0_arm64.whl - - pypi: https://files.pythonhosted.org/packages/76/ac/a7305707cb852b7e16ff80eaf5692309bde30e2b1100a1fcacdc8f731d97/aiosignal-1.3.1-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/ec/6a/bc7e17a3e87a2985d3e8f4da4cd0f481060eb78fb08596c42be62c90a4d9/aiosignal-1.3.2-py2.py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/6a/21/5b6702a7f963e95456c0de2d495f67bf5fd62840ac655dc451586d23d39a/attrs-24.2.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/00/2e/d53fa4befbf2cfa713304affc7ca780ce4fc1fd8710527771b58311a3229/click-8.1.7-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/67/71/1e6e95aee21a500415f5d2dbf037bf4567529b6a4e986594d7026ec5ae90/contourpy-1.3.1-cp311-cp311-macosx_11_0_arm64.whl @@ -1641,7 +1641,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2024b-hc8b5060_0.conda - pypi: https://files.pythonhosted.org/packages/b9/74/fbb6559de3607b3300b9be3cc64e97548d55678e44623db17820dbd20002/aiohappyeyeballs-2.4.4-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/a8/e9/1ac90733e36e7848693aece522936a13bf17eeb617da662f94adfafc1c25/aiohttp-3.11.10-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl - - pypi: https://files.pythonhosted.org/packages/76/ac/a7305707cb852b7e16ff80eaf5692309bde30e2b1100a1fcacdc8f731d97/aiosignal-1.3.1-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/ec/6a/bc7e17a3e87a2985d3e8f4da4cd0f481060eb78fb08596c42be62c90a4d9/aiosignal-1.3.2-py2.py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/6a/21/5b6702a7f963e95456c0de2d495f67bf5fd62840ac655dc451586d23d39a/attrs-24.2.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/00/2e/d53fa4befbf2cfa713304affc7ca780ce4fc1fd8710527771b58311a3229/click-8.1.7-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/ba/99/6794142b90b853a9155316c8f470d2e4821fe6f086b03e372aca848227dd/contourpy-1.3.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl @@ -1725,7 +1725,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2024b-hc8b5060_0.conda - pypi: https://files.pythonhosted.org/packages/b9/74/fbb6559de3607b3300b9be3cc64e97548d55678e44623db17820dbd20002/aiohappyeyeballs-2.4.4-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/8a/36/a64b583771fc673062a7a1374728a6241d49e2eda5a9041fbf248e18c804/aiohttp-3.11.10-cp312-cp312-macosx_11_0_arm64.whl - - pypi: https://files.pythonhosted.org/packages/76/ac/a7305707cb852b7e16ff80eaf5692309bde30e2b1100a1fcacdc8f731d97/aiosignal-1.3.1-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/ec/6a/bc7e17a3e87a2985d3e8f4da4cd0f481060eb78fb08596c42be62c90a4d9/aiosignal-1.3.2-py2.py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/6a/21/5b6702a7f963e95456c0de2d495f67bf5fd62840ac655dc451586d23d39a/attrs-24.2.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/00/2e/d53fa4befbf2cfa713304affc7ca780ce4fc1fd8710527771b58311a3229/click-8.1.7-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/6b/6a/7833cfae2c1e63d1d8875a50fd23371394f540ce809d7383550681a1fa64/contourpy-1.3.1-cp312-cp312-macosx_11_0_arm64.whl @@ -1912,13 +1912,13 @@ packages: - brotli ; platform_python_implementation == 'CPython' and extra == 'speedups' - brotlicffi ; platform_python_implementation != 'CPython' and extra == 'speedups' requires_python: '>=3.9' -- pypi: https://files.pythonhosted.org/packages/76/ac/a7305707cb852b7e16ff80eaf5692309bde30e2b1100a1fcacdc8f731d97/aiosignal-1.3.1-py3-none-any.whl +- pypi: https://files.pythonhosted.org/packages/ec/6a/bc7e17a3e87a2985d3e8f4da4cd0f481060eb78fb08596c42be62c90a4d9/aiosignal-1.3.2-py2.py3-none-any.whl name: aiosignal - version: 1.3.1 - sha256: f8376fb07dd1e86a584e4fcdec80b36b7f81aac666ebc724e2c090300dd83b17 + version: 1.3.2 + sha256: 45cde58e409a301715980c2b01d0c28bdde3770d8290b5eb2173759d9acb31a5 requires_dist: - frozenlist>=1.1.0 - requires_python: '>=3.7' + requires_python: '>=3.9' - conda: https://conda.anaconda.org/conda-forge/noarch/annotated-types-0.7.0-pyhd8ed1ab_1.conda sha256: e0ea1ba78fbb64f17062601edda82097fcf815012cf52bb704150a2668110d48 md5: 2934f256a8acfe48f6ebb4fce6cde29c @@ -5187,18 +5187,18 @@ packages: - pytest>=7.2 ; extra == 'test' - pytest-cov>=4.0 ; extra == 'test' requires_python: '>=3.10' -- conda: https://conda.anaconda.org/conda-forge/noarch/nodeenv-1.9.1-pyhd8ed1ab_0.conda - sha256: 85ee07342ab055dc081f3de8292c5e7195e43e046db9c5750f242f928f6bb8f2 - md5: dfe0528d0f1c16c1f7c528ea5536ab30 +- conda: https://conda.anaconda.org/conda-forge/noarch/nodeenv-1.9.1-pyhd8ed1ab_1.conda + sha256: 3636eec0e60466a00069b47ce94b6d88b01419b6577d8e393da44bb5bc8d3468 + md5: 7ba3f09fceae6a120d664217e58fe686 depends: - - python 2.7|>=3.7 + - python >=3.9 - setuptools license: BSD-3-Clause license_family: BSD purls: - pkg:pypi/nodeenv?source=hash-mapping - size: 34489 - timestamp: 1717585382642 + size: 34574 + timestamp: 1734112236147 - conda: https://conda.anaconda.org/conda-forge/noarch/notebook-shim-0.2.4-pyhd8ed1ab_1.conda sha256: 7b920e46b9f7a2d2aa6434222e5c8d739021dbc5cc75f32d124a8191d86f9056 md5: e7f89ea5f7ea9401642758ff50a2d9c1 @@ -7117,16 +7117,8 @@ packages: timestamp: 1728642457661 - pypi: . name: readii -<<<<<<< HEAD - version: 1.20.0 - sha256: cc0ae6cbbc3e33388cbb9cbe8fee9a4b9b9181b0e2b4cba2a34bf9eca809c698 -||||||| 92b4a6e - version: 1.19.0 - sha256: 277f89611527d7b68de50f891783a6ffab837a21ba91e32c6025c77741f0de50 -======= - version: 1.21.0 - sha256: 712416b55c52a31c85e7ae84be7842a9ec9df227d3b1de0018aa5d1ff0a15ad4 ->>>>>>> main + version: 1.22.0 + sha256: 17cfade190918fb8a7edbe1067b2a0e53170ee5b065416cdfeffa35fe641d037 requires_dist: - simpleitk>=2.3.1 - matplotlib>=3.9.2,<4 From 94111ba595185a4d90bfee1fd729721e9f159b5c Mon Sep 17 00:00:00 2001 From: Jermiah Joseph Date: Fri, 13 Dec 2024 14:18:16 -0500 Subject: [PATCH 17/17] feat: update test fixtures to copy metadata files to new paths, and remove them after tests for cleanliness --- tests/test_feature_extraction.py | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/tests/test_feature_extraction.py b/tests/test_feature_extraction.py index 01885e6..650c6a5 100644 --- a/tests/test_feature_extraction.py +++ b/tests/test_feature_extraction.py @@ -13,6 +13,8 @@ import collections import pandas as pd import os +import shutil +from pathlib import Path @pytest.fixture def nsclcCTImage(): @@ -44,11 +46,21 @@ def pyradiomicsParamFilePath(): @pytest.fixture def nsclcMetadataPath(): - return "tests/NSCLC_Radiogenomics/procdata/ct_to_seg_match_list_NSCLC_Radiogenomics.csv" + oldpath = Path("tests/output/ct_to_seg_match_list_NSCLC_Radiogenomics.csv") + newpath = Path("tests/NSCLC_Radiogenomics/procdata/ct_to_seg_match_list_NSCLC_Radiogenomics.csv") + newpath.parent.mkdir(parents=True, exist_ok=True) + shutil.copy(oldpath, newpath) + yield newpath.as_posix() + newpath.unlink() @pytest.fixture def lung4DMetadataPath(): - return "tests/4D-Lung/procdata/ct_to_seg_match_list_4D-Lung.csv" + oldpath = Path("tests/output/ct_to_seg_match_list_4D-Lung.csv") + newpath = Path("tests/4D-Lung/procdata/ct_to_seg_match_list_4D-Lung.csv") + newpath.parent.mkdir(parents=True, exist_ok=True) + shutil.copy(oldpath, newpath) + yield newpath.as_posix() + newpath.unlink() def test_singleRadiomicFeatureExtraction_SEG(nsclcCTImage, nsclcSEGImage, pyradiomicsParamFilePath):