[英]can anyone please explain why showing the error it saying require 2d but given was 1d but pandas series are 1d right can anyone please explain
my_train_list = {"area": [1000,2000,3000,4000,5000], "price":[1000000,2000000,3000000,4000000,5000000]}
my_df = pd.DataFrame(my_train_list)
my_x = my_df['area']
my_y = my_df.price
my_lin_pre = linear_model.LinearRegression()
my_lin_pre.fit([my_x], my_y)
誰能解釋為什么它說它說需要二維數組給定一維數組但pandas中的系列是一維的錯誤
誰能解釋一下如何解決這個問題?
Scikit-learn 估計器和轉換器除了 2D 陣列。 您的輸入應該是一個特征數組(其中每個特征本身就是一個數組)。
您可以執行以下操作來修復您的代碼:
from sklearn.linear_model import LinearRegression
X = my_df[['area']]
y = my_df.price
model = LinearRegression()
model.fit(X, Y)
這里的技巧是my_df[['area']]
將返回pd.DataFrame
(2D) 而不是pd.Series
(1D)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.