@dmbgdnwtch

Не понимаю, как исправить ошибку. Почему выдает тип str?

Ошибка в данной строчке X_grid = np.arange(min(x),max(x),0.1)
"TypeError: unsupported operand type(s) for -: 'str' and 'str'"
исходный код :

import pandas as pd
import numpy as np
import matplotlib.pyplot as plt

dataset = pd.read_csv('google.csv')
dataset.shape
dataset

dataset.plot(x = "Open", y = "High", alpha = 0.4)
plt.title('Торги акциями Gogle')
plt.xlabel("Цена на старте дня")
plt.ylabel("Наивысшая цена")
plt.xlim(60,100)
plt.ylim(60,100)
dataset.plot(x = "Open", y = "High", alpha = 0.9)
plt.title('Торги акциями Gogle')
plt.xlabel("Цена на старте дня")
plt.ylabel("Наивысшая цена")

x = pd.DataFrame(dataset.Open)
y = pd.DataFrame(dataset.High)

from sklearn.linear_model import LinearRegression
model = LinearRegression()
model.fit(x,y)

plt.scatter(x,y, color='red')
plt.plot(x, model.predict(x),color='green')
plt.title("Результат линейной регрессии")
plt.xlim(60,100)
plt.ylim(60,100)

from sklearn.preprocessing import PolynomialFeatures
poly_reg= PolynomialFeatures(degree=2)
x_poly = poly_reg.fit_transform(x)

lin_reg2 = LinearRegression()
lin_reg2.fit(x_poly,y)

X_grid = np.arange(min(x),max(x),0.1)
X_grid = X_grid.reshape(len(X_grid),1)
plt.scatter(x,y, color='red')
  • Вопрос задан
  • 115 просмотров
Пригласить эксперта
Ответы на вопрос 1
@o5a
Проблема в использовании min(x) на
x = pd.DataFrame(dataset.Open)
В данном случае она возвратит название колонки, т.е. строку. Чтобы найти минимум по данным, надо явно указать, по какой колонке искать, т.е. min(x.Open)
Или же изначально x делать не DataFrame, а Series
x = pd.Series(dataset.Open)
Тогда можно использовать min(x)
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы