Python pandas leer Korrelationsmatrix

Ich bin mit Python 2.7.6, pandas 0.13.1. Ich bin nicht in der Lage zur Berechnung der Korrelationsmatrix aus einem DataFrame, und ich bin nicht sicher, warum. Hier ist mein Beispiel DataFrame:

In [24]: foo
Out[24]:
                       A             B            C
2011-10-12   0.006204908 -0.0009503677  0.003480105
2011-10-13    0.00234903 -0.0005122284 -0.001738786
2011-10-14    0.01045599   0.000346268  0.002378351
2011-10-17   0.003239088   0.001246239 -0.002651856
2011-10-18   0.001717674 -0.0001738079  0.002013923
2011-10-19  0.0001919342  6.399505e-05 -0.001311259
2011-10-20  0.0007430615   0.001186141  0.001919222
2011-10-21   -0.01075129    -0.0015123  0.000807017
2011-10-24   -0.00819597 -0.0005124197  0.003037654
2011-10-25   -0.01604287   0.001157013 -0.001227516

[10 rows x 3 columns]

Jetzt werde ich versuchen, berechnen Sie die Korrelation:

In [27]: foo.corr()
Out[27]:
Empty DataFrame
Columns: []
Index: []

[0 rows x 0 columns]

Auf der anderen Seite kann ich berechnen, Korrelationen von jeder Spalte zu jeder anderen Spalte. Zum Beispiel:

In [31]: foo['A'].corr(foo['B'])
Out[31]: 0.048578514633405255

Jede Idee, was könnte dieses Problem verursacht werden? Vielen Dank.

Version Info

In [34]: import pandas as pd

In [35]: pd.__version__
Out[35]: '0.13.1'
  • Welche version verwenden Sie? df = pd.DataFrame(np.random.randn(10,3), columns=list('ABC'), index=pd.date_range('2012-01-01', periods=10)); df.corr() funktioniert für mich.
  • Dein Beispiel funktioniert bei mir auch.
  • sieht aus wie Sie haben object "dtype" Daten (siehe die Schwimmer sind nicht angetreten). eine astype(float) oder noch besser: Woher stammen die Daten? pls post foo.dtypes
  • Ahh... gute fangen, Jeff! Das ist Recht seltsam. Ich bin mir nicht sicher, wie die Daten transformiert, um ein Objekt geben, ich werde aber sicherlich haben zu Graben in. Vielen Dank für die Zeiger.
  • Wow, Jeff, thanks a lot. Ich hatte ein ähnliches problem, da hatte ich die Decimal-Objekte.
InformationsquelleAutor Max | 2014-03-18
Schreibe einen Kommentar