【发布时间】:2016-04-19 05:03:29
【问题描述】:
我正在使用 Python scikit-learn 对从 csv 获得的数据进行简单的线性回归。
reader = pandas.io.parsers.read_csv("data/all-stocks-cleaned.csv")
stock = np.array(reader)
openingPrice = stock[:, 1]
closingPrice = stock[:, 5]
print((np.min(openingPrice)))
print((np.min(closingPrice)))
print((np.max(openingPrice)))
print((np.max(closingPrice)))
peningPriceTrain, openingPriceTest, closingPriceTrain, closingPriceTest = \
train_test_split(openingPrice, closingPrice, test_size=0.25, random_state=42)
openingPriceTrain = np.reshape(openingPriceTrain,(openingPriceTrain.size,1))
openingPriceTrain = openingPriceTrain.astype(np.float64, copy=False)
# openingPriceTrain = np.arange(openingPriceTrain, dtype=np.float64)
closingPriceTrain = np.reshape(closingPriceTrain,(closingPriceTrain.size,1))
closingPriceTrain = closingPriceTrain.astype(np.float64, copy=False)
openingPriceTest = np.reshape(openingPriceTest,(openingPriceTest.size,1))
closingPriceTest = np.reshape(closingPriceTest,(closingPriceTest.size,1))
regression = linear_model.LinearRegression()
regression.fit(openingPriceTrain, closingPriceTrain)
predicted = regression.predict(openingPriceTest)
最小值和最大值显示为 0.0 0.6 41998.0 2593.9
但我收到此错误 ValueError:Input contains NaN, infinity or a value too large for dtype('float64').
我应该如何消除这个错误? 因为从上面的结果来看,它确实不包含无穷大或 Nan 值。
解决办法是什么?
编辑:all-stocks-cleaned.csv 位于http://www.sharecsv.com/s/cb31790afc9b9e33c5919cdc562630f3/all-stocks-cleaned.csv
【问题讨论】:
-
请尝试提供可重现的示例。
-
@iled all-stocks-cleaned.csv 可通过sharecsv.com/s/cb31790afc9b9e33c5919cdc562630f3/…获得
标签: python numpy machine-learning scikit-learn