Why do I get an NaN error with the ttest?
    6 views (last 30 days)
  
       Show older comments
    
I am trying to do a statistical analysis. I have two sets of data and try to find out if one is always a little higher. For the analysis I also need the significance.
I was trying the ttest, but for several answers I get NaN. 
How can I fix that, do I have to use a different test?
Thanks for any help.

1 Comment
  Adam Danz
    
      
 on 10 Dec 2019
				I have two binary vectors with same elements. I mean, if X and Y are the two binary vectors, then X=Y. Now when I am running ttest(X,Y), it is giving me h=NaN and p=NaN. Does anyone know, how to handel this issue? Is there any alternate test to do this job?
I am a bigginner in statistics. So kindly help me to understand this. 
Thank you in advanced!
Answers (2)
  Star Strider
      
      
 on 21 Jul 2019
        The degrees-of-freedom are 0.  It seems you likely do not have enough data to perform a t-test (or likely any other test of individual or group differences).  
2 Comments
  Star Strider
      
      
 on 22 Jul 2019
				
      Edited: Star Strider
      
      
 on 23 Jul 2019
  
			You are apparently not presenting them to the ttest function as single-precision or double-precision numeric values.  (They cannot be symbolic, categorical, strings, characters, or anything other than numeric values.)  There appears to be no data in your vectors that ttest can use.  
EDIT — The only way I can reproduce the results you get is with: 
[h,p,ci,stat] = ttest(0, 1)
  Adam Danz
    
      
 on 10 Dec 2019
        
      Edited: Adam Danz
    
      
 on 10 Dec 2019
  
      Rather than copying the answer to here, see this review of possible causes of NaN output in ttest().  
0 Comments
See Also
Categories
				Find more on Logical in Help Center and File Exchange
			
	Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!

