@@ -180,25 +180,25 @@ def linear_discriminant_analysis(
180180 assert classes > dimensions
181181
182182 if features .any ():
183- sb = covariance_between_classes (features , labels , classes )
184- sw = covariance_within_classes (features , labels , classes )
183+ sb = covariance_between_classes (features , labels , classes )
184+ sw = covariance_within_classes (features , labels , classes )
185185
186- # Solve the generalized eigenvalue problem: Sb v = λ Sw v
187- eigenvalues , eigenvectors = eigh (sb , sw )
186+ # Solve the generalized eigenvalue problem: Sb v = λ Sw v
187+ eigenvalues , eigenvectors = eigh (sb , sw )
188188
189- # Sort eigenvectors by eigenvalues (descending)
190- idx = np .argsort (eigenvalues )[::- 1 ]
191- eigenvectors = eigenvectors [:, idx ]
189+ # Sort eigenvectors by eigenvalues (descending)
190+ idx = np .argsort (eigenvalues )[::- 1 ]
191+ eigenvectors = eigenvectors [:, idx ]
192192
193- # Take top "dimensions"
194- filtered_eigenvectors = eigenvectors [:, :dimensions ]
193+ # Take top "dimensions"
194+ filtered_eigenvectors = eigenvectors [:, :dimensions ]
195195
196- projected_data = np .dot (filtered_eigenvectors .T , features )
197- logging .info ("Linear Discriminant Analysis computed" )
198- return projected_data
196+ projected_data = np .dot (filtered_eigenvectors .T , features )
197+ logging .info ("Linear Discriminant Analysis computed" )
198+ return projected_data
199199 else :
200- logging .error ("Dataset empty" )
201- raise AssertionError
200+ logging .error ("Dataset empty" )
201+ raise AssertionError
202202
203203
204204def locally_linear_embedding (
0 commit comments