Groups tutorial - sample data / guidance?

Dear Bea and Martin, @bpaniagua @styner

Thanks for your answer! Following on Bea’s suggestion, I have quality controlled all the files and made sure that they are all aligned using phi color map. So, input the files, select one *_pp_surf_para.vtk as the spherical template, select mean model of all healthy subjects as the shape for visualizing the p-values. But I still got p-values in the range of 0.889 to 0.999, nothing significant.

I noticed some abnormalities in the pvalues.json file. I have 2 groups, same as the example, but I am afraid that the Covariate Significance Testing module assumes I only have 1 group instead of 2. To be more specific, in the example, the pvalues.json looks like this
“Gpvals”: [[0.279, 0.256]],
“clu_pvals”: [[0.026, 0.022]],
“Lpvals_fdr”: [[1.0, 1.0], [1.0, 1.0], [1.0, 1.0], [0.805, 0.8053], … ]

Like, they are paired which, I think, mean there are 2 groups. Whreas in my pvalues.json file,

“Gpvals”: [[0.412]],
“clu_pvals”: [[1.0]],
“Lpvals_fdr”: [[0.996], [0.999], [0.889], [0.899],…]

Is it that I’ve constructed the csv file in a wrong way? My csv file looks like this (2 columns):
VTKfiles class
path-to-vtk 0
path-to-vtk 0
path-to-vtk 0
path-to-vtk 1
path-to-vtk 1
path-to-vtk 1

Many thanks!

Shane

Hi Shane,

Have you tried to include the full paths to your vtk files in the csv you are constructing?
Are you able to run the examples data without trouble and see the two areas of significant p-values in the ellipsoid example?

Thanks,

Bea

Hi Bea, @bpaniagua @styner

Yes, the path used was the full path.

Yes, I am able to run the example and have seen the two significant different areas (see pic below):


I found the pvalus.json file for this example after running on my computer looks like:
“Gpvals”: [[0.0]],
“clu_pvals”: [[0.0]],
“Lpvals_fdr”: [[0.999], [0.999], [0.999], [0.0], [3.1578e-10], … ]
In ShapePopulationViewer, I can see the attributes have distance,
pvalue_0, betavalues_0_0, betavalues_0_1, betavalues_1_0, betavalues_1_1, betavalues_2_0, betavalues_2_1

However, for my data, I just got
pvalue_class, betavalues_0_class, betavalues_0_1, betavalues_1_class, betavalues_1_1, betavalues_2_class, betavalues_2_1

It seems that “class” substitutes “0” in my case. But the p-values in my case are still 0.95 to 0.99, nothing significant. I am so confused by this …:sob:

Many thanks!

Best regards,

Yutao

Hi all, and especially @bpaniagua,

I’m still struggling a bit with the shape analysis. It seems that I have the same problem as @Shane_TANG. So I’m eagerly following this thread.

Furthermore, I’ve noticed the following two things:

  1. When I inspect the output dir of Step 3, I noticed that the *SPHARM_procalign.vtk’s are half the size of the *SPARHM.vtk’s. What is the reason for this? Seems a bit strange that the SPHARM’s that are procrustes aligned, contain less information. But I might be missing something here.

  2. When I load the bump**.vtk of the example data for shape statistics I noticed that the attributes contain “distance”. However, when I load a *SPHARM.vtk in SlicerSalt from my own dataset, it does not contain the attribute “distance”. What might be happening here?

Looking forward again to your reply!

Many thanks :pray:

Best,
Jasper

Hi Jasper, @JON

For 2, I actually cannot run that example on my Mac. My results above was run on a Windows 10 PC. You might want to try on windows system as I feel Slicer behaves differently on MacOS and Windows.

But I am still confused where I went wrong. It also seemed the module didn’t recognize that I have 2 groups…:crying_cat_face:

Many thanks!

Shane

Hi all, @bpaniagua @thomshaw92 @styner

I have another question regarding the output of the covariance significance testing module.
I have a CSV file with 4 columns:

File (column 1), Group (column 2), Age (column 3), Gender (column 4)
path/to/volume.vtk 1 49 1
path/to/volume.vtk 0 51 1
path/to/volume.vtk 1 37 1

And the outputs contain three p-value attributes: pvalue_1, pvalue_2, pvalue_Group Age Gender

What do these three attributes mean? Is pvalue_1 the attribute for the p-values of the variable “Group” and pvalue_2 the attribute for the p-values of the variable “Age”, and pvalue_Group Age Gender the attribute for the pvalues of the interaction between groupagegender? Or is it just for the third variable (i.e. gender)?

Looking forward to hearing from you.
Many thanks in advance!

Best,
Jasper

Hi @JON,

Sorry about that, you’ve run into a bug in how the module uses the covariate names to name the data arrays. I’ve submitted a fix for this problem that should start showing up in the SlicerSALT nightly builds in the next few days (you can check out the pull request to monitor progress).

What’s happening currently is that all of the labels are getting incorrectly applied to the first covariate. So in your case, ‘pvalue_Group Age Gender’ should be the pvalue for Group, pvalue_1 is for Age, and pvalue_2 is for Gender.

Jared

1 Like

Hi @Jared_Vicory,

Thanks for your quick response. I will monitor the progress and get the latest build whenever it’s ready.

Best,
Jasper