2

First, I'll start with some background that may explain the ignorance that will likely be encountered in the remainder of the post. I am an archaeologist attempting to study the flexural strength of specific types of stone before and after thermal alteration. I have no mechanical engineering training and only limited statistical training. What little knowledge I do possess is essentially autodidactic. Also, this will be a lengthy post.

For this experiment I loosely followed the ASTM testing standard for characterizing the flexural strength of advanced ceramics at ambient temperature. This ASTM standard calls for the use of Weibull stats to characterize the flexural strength of a given ceramic and specifies a minimum of 10 observations for calculating the mean. The testing procedure is designed to obtain strength data, rather than time to failure data.

My goal is to test for any significance in the Weibull moduli and/or characteristic strengths between my raw and thermally altered sample groups. I have calculated both of these statistics by following a video (https://www.youtube.com/watch?v=dMOUlCOcP2U&t=1s) I ran across on YouTube. Here are some example data, followed by my procedures and results. The strength data indicate the flexural strength of individual specimens, measured in megapascals (MPa). Flexural strength is a bulk property, theoretically independent of specimen dimensions.

Example Data:

enter image description here

Calculations:

Here are the data for the Raw sample group after applying the procedures presented in the YouTube video:

Where:

FLEX = Specimen flexural strength

F = (RANK-.5)/n [sorted smallest to largest]

X = LN(FLEX)

Y = LN(LN(1/(1-FLEX)))

enter image description here

When plotted, the graph looks like this. I ran a linear regression through each of the datasets. As I understand it, the slopes of these regressions indicate the Weibull moduli.

enter image description here

So, the Weibull modulus of the raw group is 20.874, while the treated group is 22.237.

To calculate the characteristic strengths, I did the following:

FLEXc = e^|b/Wm|

Where:

FLEXc = characteristic strength

b = intercept of linear regression

Wm = Weibull modulus

Using this formula, the resulting characteristic strength of the raw sample group is 79.609 MPa, while the treated group is 86.351 MPa.

My overarching question:

How can I use these data to meaningfully compare the raw and treated sample groups?

Mike S.
  • 23

2 Answers2

2

You can compare your data using a Weibull model but the usual approach would not make use of the results from a Weibull plot or anything similar to it to estimate parameters.

What "meaningfully compare" might mean depends on what you want to find out, exactly, and what you might be prepared to assume.

I will discuss some alternatives you might be interested in considering:

  1. The typical two-group Weibull comparison would assume that the shape parameters are identical and that the scale parameters may account for a difference in mean. While it's not normally good practice to look at the data you're using in a comparison, since it's already there, we can see that the data appear consistent with such an assumption (the lines in your Weibull plot are very close to parallel).

    This comparison is easy to do using survival analysis.

    I realize that you have strengths, not survival times, but this is utterly immaterial. The numbers don't know whether they are strengths, survival times, wind speeds, insurance claim amounts or anything else, the method simply fits a Weibull model to the data, whatever the numbers happen to represent.

    Using a program for fitting a survival model, we regress the strength on the group variable, and then test the group variable for significance, using an (asymptotic) likelihood ratio test. This will be approximate rather than exact but should work quite well.

    It tests the hypothesis that the scale parameters are equal against the alternative that they are unequal.

    I have included just such an analysis done in R. Note that survreg’s 'scale' is 1/shape under the usual parameterization (as in Wikipedia's article on the Weibull distribution) and survreg’s 'intercept' is log(scale) under the usual parameterization.

    Raw <- scan()
    73.49 72.68 83.78 77.33 80.51 71.85 79.06 80.90 74.43 82.43
    
    Treated <- scan()
    82.76 86.15 88.94 82.61 79.97 88.84 89.89 82.58 83.74 87.35 74.95
    
    FlorenceAChert <- data.frame(
                          strength=c(Raw,Treated),
                          group=rep(c("Raw","Treated"),c(length(Raw),length(Treated)))
                                )
    n <- dim(FlorenceAChert)[1]
    
    chertreg <- survreg(Surv(strength, rep(1,n)) ~ group, FlorenceAChert, dist='weibull')
    summary(chertreg)
    
    Call:
    survreg(formula = Surv(strength, rep(1, n)) ~ group, data = FlorenceAChert, 
        dist = "weibull")
                   Value Std. Error      z       p
    (Intercept)   4.3780     0.0141 311.48 < 2e-16
    groupTreated  0.0784     0.0188   4.17 3.1e-05
    Log(scale)   -3.1462     0.1749 -17.99 < 2e-16
    
    Scale= 0.043 
    
    Weibull distribution
    Loglik(model)= -59.4   Loglik(intercept only)= -65.2
            Chisq= 11.56 on 1 degrees of freedom, p= 0.00067 
    Number of Newton-Raphson Iterations: 5 
    n= 21 
    

    We see that the p-value for groupTreated is 0.000031. At any typical significance level, the null hypothesis of equal scale parameters would be rejected.

    Further, the fitted scale for Treated is positive -- i.e. we see that Treated is stronger than Raw.

    If you want estimated means, estimates of the scale parameters, or estimates of particular quantiles, a little more work will be required but it's not difficult to do. For example, the fitted characteristic strengths are 79.68 MPa and 86.18 MPa and the fitted common Weibull modulus (shape) is 23.25.

    ecdf of each group and fitted Weibull cdfs

  2. You might instead want to check for any difference in distribution; this would involve testing for differences in both parameters. Again, we'd look to do a likelihood ratio test, though it's slightly more involved than the above.

  3. You might want to test for a difference (either in scale or in distribution) without assuming a specific distributional form. There are nonparametric tests that could be used in either case.

  4. It might be possible to consider a permutation test of the scale parameter based off your Weibull plot, by fitting a common slope but separate intercepts, but it will have lower power (and would be slightly more involved to carry out than a simple Weibull regression as in item 1.)

Glen_b
  • 282,281
  • Wow, much thanks for that extremely detailed answer! My apologies for not revisiting this post sooner; I've been spending a great deal of time in the field and am just now starting to settle back into office life. In any case, it will take a little bit to digest your various points, but it appears to point me in the right direction. This may have been the most valuable response I've ever received on one of these forums. – Mike S. Sep 26 '19 at 03:07
0

Given:

"FLEX = Specimen flexural strength

F = (FLEX-.5)/10 [sorted smallest to largest]

X = LN(FLEX)

Y = LN(LN(1/(1-F)))"

We have

X = LN(FLEX) = f(FLEX)

Y = LN(LN(1/(1-F))) = Y = LN(LN(1/(1- (FLEX-.5)/10))) = g(FLEX) = g(f$^{-1}$(X)) =h(X)

So your Y and X are linked by a function h, and this relation is determined and no random component. So your question is not belong to statistics.

user158565
  • 7,461
  • My apologies. While looking at my spreadsheet again, I realize I initially defined F and Y incorrectly. It should look like this. Rank indicates the value's rank, with smallest=1.

    F = (RANK-.5)/10 Y = LN(LN((1/(1-F))

    – Mike S. Jul 28 '19 at 04:35
  • Another edit. I really should have looked at my spreadsheet a little more closely. F = (RANK-.5)/n – Mike S. Jul 28 '19 at 04:45
  • After your editing, the relationship between X and Y is more directly. – user158565 Jul 28 '19 at 18:48