Lineare Regression mit Pandas-Datenrahmen

Ich habe einen Datenrahmen in Pandas, den ich zum Erstellen eines Streudiagramms verwende, und möchte eine Regressionslinie für das Diagramm einfügen. Im Moment versuche ich das mit polyfit zu machen.

Hier ist mein Code:

import pandas as pd
import matplotlib
import matplotlib.pyplot as plt
from numpy import *

table1 = pd.DataFrame.from_csv('upregulated_genes.txt', sep='\t', header=0, index_col=0)
table2 = pd.DataFrame.from_csv('misson_genes.txt', sep='\t', header=0, index_col=0)
table1 = table1.join(table2, how='outer')

table1 = table1.dropna(how='any')
table1 = table1.replace('#DIV/0!', 0)

# scatterplot
plt.scatter(table1['log2 fold change misson'], table1['log2 fold change'])
plt.ylabel('log2 expression fold change')
plt.xlabel('log2 expression fold change Misson et al. 2005')
plt.title('Root Early Upregulated Genes')
plt.axis([0,12,-5,12])

# this is the part I'm unsure about
regres = polyfit(table1['log2 fold change misson'], table1['log2 fold change'], 1)

plt.show()

Aber ich bekomme folgenden Fehler:

TypeError: cannot concatenate 'str' and 'float' objects

Weiß jemand, wo ich hier falsch liege? Ich bin mir auch nicht sicher, wie ich die Regressionslinie zu meinem Diagramm hinzufügen soll. Alle anderen allgemeinen Kommentare zu meinem Code wären ebenfalls sehr dankbar. Ich bin noch ein Anfänger.

Antworten auf die Frage(1)

Ihre Antwort auf die Frage