Ich habe einen riesigen Datensatz und vor der maschinellen Lernmodellierung wird immer vorgeschlagen, zuerst stark korrelierte Deskriptoren (Spalten) zu entfernen, wie kann ich die Spaltenwichtekorrelation berechnen und die Spalte mit einem Schwellenwert entfernen, sagen wir alle entfernen Spalten oder Deskriptoren mit & gt; 0,8-Korrelation. Außerdem sollte es die Header in Daten reduzieren ..
Beispieldatensatz
%Vor%Bitte helfen Sie ....
Hier ist der Ansatz, den ich verwendet habe -
%Vor%Hoffe, das hilft!
Erstens würde ich vorschlagen, etwas wie PCA als Dimensionalität Reduktion Methode, aber wenn Sie Ihre eigenen rollen müssen, dann ist Ihre Frage nicht ausreichend eingeschränkt. Wo zwei Spalten korreliert sind, welche möchten Sie entfernen? Was ist, wenn die Spalte A mit der Spalte B korreliert ist, während die Spalte B mit der Spalte C korreliert ist, nicht aber mit der Spalte A?
Sie können eine paarweise Korrelationsmatrix erhalten, indem Sie DataFrame.corr()
( Dokumente aufrufen ), die Ihnen bei der Entwicklung Ihres Algorithmus helfen könnten, aber letztendlich müssen Sie dies in eine Liste von Spalten konvertieren, die Sie behalten möchten.
Sie können für einen gegebenen Datenrahmen df:
verwenden %Vor%