2017-12-30 29 views
1

Ich habe einen riesigen Datensatz (2653, 17). Ich habe bemerkt, dass zwei Spalten etwas verwandt sind, aber nicht genau, wie ich aus der Methode value_counts abgeleitet habe. Was ich meine ist der Großteil des entsprechenden Eintrags von I ist M oder von C ist NaN. Gibt es eine Möglichkeit, dies zu bestätigen oder zu berechnen, wie viele Einträge auf diese Weise verknüpft sind? Ich habe versucht, sie in numerische Werte und Korrelationsverfahren zu konvertieren, aber ich denke nicht, dass das hier funktioniert.Vergleichen von Spalten eines Datensatzes mit Python

enter image description here

+1

Dieser SO Post könnte ein guter pl sein ace zu starten - https://stackoverflow.com/questions/25571882/pandas-columns-correlation-with-statistical-significance. ASFAIK müssen Sie diese Buchstaben in eindeutige numerische Werte umwandeln, damit diese Tests funktionieren. – TheF1rstPancake

+2

Kannst du sie nicht einfach überkreuzen mit '' pd.crosstab (df.customer_type, df.sex) ''und siehst, was auftaucht? –

+1

Eine andere Sache, auf die Sie achten müssen, ist, dass Ihre "Sex" -Spalte nicht viel Variation hat. Es wird also wahrscheinlich nicht sehr hilfreich sein. Aber das könnte außerhalb des Bereichs Ihres aktuellen Problems liegen. – TheF1rstPancake

Antwort

0

Crosstab sollte die ursprüngliche Methode, um zu sehen Beziehung zwischen zwei kategorialen Variablen:

df = pd.DataFrame(data = {'customer_type': ['I','I','I','C','C','C','I'], 
      'sex': ['M','M','M','','','','M']}) 
print(df) 
print(pd.crosstab(df.customer_type, df.sex)) 

Ausgang:

sex    M 
customer_type  
C    3 0 
I    0 4 

es auch sehr hilfreich sein Visualizing kann: https://stats.stackexchange.com/questions/147721/which-is-the-best-visualization-for-contingency-tables

+0

Die Kreuztabellenmethode zeigt nicht das vollständige Bild in meiner Dataset wegen Fehler "Der Name keine tritt mehrmals auf, verwenden Sie eine Ebenennummer", wenn ich pd.crosstab (train.sex, train.customer_type, Ränder = True, dropna = False). Dies ist ein Fehler in der Kreuztabelle, der in https://github.com/pandas-dev/pandas/issues/13279 und in https://github.com/pandas-dev/pandas/issues/10772 aufgetreten ist – deadcode

Verwandte Themen