рдореИрдВ рдкрд╛рдпрдерди рдкрд░ рдПрдХ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдЪрд▓рд╛ рд░рд╣рд╛ рд╣реВрдВ рдФрд░ рдореИрдВ рдПрдХ рд╕рд░рдгреА рд╕реЗ рдЖрдВрдХрдбрд╝реЗ рдЖрдЙрдЯрдкреБрдЯ рдЙрддреНрдкрдиреНрди рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рддрд╛ рд╣реВрдВред
рдХреЛрдб рд▓рд╛рдЗрди:
regressor_OLS = sm.OLS (y, X_opt)ред рдлрд┐рдЯ ()
рдПрдХ рд╡рд┐рд╕реНрддреГрдд рддреНрд░реБрдЯрд┐ рджреА рдЧрдИ рд╣реИред
рдпрд╣ рдХреЛрдб рд╣реИ
np . рдХреЗ рд░реВрдк рдореЗрдВ numpy рдЖрдпрд╛рдд рдХрд░реЗрдВ
plt . рдХреЗ рд░реВрдк рдореЗрдВ matplotlib.pyplot рдЖрдпрд╛рдд рдХрд░реЗрдВ
рдкреАрдбреА . рдХреЗ рд░реВрдк рдореЗрдВ рдкрд╛рдВрдбрд╛ рдЖрдпрд╛рдд рдХрд░реЗрдВ
рдбреЗрдЯрд╛рд╕реЗрдЯ = pd.read_csv('50_Startups.csv')
рдПрдХреНрд╕ = рдбреЗрдЯрд╛рд╕реЗрдЯред рдЖрдИрд▓реЛрдХ [:,: -1]ред рдорд╛рди
y = рдбреЗрдЯрд╛рд╕реЗрдЯред iloc [:, 4]ред рдорд╛рди
рдкреНрд░рд┐рдВрдЯ (рдбреЗрдЯрд╛рд╕реЗрдЯ)
sklearn.preprocessing рд╕реЗ рдЖрдпрд╛рдд OneHotEncoder
sklearn.compose рд╕реЗ рдЖрдпрд╛рдд ColumnTransformer
рд╕реАрдЯреА = рдХреЙрд▓рдордЯреНрд░рд╛рдВрд╕рдлреЙрд░реНрдорд░ ([("рджреЗрд╢", рд╡рдирд╣реЙрдЯрдПрдирдХреЛрдбрд░ (), [3])], рд╢реЗрд╖ = 'рдкрд╛рд╕рдереНрд░реВ')
рдПрдХреНрд╕ = рд╕реАрдЯреА.рдлрд┐рдЯ_рдЯреНрд░рд╛рдВрд╕рдлреЙрд░реНрдо (рдПрдХреНрд╕)
рдПрдХреНрд╕ = рдПрдХреНрд╕ [:, 1:]
sklearn.model_selection рд╕реЗ рдЯреНрд░реЗрди_рдЯреЗрд╕реНрдЯ_рд╕реНрдкреНрд▓рд┐рдЯ рдЖрдпрд╛рдд рдХрд░реЗрдВ
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size = 0.2, random_state =0)
sklearn.linear_model рд╕реЗ LinearRegression рдЖрдпрд╛рдд рдХрд░реЗрдВ
рдкреНрд░рддрд┐рдЧрд╛рдореА = рд░реИрдЦрд┐рдХ рдкреНрд░рддрд┐рдЧрдорди ()
рд░реЗрдЬрд┐рд╕реНрдЯрд░ рдлрд┐рдЯ (рдПрдХреНрд╕_рдЯреНрд░реЗрди, рд╡рд╛рдИ_рдЯреНрд░реЗрди)
y_pred = рдкреНрд░рддрд┐рдЧрд╛рдореАред рднрд╡рд┐рд╖реНрдпрд╡рд╛рдгреА (X_test)
sm . рдХреЗ рд░реВрдк рдореЗрдВ statsmodels.api рдЖрдпрд╛рдд рдХрд░реЗрдВ
X= np.append(arr = np.ones((50,1)).astype(int), рдорд╛рди = X, рдЕрдХреНрд╖ = 1)
рдПрдХреНрд╕_рдСрдкреНрдЯ = рдПрдХреНрд╕[:,[0,1,2,3,4,5]]
regressor_OLS = sm.OLS (y, X_opt)ред рдлрд┐рдЯ ()
regressor_OLS.summary ()
`` `рдкрд╛рдпрдерди
np . рдХреЗ рд░реВрдк рдореЗрдВ numpy рдЖрдпрд╛рдд рдХрд░реЗрдВ
ufunc 'isfinite' рдЗрдирдкреБрдЯ рдкреНрд░рдХрд╛рд░реЛрдВ рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдерд┐рдд рдирд╣реАрдВ рд╣реИ, рдФрд░ рдЗрдирдкреБрдЯреНрд╕ рдХреЛ рдХрд╛рд╕реНрдЯрд┐рдВрдЧ рдирд┐рдпрдо ''рд╕реБрд░рдХреНрд╖рд┐рдд'' рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдХрд┐рд╕реА рднреА рд╕рдорд░реНрдерд┐рдд рдкреНрд░рдХрд╛рд░ рдХреЗ рд▓рд┐рдП рд╕реБрд░рдХреНрд╖рд┐рдд рд░реВрдк рд╕реЗ рдмрд╛рдзреНрдп рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
рдлрд╝рд╛рдЗрд▓ "C:UsersmoranaDocumentsAIUDEMYрдорд╢реАрди рд▓рд░реНрдирд┐рдВрдЧ A-ZPart 2 - рд░рд┐рдЧреНрд░реЗрд╢рдирд╕реЗрдХреНрд╢рди 5 - рдорд▓реНрдЯреАрдкрд▓ рд▓реАрдирд┐рдпрд░ рд░рд┐рдЧреНрд░реЗрд╢рдирдорд▓реНрдЯреАрдкрд▓ рд▓реАрдирд┐рдпрд░ рд░рд┐рдЧреНрд░реЗрд╢рди.py", рд▓рд╛рдЗрди 46, рдЗрди
regressor_OLS = sm.OLS (y, X_opt)ред рдлрд┐рдЯ ()
рдлрд╝рд╛рдЗрд▓ "C:UsersmoranaAppDataLocalContinuumanaconda3libsite-packagesstatsmodelsregressionlinear_model.py", рд▓рд╛рдЗрди 838, __init__ рдореЗрдВ
рд╣реИрд╕реНрдХреЛрдирд╕реНрдЯ = рд╣рд╕реНрдХреЛрдирд╕реНрдЯ, **kwargs)
рдлрд╝рд╛рдЗрд▓ "C:UsersmoranaAppDataLocalContinuumanaconda3libsite-packagesstatsmodelsregressionlinear_model.py", рд▓рд╛рдЗрди 684, __init__ рдореЗрдВ
рд╡рдЬрд╝рди = рд╡рдЬрд╝рди, рд╣реИрдХреЙрдиреНрд╕реНрдЯ = рд╣реИрдХреЙрдиреНрд╕реНрдЯ, **kwargs)
рдлрд╝рд╛рдЗрд▓ "C:UsersmoranaAppDataLocalContinuumanaconda3libsite-packagesstatsmodelsregressionlinear_model.py", рд▓рд╛рдЗрди 196, __init__ рдореЗрдВ
рд╕реБрдкрд░ (рд░рд┐рдЧреНрд░реЗрд╢рдирдореЙрдбрд▓, рд╕реЗрд▓реНрдл).__init__(endog, exog, **kwargs)
рдлрд╝рд╛рдЗрд▓ "C:UsersmoranaAppDataLocalContinuumanaconda3libsite-packagesstatsmodelsbasemodel.py", рд▓рд╛рдЗрди 216, __init__ рдореЗрдВ
рд╕реБрдкрд░ (рд╕рдВрднрд╛рд╡рдирд╛ рдореЙрдбрд▓, рд╕реНрд╡).__init__(endog, exog, **kwargs)
рдлрд╝рд╛рдЗрд▓ "C:UsersmoranaAppDataLocalContinuumanaconda3libsite-packagesstatsmodelsbasemodel.py", рд▓рд╛рдЗрди 68, __init__ рдореЗрдВ
**рдХреНрд╡рд╛рд░реНрдЧ)
рдлрд╝рд╛рдЗрд▓ "C:UsersmoranaAppDataLocalContinumanaconda3libsite-packagesstatsmodelsbasemodel.py", рд▓рд╛рдЗрди 91, _handle_data рдореЗрдВ
рдбреЗрдЯрд╛ = рд╣реИрдВрдбрд▓_рдбреЗрдЯрд╛ (рдПрдВрдбреЛрдЧ, рдПрдХреНрд╕реЛрдЧ, рд▓рд╛рдкрддрд╛, рд╣реИрдХреЙрдиреНрд╕реНрдЯ, **kwargs)
рдлрд╝рд╛рдЗрд▓ "C:UsersmoranaAppDataLocalContinuumanaconda3libsite-packagesstatsmodelsbasedata.py", рд▓рд╛рдЗрди 635, рд╣реИрдВрдбрд▓_рдбреЗрдЯрд╛ рдореЗрдВ
**рдХреНрд╡рд╛рд░реНрдЧ)
рдлрд╝рд╛рдЗрд▓ "C:UsersmoranaAppDataLocalContinuumanaconda3libsite-packagesstatsmodelsbasedata.py", рд▓рд╛рдЗрди 80, __init__ рдореЗрдВ
self._handle_constant(hasconst)
рдлрд╝рд╛рдЗрд▓ "C:UsersmoranaAppDataLocalContinuumanaconda3libsite-packagesstatsmodelsbasedata.py", рд▓рд╛рдЗрди 125, _handle_constant рдореЗрдВ
рдЕрдЧрд░ рдирд╣реАрдВ np.isfinite(ptp_).all():
рд▓реЗрдЦрди рддреНрд░реБрдЯрд┐: ufunc 'isfinite' рдЗрдирдкреБрдЯ рдкреНрд░рдХрд╛рд░реЛрдВ рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдерд┐рдд рдирд╣реАрдВ рд╣реИ, рдФрд░ рдЗрдирдкреБрдЯ рдХреЛ рдХрд╛рд╕реНрдЯрд┐рдВрдЧ рдирд┐рдпрдо ''рд╕реБрд░рдХреНрд╖рд┐рдд'' рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдХрд┐рд╕реА рднреА рд╕рдорд░реНрдерд┐рдд рдкреНрд░рдХрд╛рд░ рдХреЗ рд▓рд┐рдП рд╕реБрд░рдХреНрд╖рд┐рдд рд░реВрдк рд╕реЗ рдмрд╛рдзреНрдп рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
рд╕реНрдкрд╛рдЗрдбрд░ 4.0.0
1.17.4 3.7.3 (рдбрд┐рдлрд╝реЙрд▓реНрдЯ, 24 рдЕрдкреНрд░реИрд▓ 2019, 15:29:51) [рдПрдордПрд╕рд╕реА v.1915 64 рдмрд┐рдЯ (AMD64)]
рдЕрд░реЗ!
рдЖрдкрдХреЗ X_opt рд╕рд░рдгреА рдореЗрдВ рдПрдХ рдкреНрд░рдХрд╛рд░ рдХрд╛ рдСрдмреНрдЬреЗрдХреНрдЯ рд╣реИ рдФрд░ рдпрд╣ рдПрдХ рддреНрд░реБрдЯрд┐ рдЙрддреНрдкрдиреНрди рдХрд░ рд╕рдХрддрд╛ рд╣реИред рдЗрд╕реЗ рдлреНрд▓реЛрдЯ рдореЗрдВ рдмрджрд▓рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рдЖрдк рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:
X= np.append(arr = np.ones((50,1)).astype(int), рдорд╛рди = X, рдЕрдХреНрд╖ = 1)
рдПрдХреНрд╕_рдСрдкреНрдЯ = рдПрдХреНрд╕[:,[0,1,2,3,4,5]]
X_opt = np.array(X_opt, dtype=float)
рдордЬрд╝реЗ рдХрд░реЛ :D
рдзрдиреНрдпрд╡рд╛рдж @ filip-stolinski рдЖрдкрдХреЗ рд╕рдорд╛рдзрд╛рди рдХреЗ рд▓рд┐рдП
@ рдлрд┐рд▓рд┐рдк-рд╕реНрдЯреЛрд▓рд┐рдВрд╕реНрдХреА рдЖрдкрдХреЗ рд╕рдорд╛рдзрд╛рди рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдмрд╣реБрдд рдзрдиреНрдпрд╡рд╛рджред рдпрд╣ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ
рд╕рдорд╛рдкрдиред рдпрджрд┐ рдЖрд╡рд╢реНрдпрдХ рд╣реЛ рддреЛ рдХреГрдкрдпрд╛ рдлрд┐рд░ рд╕реЗ рдЦреЛрд▓реЗрдВ рдпрд╛ рдПрдХ рдирдпрд╛ рдореБрджреНрджрд╛ рдЦреЛрд▓реЗрдВред
рдзрдиреНрдпрд╡рд╛рдж @ filip-stolinski
рдзрдиреНрдпрд╡рд╛рдж
рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА
рдЕрд░реЗ!
рдЖрдкрдХреЗ X_opt рд╕рд░рдгреА рдореЗрдВ рдПрдХ рдкреНрд░рдХрд╛рд░ рдХрд╛ рдСрдмреНрдЬреЗрдХреНрдЯ рд╣реИ рдФрд░ рдпрд╣ рдПрдХ рддреНрд░реБрдЯрд┐ рдЙрддреНрдкрдиреНрди рдХрд░ рд╕рдХрддрд╛ рд╣реИред рдЗрд╕реЗ рдлреНрд▓реЛрдЯ рдореЗрдВ рдмрджрд▓рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рдЖрдк рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:
X= np.append(arr = np.ones((50,1)).astype(int), рдорд╛рди = X, рдЕрдХреНрд╖ = 1)
рдПрдХреНрд╕_рдСрдкреНрдЯ = рдПрдХреНрд╕[:,[0,1,2,3,4,5]]
X_opt = np.array(X_opt, dtype=float)
рдордЬрд╝реЗ рдХрд░реЛ :D