There is no easy and single answer to this, especially w/o knowing the process, noise, physics and data in advance.
Enclosed you find a script that generates a table with two scripts and some modeled data.
A first approach for me would always be a visual judgement (by Graph Builder etc.).
A second approach could be the fit model platform, in this case least squares, see second script. The p-value may show you about significance of the parameter, fluid 3 is different for plasticizer 3, but it is difficult to find. With more data it would be easier to find. By pressing "?" and clicking the mouse in the report, you'll find context help to understand the details.
Good Luck!
Names Default To Here( 1 );
Random Reset( 42 );
db = New Table( "Plasticizers",
add rows( 12 ),
New Column( "Experiment", "Numeric", "Ordinal", set values( [1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3] ) ),
New Column( "Nutritive fluid",
"Character",
"Nominal",
set values(
{"fluid 1", "fluid 1", "fluid 1", "fluid 1", "fluid 2", "fluid 2", "fluid 2", "fluid 2", "fluid 3", "fluid 3", "fluid 3", "fluid 3"}
)
),
New Column( "Time points of collection (hours)",
Numeric,
Continuous,
set format( "Best", 12 ),
set values( [0, 12, 24, 48, 0, 12, 24, 48, 0, 12, 24, 48] )
),
New Column( "Concentration plasticizer 1 (micrograms)",
"Numeric",
Continuous,
set formula( Random Normal( 1, 1 ) + 0.1 * Name( "Time points of collection (hours)" ) )
),
New Column( "Concentration plasticizer 2 (micrograms)",
"Numeric",
Continuous,
set formula( Random Normal( 3, 1 ) + 0.2 * Name( "Time points of collection (hours)" ) )
),
New Column( "Concentration plasticizer 3 (micrograms)",
"Numeric",
Continuous,
set formula( Random Normal( 10, 1 ) + If( Name( "Nutritive fluid" ) == "fluid 3", 0.5, 0.1 ) * Name( "Time points of collection (hours)" ) )
),
);
db << Add Properties to Table(
{New Script(
"Concentration plasticizer 1 (micrograms) & 2 more vs. Time points of collection (hours)",
Graph Builder(
Size( 855, 739 ),
Variables(
X( :Name( "Time points of collection (hours)" ) ),
Y( :Name( "Concentration plasticizer 1 (micrograms)" ) ),
Y( :Name( "Concentration plasticizer 2 (micrograms)" ), Position( 1 ) ),
Y( :Name( "Concentration plasticizer 3 (micrograms)" ), Position( 1 ) ),
Group X( :Nutritive fluid )
),
Elements( Points( X, Y( 1 ), Y( 2 ), Y( 3 ), Legend( 14 ) ), Smoother( X, Y( 1 ), Y( 2 ), Y( 3 ), Legend( 15 ) ) )
)
), New Script(
"Fit Least Squares",
Fit Model(
Y(
:Name( "Concentration plasticizer 1 (micrograms)" ),
:Name( "Concentration plasticizer 2 (micrograms)" ),
:Name( "Concentration plasticizer 3 (micrograms)" )
),
Effects( :Nutritive fluid, :Name( "Time points of collection (hours)" ) ),
Personality( "Standard Least Squares" ),
Emphasis( "Effect Leverage" ),
Run(
:Name( "Concentration plasticizer 1 (micrograms)" ) << {Summary of Fit( 1 ), Analysis of Variance( 1 ), Parameter Estimates( 1 ),
Lack of Fit( 0 ), Scaled Estimates( 0 ), Plot Actual by Predicted( 1 ), Plot Residual by Predicted( 1 ),
Plot Studentized Residuals( 0 ), Plot Effect Leverage( 1 ), Plot Residual by Normal Quantiles( 0 ), Box Cox Y Transformation( 0 )},
:Name( "Concentration plasticizer 2 (micrograms)" ) << {Summary of Fit( 1 ), Analysis of Variance( 1 ), Parameter Estimates( 1 ),
Lack of Fit( 0 ), Scaled Estimates( 0 ), Plot Actual by Predicted( 1 ), Plot Residual by Predicted( 1 ),
Plot Studentized Residuals( 0 ), Plot Effect Leverage( 1 ), Plot Residual by Normal Quantiles( 0 ), Box Cox Y Transformation( 0 )},
:Name( "Concentration plasticizer 3 (micrograms)" ) << {Summary of Fit( 1 ), Analysis of Variance( 1 ), Parameter Estimates( 1 ),
Lack of Fit( 0 ), Scaled Estimates( 0 ), Plot Actual by Predicted( 1 ), Plot Residual by Predicted( 1 ),
Plot Studentized Residuals( 0 ), Plot Effect Leverage( 1 ), Plot Residual by Normal Quantiles( 0 ), Box Cox Y Transformation( 0 )}
)
)
)}
);
Georg