Вопрос требует создания полинома второй степени для подбора некоторых данных и последующей распечатки коэффициентов.Я должен построить исходные данные и наложить полиномиальное соответствие на одном графике.
Ранее я задавал почти такой же вопрос, и проблем не было, поэтому я немного застрял в том, почему это не работает.Сообщение об ошибке гласит:
y1 = p [0] * x + p [1] Ошибка типа: не может умножить последовательность на не-int типа 'numpy.float64' '
Мне кажется, я понимаю, что появляется это сообщение об ошибке, потому что ему не нравится [], но это то, как я делал это раньше, так что я не знаю?Я немного поэкспериментировал с уравнением, чтобы попытаться заставить его работать, но ничто не делает его правильным.
x=(0.0,0.45,0.89,1.34,1.79,2.24,2.69,3.14,3.59,4.04,4.49,4.94,5.39,5.83,6.28)
y=(0.36,0.30,0.311,0.09,0.51,0.55,1.10,1.11,1.45,1.74,2.30,2.52,3.26,3.69,4.12)
r,s=st.pearsonr(x,y)
print'The Pearson Correlation Coefficient of this polynomial is',r
p=np.polyfit(x,y,2)
y1=p[0]*x+p[1]
plt.plot(x,y1,'-r')
plt.plot(x,y,'o')
plt.xlabel('x')
plt.ylabel('y')
plt.title('Polynomial')
plt.show()
Я ожидаю, что будет получен график, отображающий фактические данные, а также графиклиния сверху, представляющая полиномиальную посадку.