@@ -159,7 +159,7 @@ def covariance_matrix_optimized(ds)
159159
160160 def covariance_matrix ( ds )
161161 vars , cases = ds . ncols , ds . nrows
162- if !ds . has_missing_data? and Statsample . has_gsl? and prediction_optimized ( vars , cases ) < prediction_pairwise ( vars , cases )
162+ if !ds . include_values? ( * Daru :: MISSING_VALUES ) and Statsample . has_gsl? and prediction_optimized ( vars , cases ) < prediction_pairwise ( vars , cases )
163163 cm = covariance_matrix_optimized ( ds )
164164 else
165165 cm = covariance_matrix_pairwise ( ds )
@@ -198,7 +198,7 @@ def covariance_matrix_pairwise(ds)
198198 # Order of rows and columns depends on Dataset#fields order
199199 def correlation_matrix ( ds )
200200 vars , cases = ds . ncols , ds . nrows
201- if !ds . has_missing_data? and Statsample . has_gsl? and prediction_optimized ( vars , cases ) < prediction_pairwise ( vars , cases )
201+ if !ds . include_values? ( * Daru :: MISSING_VALUES ) and Statsample . has_gsl? and prediction_optimized ( vars , cases ) < prediction_pairwise ( vars , cases )
202202 cm = correlation_matrix_optimized ( ds )
203203 else
204204 cm = correlation_matrix_pairwise ( ds )
@@ -248,7 +248,7 @@ def n_valid_matrix(ds)
248248 m = vectors . collect do |row |
249249 vectors . collect do |col |
250250 if row ==col
251- ds [ row ] . only_valid . size
251+ ds [ row ] . reject_values ( * Daru :: MISSING_VALUES ) . size
252252 else
253253 rowa , rowb = Statsample . only_valid_clone ( ds [ row ] , ds [ col ] )
254254 rowa . size
@@ -281,7 +281,7 @@ def spearman(v1,v2)
281281 # Calculate Point biserial correlation. Equal to Pearson correlation, with
282282 # one dichotomous value replaced by "0" and the other by "1"
283283 def point_biserial ( dichotomous , continous )
284- ds = Daru ::DataFrame . new ( { :d => dichotomous , :c => continous } ) . dup_only_valid
284+ ds = Daru ::DataFrame . new ( { :d => dichotomous , :c => continous } ) . reject_values ( * Daru :: MISSING_VALUES )
285285 raise ( TypeError , "First vector should be dichotomous" ) if ds [ :d ] . factors . size != 2
286286 raise ( TypeError , "Second vector should be continous" ) if ds [ :c ] . type != :numeric
287287 f0 = ds [ :d ] . factors . sort . to_a [ 0 ]
0 commit comments