Fehler bei der CORR-Funktion in Pandas

Ich hatte eine CSV-Datei von 2 Aktienkursen Daten, die ich einige native Python-Codierung, um 2 einzelne Listen von Preisen (in Dezimalstellen) von 2 Lagerzähler zu erstellen.

Ich habe dann umgewandelt sie in 2 Pandas Dataframe, verwendet die .pct_change () -Funktion dann angewendet die a.corr (b) -Funktion in einem Versuch, die Korrelation zu bekommen.

Das ist der Fehler msg das ich bekam Wer kann hier das Problem beraten?

Traceback (most recent call last): File "D:/python/NQ_MSFT regression.py", line 71, in <module> print(nqpct.corr(mspct)) File "C:\Anaconda3\lib\site-packages\pandas\core\frame.py", line 4431, in corr if method == 'pearson': File "C:\Anaconda3\lib\site-packages\pandas\core\generic.py", line 731, in __nonzero__ .format(self.__class__.__name__)) ValueError: The truth value of a DataFrame is ambiguous. Use a.empty, a.bool(), a.item(), a.any() or a.all(). 

  • Effizienzprobleme bei der Suche nach Korrelationen zwischen Listen in Listen
  • Pandas Correlation Groupby
  • Berechnen des Korrelationskoeffizienten zwischen zwei mehrdimensionalen Arrays
  • Gewichteter Korrelationskoeffizient mit Pandas
  • Effiziente paarweise Korrelation für zwei Matrizen von Features
  • Generierte korrelierte Daten in Python (3.3)
  • One Solution collect form web for “Fehler bei der CORR-Funktion in Pandas”

    Ok, ich habe erkannt, dass es funktioniert, wenn ich die Liste in eine Pandas-Serie anstatt ein Dataframe analysiere und meine Anfangspreise von String zu floaten und nicht zu Dezimalstellen ändere. Warum funktioniert die Korrelationsfunktion nicht mit dezimalen Datentypen?

     Traceback (most recent call last): File "D:/python/NQ_MSFT regression.py", line 64, in <module> nqpct = nq_df.pct_change() File "C:\Anaconda3\lib\site-packages\pandas\core\generic.py", line 4573, in pct_change axis=axis, **kwargs)) - 1) File "C:\Anaconda3\lib\site-packages\pandas\core\ops.py", line 866, in flex_wrapper return self._binop(other, op, level=level, fill_value=fill_value) File "C:\Anaconda3\lib\site-packages\pandas\core\series.py", line 1536, in _binop result = func(this_vals, other_vals) TypeError: unsupported operand type(s) for /: 'decimal.Decimal' and 'float' 
    Python ist die beste Programmiersprache der Welt.