Rank: 28 based on 1143 downloads (last 30 days) and 55 files submitted
photo

Giuseppe Cardillo

E-mail
Lat/Long
40.861958, 14.216673

Personal Profile:

I'm a biochemist with a PhD in Biotechnologies

Professional Interests:
Biochemestry and Molecular Biology

 

Watch this Author's files

 

Files Posted by Giuseppe View all
Updated   File Tags Downloads
(last 30 days)
Comments Rating
12 Jul 2010 Screenshot ROC curve compute a ROC curve Author: Giuseppe Cardillo probability, statistics, roc, curve, receiver operating ch... 301 13
  • 3.41667
3.4 | 14 ratings
12 Jul 2010 Screenshot Bibliometrics: the art of citations indices Compute practically all bibliometric indices actually known. Author: Giuseppe Cardillo batista, hirsch, hcindec, zhang, schreiber, hiindex 54 0
09 Jun 2010 Screenshot MyFisher22 A very compact routine for Fisher's exact test on 2x2 matrix; power and sample sizes calculation Author: Giuseppe Cardillo statistics, probability, matrix power, matrix, 2x2, fishers exact test 26 4
  • 3.0
3.0 | 2 ratings
10 May 2010 Screenshot CODIS Combined DNA Index System: a GUI tool for forensic paternity lawsuit Author: Giuseppe Cardillo biotech, gui 10 0
23 Apr 2010 MyFriedman Friedman test for non parametric two way ANalysis Of VAriance Author: Giuseppe Cardillo friedman, non parametric, statistics, anova2 20 0
Comments and Ratings by Giuseppe View all
Updated File Comments Rating
03 May 2010 Logrank Comparing survival curves of two groups using the log rank test Author: Giuseppe Cardillo

Thank you for your comment. If you type on matlab "help logrank" you'll find the reference.

03 Mar 2010 ROC curve compute a ROC curve Author: Giuseppe Cardillo

Dear Hannes, I took care of Michael's comment: in fact in the previous version of the function there was a bug on true positives and false positives computation that I fixed. Moreover, I erased the convention that higher values of a test are abnormal. The only convention is: 0 for the group that has not the tested character (i.e. healthy subjects); 1 for the group that has the teste character (i.e. subjects with a disease). I think everybody uses this convention.

Looking to the code:

bar0=median(x(x(:,2)==0),1); %median value of group 0
bar1=median(x(x(:,2)==1),1); %median value of group 1

for K=1:ll %For each unique value
    if bar0<=bar1 %when the values of group 0 (controls) are generally lower than values of group 1 (patients)...
        TN=length(x(x(:,2)==0 & x(:,1)<=labels(K))); %True Negative are the number of subjects of group 0 with a test value <= current unique value
        FP=length(x(x(:,2)==0 & x(:,1)>labels(K))); %False Positive are the number of subjects of group 0 with a test value > current unique value
        TP=length(x(x(:,2)==1 & x(:,1)>labels(K))); %True Positive are the number of subjects of group 1 with a test value > current unique value
        FN=length(x(x(:,2)==1 & x(:,1)<=labels(K))); %False Negative are the number of subjects of group 1 with a test value <= current unique value
    else %when the values of group 0 (controls) are generally higher than values of group 1 (patients)...
        TN=length(x(x(:,2)==0 & x(:,1)>=labels(K))); %True Negative are the number of subjects of group 0 with a test value >= current unique value
        FP=length(x(x(:,2)==0 & x(:,1)<labels(K))); %False Positive are the number of subjects of group 0 with a test value < current unique value
        TP=length(x(x(:,2)==1 & x(:,1)<labels(K))); %True Positive are the number of subjects of group 1 with a test value < current unique value
        FN=length(x(x(:,2)==1 & x(:,1)>=labels(K))); %False Negative are the number of subjects of group 1 with a test value <= current unique value
    end
    a(K,:)=[TP/(TP+FN) TN/(TN+FP)]; %Sensitivity and Specificity
end

In the first versions, I didn't take in account that group 0 could have higher values than group 1: when this condition occurred, the ROC curve was below the bisector and it was mirrored.
In the next versions, this condition is taken in account and so, I think that Sensitivity and Specificity are correctly computed.

When bar0<=bar1, the ROC points flow from right to left (or, in other words, from the point [1,1] to the point [0,0]). If you use the trapz function the result is wrong because to use trapz x data must be monotonically increasing.
In this case, I flip up-down xroc and yroc (and the labels, of course) to respect the condition to use trapz and the data are not warped. I think that is indifferent for the user to know this information.

Finally, if the bisector is the result of a random classifier, I think that there is not a classifier worse than chance and the AROC is always >=0.5

23 Feb 2010 ROC curve compute a ROC curve Author: Giuseppe Cardillo

Dear Hannes Braberg, as it is highlighted:
"Please remember the following when providing feedback on a submission: Provide specific information on what you like and dislike about the submission."
A low rating can be acceptable is there is an incontestable reason...

09 Sep 2009 Logrank Comparing survival curves of two groups using the log rank test Author: Giuseppe Cardillo

At the moment, there is not on FEX the new uploaded file (this takes 1-2 days). If you contact me in private, I'll send you the file as an attach

09 Sep 2009 Logrank Comparing survival curves of two groups using the log rank test Author: Giuseppe Cardillo

You are partially right. If you use only the first column, the routine crashes because the informations in the second column are mandatory. If you want no censored data:
>> x1(:,2)=0; x2(:,2)=0; logrank(x1,x2);

Anyway, a bug was present but I fixed it and upload the new version.

Comments and Ratings on Giuseppe's Files View all
Updated File Comment by Comments Rating
29 Jul 2010 ROC curve compute a ROC curve Author: Giuseppe Cardillo Oshin, Segun

Hi, the code is very good. However, I encounter an error where the cut-off point is set, on line 186,

??? Attempted to access labels(7397); index out of bounds because numel(labels)=7396.

Error in ==> roc at 186
        co=labels(J); %Set the cut-off point

Is there a way to fix this?
Kind regards!

29 Jul 2010 ROC curve compute a ROC curve Author: Giuseppe Cardillo Oshin, Segun

03 May 2010 Logrank Comparing survival curves of two groups using the log rank test Author: Giuseppe Cardillo Cardillo, Giuseppe

Thank you for your comment. If you type on matlab "help logrank" you'll find the reference.

30 Apr 2010 Logrank Comparing survival curves of two groups using the log rank test Author: Giuseppe Cardillo Rey, J

Beautiful, thanks for sharing this. If we use your software for a journal purpose, what reference should we use?

30 Apr 2010 Logrank Comparing survival curves of two groups using the log rank test Author: Giuseppe Cardillo Rey, J

Top Tags Applied by Giuseppe
statistics, probability, biotech, example, gui tools
Files Tagged by Giuseppe View all
Updated   File Tags Downloads
(last 30 days)
Comments Rating
12 Jul 2010 Screenshot ROC curve compute a ROC curve Author: Giuseppe Cardillo probability, statistics, roc, curve, receiver operating ch... 301 13
  • 3.41667
3.4 | 14 ratings
12 Jul 2010 Screenshot Bibliometrics: the art of citations indices Compute practically all bibliometric indices actually known. Author: Giuseppe Cardillo batista, hirsch, hcindec, zhang, schreiber, hiindex 54 0
09 Jun 2010 Screenshot MyFisher22 A very compact routine for Fisher's exact test on 2x2 matrix; power and sample sizes calculation Author: Giuseppe Cardillo statistics, probability, matrix power, matrix, 2x2, fishers exact test 26 4
  • 3.0
3.0 | 2 ratings
10 May 2010 Screenshot CODIS Combined DNA Index System: a GUI tool for forensic paternity lawsuit Author: Giuseppe Cardillo biotech, gui 10 0
23 Apr 2010 MyFriedman Friedman test for non parametric two way ANalysis Of VAriance Author: Giuseppe Cardillo friedman, non parametric, statistics, anova2 20 0

Contact us at files@mathworks.com