рдЕрдореВрд░реНрдд
рдЗрд╕ рд▓реЗрдЦ рдореЗрдВ рдореИрдВ рд╡рд░реНрдЯрд┐рдХрд╛ рдХреЗ рдПрдХ рдбреЗрдЯрд╛ рд╡реЗрдпрд░рд╣рд╛рдЙрд╕ рдореЗрдВ рдорд╢реАрди рд▓рд░реНрдирд┐рдВрдЧ рдХреЗ рд╕рд╛рде рдЕрдкрдиреЗ рдЦреБрдж рдХреЗ рдЕрдиреБрднрд╡ рдХреЛ рд╕рд╛рдЭрд╛ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВред
рдИрдорд╛рдирджрд╛рд░ рд╣реЛрдиреЗ рдХреЗ рд▓рд┐рдП, рдореИрдВ рдПрдХ рд╡рд┐рд╢реЗрд╖рдЬреНрдЮ рд╡рд┐рд╢реНрд▓реЗрд╖рдХ рдирд╣реАрдВ рд╣реВрдВ рдЬреЛ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЕрдиреБрд╕рдВрдзрд╛рди рд╡рд┐рдзрд┐рдпреЛрдВ рдФрд░ рдбреЗрдЯрд╛ рднрд╡рд┐рд╖реНрдпрд╡рд╛рдгреА рдПрд▓реНрдЧреЛрд░рд┐рджрдо рдХрд╛ рд╡рд┐рд╕реНрддрд╛рд░ рд╕реЗ рд╡рд░реНрдгрди рдХрд░ рд╕рдХрддрд╛ рд╣реИред рд▓реЗрдХрд┐рди рдлрд┐рд░ рднреА, рд╡рд░реНрдЯрд┐рдХрд╛ рдХреЗ рд╡рд┐рд╢реЗрд╖рдЬреНрдЮ рд╣реЛрдиреЗ рдФрд░ рдПрдордПрд▓ рдХреЗ рд╕рд╛рде рдмреБрдирд┐рдпрд╛рджреА рдЕрдиреБрднрд╡ рд╣реЛрдиреЗ рдХреЗ рдХрд╛рд░рдг, рдореИрдВ рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд рд╕рд░реНрд╡рд░ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдФрд░ рдЖрд░ рднрд╛рд╖рд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╡рд░реНрдЯрд┐рдХрд╛ рдореЗрдВ рднрд╡рд┐рд╖реНрдп рдХрд╣рдиреЗрд╡рд╛рд▓рд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рддрд░реАрдХреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░реВрдВрдЧрд╛ред
рдорд╢реАрди рд▓рд░реНрдирд┐рдВрдЧ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рд╡рд░реНрдЯрд┐рдХрд╛
рд╕рдВрд╕реНрдХрд░рдг 7 рд╕реЗ рд╢реБрд░реВ рдХрд░рддреЗ рд╣реБрдП, рд╡рд░реНрдЯрд┐рдХрд╛ рдХреЛ рдорд╢реАрди рд▓рд░реНрдирд┐рдВрдЧ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХреЗ рд╕рд╛рде рд╡рд┐рд╕реНрддрд╛рд░рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдЬрд┐рд╕рдХреЗ рд╕рд╛рде рдЖрдк рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:
- рдорд╢реАрди рд╕реАрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдбреЗрдЯрд╛ рдЙрджрд╛рд╣рд░рдг рддреИрдпрд╛рд░ рдХрд░реЗрдВ
- рддреИрдпрд╛рд░ рдЖрдВрдХрдбрд╝реЛрдВ рдкрд░ рдЯреНрд░реЗрди рдорд╢реАрди рд╕реАрдЦрдиреЗ рдХреЗ рдореЙрдбрд▓;
- рд╕рд╣реЗрдЬреЗ рдЧрдП рдорд╢реАрди рд▓рд░реНрдирд┐рдВрдЧ рдореЙрдбрд▓ рдкрд░ рднрдВрдбрд╛рд░рдг рдбреЗрдЯрд╛ рдХрд╛ рдЕрдиреБрдорд╛рдирд┐рдд рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд░реЗрдВред
рдкреБрд╕реНрддрдХрд╛рд▓рдп рдореБрдХреНрдд рд╕рдореБрджрд╛рдп рд╕рд╣рд┐рдд рд╕рднреА рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХреЗ рд▓рд┐рдП рд╡рд░реНрдЯрд┐рдХрд╛ рдЗрдВрд╕реНрдЯреЙрд▓реЗрд╢рди рдХреЗ рд╕рд╛рде рддреБрд░рдВрдд рдкреВрд░рд╛ рд╣реЛрддрд╛ рд╣реИред рдПрд╕рдХреНрдпреВрдПрд▓ рдХреЗ рддрд╣рдд рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рдХреЙрд▓ рдХреЗ рд░реВрдк рдореЗрдВ рдЗрд╕рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЬрд┐рд╕реЗ рддреИрдпрд╛рд░ рдбреЗрдореЛ рдбреЗрдЯрд╛ рдкрд░ рдЙрдкрдпреЛрдЧ рдХреЗ рдЙрджрд╛рд╣рд░рдгреЛрдВ рдХреЗ рд╕рд╛рде рдкреНрд░рд▓реЗрдЦрди рдореЗрдВ рд╡рд┐рд╕реНрддрд╛рд░ рд╕реЗ рд╡рд░реНрдгрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред
рд╡рд░реНрдЯрд┐рдХрд╛ рдореЗрдВ рдПрдордПрд▓ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХрд╛ рдПрдХ рдЙрджрд╛рд╣рд░рдг
рдПрдордПрд▓ рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ рдЗрд╕рдХрд╛ рдПрдХ рд╕рд░рд▓ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд░реВрдк рдореЗрдВ, рдореИрдВрдиреЗ рдПрдордЯреАрдИрд╕реАрдЖрд░ рдбреЗрдореЛ рдбреЗрдЯрд╛ рд▓рд┐рдпрд╛ рдЬреЛ рд╡рд░реНрдЯрд┐рдХрд╛ рдХреЗ рдПрдордПрд▓ рдбреЗрдЯрд╛ рдЙрджрд╛рд╣рд░рдг рдХрд╛ рд╣рд┐рд╕реНрд╕рд╛ рд╣реИред рдЗрд╕ рдбреЗрдЯрд╛ рдореЗрдВ рджреЛ рдЯреЗрдмрд▓ рд╢рд╛рдорд┐рд▓ рд╣реИрдВ:
- mtcars_train - рдкреНрд░рд╢рд┐рдХреНрд╖рдг рдорд╢реАрди рд╕реАрдЦрдиреЗ рдХреЗ рдореЙрдбрд▓ рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдбреЗрдЯрд╛
- mtcars - рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХреЗ рд▓рд┐рдП рдбреЗрдЯрд╛
рдЖрдЗрдП рдкреНрд░рд╢рд┐рдХреНрд╖рдг рдХреЗ рд▓рд┐рдП рдбреЗрдЯрд╛ рджреЗрдЦреЗрдВ:
=>SELECT * FROM mtcars_train;

рдХрд╛рд░ рдХреЗ рдореЙрдбрд▓ рдкрд░ рд╕реЗрдЯ рдХрд┐рдП рдЧрдП рдбреЗрдЯрд╛ рдореЗрдВ, рдЙрдирдХреА рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХрд╛ рд╡рд░реНрдгрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдЖрдЗрдП рдорд╢реАрди рд╕реАрдЦрдиреЗ рдХреЛ рдкреНрд░рд╢рд┐рдХреНрд╖рд┐рдд рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░реЗрдВ рддрд╛рдХрд┐ рдХрд╛рд░реЛрдВ рдХреА рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдпрд╣ рдЕрдиреБрдорд╛рди рд▓рдЧрд╛рдирд╛ рд╕рдВрднрд╡ рд╣реЛ рд╕рдХреЗ рдХрд┐ рдХрд╛рд░ рдореЗрдВ рдХрд┐рд╕ рдкреНрд░рдХрд╛рд░ рдХрд╛ рдЧрд┐рдпрд░рдмреЙрдХреНрд╕ рд╢рд╛рдорд┐рд▓ рд╣реИ - рдПрдХ рдореИрдиреБрдЕрд▓ рдмреЙрдХреНрд╕ рдпрд╛ рдПрдХ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдЧрд┐рдпрд░рдмреЙрдХреНрд╕ред рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдореЗрдВ рддреИрдпрд╛рд░ рдбреЗрдЯрд╛ рдкрд░ рдПрдХ рд▓реЙрдЬрд┐рд╕реНрдЯрд┐рдХ рд░рд┐рдЧреНрд░реЗрд╢рди рдореЙрдбрд▓ рдмрдирд╛рдиреЗ рдХреА рдЬрд░реВрд░рдд рд╣реИ, рдЬреЛ рдХрд┐ "am" рдлреАрд▓реНрдб рдХреЗ рдмреЙрдХреНрд╕ рдкреНрд░рдХрд╛рд░ рдФрд░ рд╡рд╛рд╣рди "wt" рдХреЗ рд╡реЗрдЯ рдлреАрд▓реНрдбреНрд╕, рд╕рд┐рд▓реЗрдВрдбрд░реЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ "рд╕рд┐рд▓реЗрдВрдбрд░" рдФрд░ рдмреЙрдХреНрд╕ "рдЧрд┐рдпрд░" рдореЗрдВ рдЧрддрд┐ рдХреА рд╕рдВрдЦреНрдпрд╛ рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рддрд╛ рд╣реЛ:
=>SELECT LOGISTIC_REG('logistic_reg_mtcars', 'mtcars_train', 'am', 'cyl, wt, gear'); Finished in 19 iterations
рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ рдХрд┐ рдлрд╝рдВрдХреНрд╢рди рдиреЗ am рдФрд░ рдлрд╝реАрд▓реНрдбреНрд╕ рдХреЗ рдмреАрдЪ рд╕рдВрдмрдВрдз рдХрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд┐рдпрд╛ рдерд╛, wt, рдЧрд┐рдпрд░, рдирд┐рд░реНрднрд░рддрд╛ рд╕реВрддреНрд░ рдХрд╛ рдЦреБрд▓рд╛рд╕рд╛ рдХрд┐рдпрд╛ рдФрд░ рдореЙрдбрд▓ "logistic_reg_mtcars" рдореЗрдВ рд╡рд░реНрдЯрд┐рдХрд╛ рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВ рдирд┐рд░реНрднрд░рддрд╛ рдХреЗ рд╕рд┐рдореБрд▓реЗрд╢рди рдХрд╛ рдкрд░рд┐рдгрд╛рдо рд▓рд┐рдЦрд╛ред рдЗрд╕ рд╕рд╣реЗрдЬреЗ рдЧрдП рдореЙрдбрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ, рдЖрдк рдЕрдм рдХрд╛рд░реЛрдВ рдкрд░ рдбреЗрдЯрд╛ рдХрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдЧрд┐рдпрд░рдмреЙрдХреНрд╕ рдХреА рдЙрдкрд▓рдмреНрдзрддрд╛ рдХреА рднрд╡рд┐рд╖реНрдпрд╡рд╛рдгреА рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рдореЙрдбрд▓ рдкрд░ рдЬрд╛рдирдХрд╛рд░реА рджреЗрдЦреА рдЬрд╛ рд╕рдХрддреА рд╣реИ:
=>SELECT GET_MODEL_SUMMARY(USING PARAMETERS model_name='logistic_reg_mtcars');

рдЕрдм рд╣рдо рдХрд╛рд░реЛрдВ рдХреЗ рдбреЗрдЯрд╛ рдкрд░ рдореЙрдбрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ, рдЬрд┐рд╕рд╕реЗ рдкрд░рд┐рдгрд╛рдо рдПрдХ рдирдИ рддрд╛рд▓рд┐рдХрд╛ рдореЗрдВ рд╕рд╣реЗрдЬрд╛ рдЬрд╛рддрд╛ рд╣реИ:
=>CREATE TABLE mtcars_predict_results AS ( SELECT car_model, am, PREDICT_LOGISTIC_REG(cyl, wt, gear USING PARAMETERS model_name='logistic_reg_mtcars') AS prediction FROM mtcars );
рдФрд░ рднрд╡рд┐рд╖реНрдпрд╡рд╛рдгреА рдХреА рднрд╡рд┐рд╖реНрдпрд╡рд╛рдгреА рдореЗрдВ рдкреНрд░рд╛рдкреНрдд рд▓реЛрдЧреЛрдВ рдХреЗ рд╕рд╛рде рд╣реВрдБ рдХреЗ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдореВрд▓реНрдпреЛрдВ рдХреА рддреБрд▓рдирд╛:
=>SELECT * FROM mtcars_predict_results;

рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, 100% рдХреЗ рд▓рд┐рдП рдкреВрд░реНрд╡рд╛рдиреБрдорд╛рди рдкреНрд░рд╕реНрддреБрдд рдореЙрдбрд▓ рдореЗрдВ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдкреНрд░рдХрд╛рд░ рдХреЗ рдмреЙрдХреНрд╕ рдХреЗ рд╕рд╛рде рдореЗрд▓ рдЦрд╛рддрд╛ рд╣реИред рдкреНрд░рд╢рд┐рдХреНрд╖рдг рдХреЗ рд▓рд┐рдП рдирдпрд╛ рдбреЗрдЯрд╛ рддреИрдпрд╛рд░ рдХрд░рдиреЗ рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рдЖрдкрдХреЛ рдореЙрдбрд▓ рдХреЛ рд╣рдЯрд╛рдиреЗ рдФрд░ рдлрд┐рд░ рд╕реЗ рд╕рд╣реЗрдЬрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреАред
рд╡рд░реНрдЯрд┐рдХрд╛ рдореЗрдВ рдПрдордПрд▓ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛
рд╡рд░реНрдЯрд┐рдХрд╛ рдПрдордПрд▓ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдкреНрд░рдХрд╛рд░ рдХреЗ рдкреВрд░реНрд╡рд╛рдиреБрдорд╛рди рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддреА рд╣реИ:
- рднрд╡рд┐рд╖реНрдпрд╡рд╛рдгреА:
- рд░реИрдЦрд┐рдХ рдкреНрд░рддрд┐рдЧрдорди
- рдкреНрд░рддрд┐рдЧрдорди рдХреЗ рд▓рд┐рдП рдпрд╛рджреГрдЪреНрдЫрд┐рдХ рд╡рди
- рдкреНрд░рддрд┐рдЧрдорди рдХреЗ рд▓рд┐рдП SVM (рд╕рдкреЛрд░реНрдЯ рд╡реЗрдХреНрдЯрд░ рдорд╢реАрди)
- рд╡рд░реНрдЧреАрдХрд░рдг:
- рд▓реЙрдЬрд┐рд╕реНрдЯрд┐рдХ рд░рд┐рдЧреНрд░реЗрд╢рди
- рднреЛрд▓реЗ рднрд╛рд▓реЗ
- рд╡рд░реНрдЧреАрдХрд░рдг рдХреЗ рд▓рд┐рдП рдпрд╛рджреГрдЪреНрдЫрд┐рдХ рд╡рди
- рд╡рд░реНрдЧреАрдХрд░рдг рдХреЗ рд▓рд┐рдП рдПрд╕рд╡реАрдПрдо (рд╕рдкреЛрд░реНрдЯ рд╡реЗрдХреНрдЯрд░ рдорд╢реАрди)
- рдХреНрд▓рд╕реНрдЯрд░рд┐рдВрдЧ:
рдкреНрд░рд╢рд┐рдХреНрд╖рдг рдХреЗ рд▓рд┐рдП рдбреЗрдЯрд╛ рддреИрдпрд╛рд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдкреНрд░рд╕реНрддреБрдд рдХреА рдЧрдИ рд╣реИ:
- рдбреЗрдЯрд╛ рд╕рдВрддреБрд▓рди
- рдЙрддреНрд╕рд░реНрдЬрди рдХреА рд╕рдлрд╛рдИ
- рд╢реНрд░реЗрдгреАрдмрджреНрдз (рдкрд╛рда) рдХреЙрд▓рдо рдорд╛рдиреЛрдВ рдХреЛ рдПрдиреНрдХреЛрдбрд┐рдВрдЧ
- рдорд┐рд╕рд┐рдВрдЧ рдбреЗрдЯрд╛ рдХреА рдЬрдЧрд╣
- рдбреЗрдЯрд╛ рд╕рд╛рдорд╛рдиреНрдпреАрдХрд░рдг
- рдкреНрд░рдзрд╛рди рдШрдЯрдХ рд╡рд┐рд╢реНрд▓реЗрд╖рдг
- рдбреЗрдЯрд╛ рд╕реИрдВрдкрд▓рд┐рдВрдЧ
- рдПрдХрд╡рдЪрди рдорд╛рди рдЕрдкрдШрдЯрди
рд╡рд░реНрдЯрд┐рдХрд╛ рдореЗрдВ рдПрдордПрд▓ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХреЛ рдзреНрдпрд╛рди рдореЗрдВ рд░рдЦрддреЗ рд╣реБрдП, рд╣рдо рдХрд╣ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд рд▓рд╛рдЗрдмреНрд░реЗрд░реА рд╣рдореЗрдВ рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреА рдПрдХ рд╡рд┐рд╕реНрддреГрдд рд╢реНрд░реГрдВрдЦрд▓рд╛ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддреА рд╣реИ, рд▓реЗрдХрд┐рди рдбреЗрдЯрд╛ рдореЗрдВ рдкреИрдЯрд░реНрди рдФрд░ рдирд┐рд░реНрднрд░рддрд╛ рдХрд╛ рдЕрдзреНрдпрдпрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмреИрдХрд▓реЙрдЧ рдирд╣реАрдВ рд╣реИред рдорд╢реАрди рд▓рд░реНрдирд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рдбреЗрдЯрд╛ рддреИрдпрд╛рд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдлрд╝рдВрдХреНрд╢рдВрд╕ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЧреНрд░рд╛рдлрд╝ рдХреЗ рд░реВрдк рдореЗрдВ рдбреЗрдЯрд╛ рдХреЗ рд╡рд┐рддрд░рдг рдХреА рдХрд▓реНрдкрдирд╛ рдХрд┐рдП рдмрд┐рдирд╛, рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд┐рдП рдЧрдП рдбреЗрдЯрд╛ рдХреЗ рд╡рд┐рд╢реЗрд╖рдЬреНрдЮ рдЬреНрдЮрд╛рди рдХреЗ рд╕рд╛рде рдХреЗрд╡рд▓ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдЧреБрд░реБ рдЗрд╕ рддрд░рд╣ рдХреЗ рдбреЗрдЯрд╛ рдХреЛ рддреИрдпрд╛рд░ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЙрд╕ рдкрд░ рд╕реАрдЦрдиреЗ рдХреЗ рдореЙрдбрд▓ рдХреЛ рдкреНрд░рд╢рд┐рдХреНрд╖рд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рд╡рд░реНрдЯрд┐рдХрд╛ рдХреЗ рд╕рд╛рде рдЖрд░ рд╕реНрдЯреВрдбрд┐рдпреЛ
рдЕрдзрд┐рдХ рдЧрд╣рди рдФрд░ рд╕рдВрд╡рд╛рджрд╛рддреНрдордХ рдкреВрд░реНрд╡рд╛рдиреБрдорд╛рди рдбреЗрдЯрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХреЗ рд▓рд┐рдП, рдЖрд░ рднрд╛рд╖рд╛ рдЖрджрд░реНрд╢ рд░реВрдк рд╕реЗ рдЕрдиреБрдХреВрд▓ рд╣реИ, рдЬрд┐рд╕рдореЗрдВ рдЖрд░ рд╕реНрдЯреВрдбрд┐рдпреЛ рдбреЗрдЯрд╛ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рджреГрд╢реНрдп рд╡рд╛рддрд╛рд╡рд░рдг рд╣реИред рд╡рд░реНрдЯрд┐рдХрд╛ рдХреЗ рд╕рд╛рде R рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рдореВрд░реНрдд рд▓рд╛рдн рд╣реЛрдВрдЧреЗ:
- рдЕрдЧрд▓реЗ рд░рди рдХреЗ рдмрд╛рдж рдЖрдЧреЗ рдХреЗ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХреЗ рд▓рд┐рдП рд░рд╛рдЬреНрдп рдХреЛ рдмрдЪрд╛рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рдХреЗ рд╕рд╛рде рдкрд░реНрдпрд╛рд╡рд░рдг рдХреА рдЕрдиреНрддрд░рдХреНрд░рд┐рдпрд╛рд╢реАрд▓рддрд╛;
- рддрд╛рд▓рд┐рдХрд╛рдУрдВ рдФрд░ рд░реЗрдЦрд╛рдВрдХрди рдХреЗ рд░реВрдк рдореЗрдВ рдбреЗрдЯрд╛ рдХрд╛ рджреГрд╢реНрдп рджреЗрдЦрдирд╛;
- рдбреЗрдЯрд╛ рд╕реЗрдЯ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рднрд╛рд╖рд╛ рдХреА рд╢рдХреНрддрд┐;
- рд╡рд░реНрдЯрд┐рдХрд╛ рдПрдордПрд▓ рдореЗрдВ рдкреНрд░рд╕реНрддреБрдд рдХрд┐рдП рдЧрдП рд▓реЛрдЧреЛрдВ рдХреЗ рд╕рдорд╛рди рд╡рд┐рднрд┐рдиреНрди рдкреНрд░рдХрд╛рд░ рдХреЗ рднрд╡рд┐рд╖реНрдп рдХрд╣рдиреЗрд╡рд╛рд▓рд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдПрд▓реНрдЧреЛрд░рд┐рджрдоред
рдЖрд░ рдХреЗ рд╕рд╛рде рдмрдбрд╝реЗ рдбреЗрдЯрд╛ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рдиреБрдХрд╕рд╛рди рд░реИрдо рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛рдПрдВ рд╣реИрдВ, рдмрдбрд╝реЗ рдбреЗрдЯрд╛ рд╕рд░рдгрд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреА рдЧрддрд┐, рдФрд░ рд╡рд░реНрдЯрд┐рдХрд╛ рдбреЗрдЯрд╛ рдХреЛ рдЖрдпрд╛рдд рдФрд░ рдирд┐рд░реНрдпрд╛рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдЗрди рдХрдорд┐рдпреЛрдВ рдХреЛ рд╡рд░реНрдЯрд┐рдХрд╛ рдореЗрдВ рдПрдХ рдХреНрд▓рд╕реНрдЯрд░ рдкрд░ рдкреНрд░рддреНрдпрдХреНрд╖ рдирд┐рд╖реНрдкрд╛рджрди рдХреЗ рд▓рд┐рдП рд▓рд┐рдЦрд┐рдд рдЖрд░ рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдПрдореНрдмреЗрдб рдХрд░рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рд╕реЗ рдХрд╡рд░ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдЬрд┐рд╕реЗ рдиреАрдЪреЗ рд╡рд░реНрдгрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред
R рд╕реЗ рдПрдХ рдЫреЛрдЯрд╛ рд╕рд╛ рдкрд░рд┐рдЪрдп
рд╣рдо рдЖрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╡рд░реНрдЯрд┐рдХрд╛ рдбреЗрдЯрд╛ рдкрд░ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдмрдХреНрд╕реЗ рдХреЗ рд▓рд┐рдП рдкреВрд░реНрд╡рд╛рдиреБрдорд╛рди рдХреЛ рдкреБрди: рдкреЗрд╢ рдХрд░реЗрдВрдЧреЗред рдЗрд╕ рднрд╛рд╖рд╛ рд╕реЗ рдЕрдкрд░рд┐рдЪрд┐рдд рдкреНрд░реЛрдЧреНрд░рд╛рдорд░реЛрдВ рдХреЛ рдбрд░рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдирд╣реАрдВ, рдореИрдВ рдПрдХ рдпреБрд╡рд╛ рд▓рдбрд╝рд╛рдХреВ рдЖрд░ рдХрд╛ рдПрдХ рдЫреЛрдЯрд╛ рдХреЛрд░реНрд╕ рдЖрдпреЛрдЬрд┐рдд рдХрд░реВрдВрдЧрд╛ред
рддреЛ, рдЖрд░ рднрд╛рд╖рд╛ рд╡рд╣реА рдкреНрд░рдХреНрд░рд┐рдпрд╛рддреНрдордХ рднрд╛рд╖рд╛ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдСрдмреНрдЬреЗрдХреНрдЯреНрд╕, рдХрдХреНрд╖рд╛рдПрдВ рдФрд░ рдлрд╝рдВрдХреНрд╢рди рд╣реИрдВред
рдСрдмреНрдЬреЗрдХреНрдЯ рдбреЗрдЯрд╛ рд╕реЗрдЯ (рд╡реЗрдХреНрдЯрд░, рд╕реВрдЪреА, рдбреЗрдЯрд╛рд╕реЗрдЯ ...), рдорд╛рди (рдкрд╛рда, рд╕рдВрдЦреНрдпрд╛, рджрд┐рдирд╛рдВрдХ, рд╕рдордп ...) рдпрд╛ рдПрдХ рдлрд╝рдВрдХреНрд╢рди рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рдорд╛рдиреЛрдВ рдХреЗ рд▓рд┐рдП, рд╕рдВрдЦреНрдпрд╛рддреНрдордХ, рд╕реНрдЯреНрд░рд┐рдВрдЧ, рдмреВрд▓рд┐рдпрди рдФрд░ рджрд┐рдирд╛рдВрдХ-рд╕рдордп рдкреНрд░рдХрд╛рд░ рд╕рдорд░реНрдерд┐рдд рд╣реИрдВред рдбреЗрдЯрд╛рд╕реЗрдЯ рдХреЗ рд▓рд┐рдП, рд╕рд░рдгреА рдХреНрд░рдорд╛рдВрдХ 1 рд╕реЗ рд╢реБрд░реВ рд╣реЛрддрд╛ рд╣реИ, 0 рд╕реЗ рдирд╣реАрдВред
рдЖрд░ рдореЗрдВ, "=" рдХреЗ рдмрдЬрд╛рдп, рдЕрд╕рд╛рдЗрдирдореЗрдВрдЯ рдСрдкрд░реЗрдЯрд░ "<-" рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рд╣рд╛рд▓рд╛рдВрдХрд┐ рдпрд╣ рджреВрд╕рд░реА рддрд░рдл "->" рдФрд░ рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рд╕рд╛рдорд╛рдиреНрдп "=" рдЕрд╕рд╛рдЗрдирдореЗрдВрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдордирд╛ рдирд╣реАрдВ рд╣реИред рдирд╛рдорд┐рдд рдорд╛рдкрджрдВрдбреЛрдВ рдХреЛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдХреЙрд▓ рдХрд░рддреЗ рд╕рдордп рдСрдкрд░реЗрдЯрд░ "=" рд╕реНрд╡рдпрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
рдЗрд╕рдХреЗ рдмрдЬрд╛рдп "ред" "$" рдХрд╛ рдЙрдкрдпреЛрдЧ рдбреЗрдЯрд╛ рд╕реЗрдЯ рдХреЗ рдХреНрд╖реЗрддреНрд░ рддрдХ рдкрд╣реБрдВрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдбреЙрдЯ рдПрдХ рдХреАрд╡рд░реНрдб рдирд╣реАрдВ рд╣реИ рдФрд░ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдкрдардиреАрдпрддрд╛ рдмрдврд╝рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдСрдмреНрдЬреЗрдХреНрдЯ рдирд╛рдореЛрдВ рдореЗрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЗрд╕ рдкреНрд░рдХрд╛рд░, "my.data $ рдлрд╝реАрд▓реНрдб" рдбреЗрдЯрд╛ рд╕реЗрдЯ "my.data" рд╕реЗ рдлрд╝реАрд▓реНрдб "рдлрд╝реАрд▓реНрдб" рдХреЗ рд░рд┐рдХреЙрд░реНрдб рдХреЗ рдПрдХ рд╕рд░рдгреА рдХреЗ рд░реВрдк рдореЗрдВ рдбрд┐рдХреНрд░рд┐рдкреНрдЯ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред
рдЖрдк рдЯреЗрдХреНрд╕реНрдЯ рдХреЛ рдлреНрд░реЗрдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рд┐рдВрдЧрд▓ рдпрд╛ рдбрдмрд▓ рдХреЛрдЯреЗрд╢рди рдорд╛рд░реНрдХреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рд╕рдмрд╕реЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг: рдЖрд░ рдбреЗрдЯрд╛ рд╕реЗрдЯ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рд╣реИред рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдЕрдЧрд░ рдХреЛрдб "рдП <-1" рдХрд╣рддрд╛ рд╣реИ, рддреЛ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░реЗрдВ рдХрд┐ рдЖрд░ рдЕрдВрджрд░ рд╣реА рдорд╛рдирддрд╛ рд╣реИ рдХрд┐ "рдП" 1 рддрддреНрд╡ рдХреА рдПрдХ рд╕рд░рдгреА рд╣реИред рднрд╛рд╖рд╛ рдбрд┐рдЬрд╝рд╛рдЗрди рдЖрдкрдХреЛ рд╕рд╛рдзрд╛рд░рдг рдЪрд░ рдХреЗ рд╕рд╛рде рдбреЗрдЯрд╛ рд╕реЗрдЯ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ: рдорд╛рдк рджреНрд╡рд╛рд░рд╛ рдЬреЛрдбрд╝реЗрдВ рдФрд░ рдШрдЯрд╛рдПрдВ, рдХрдиреЗрдХреНрдЯ рдХрд░реЗрдВ рдФрд░ рдбрд┐рд╕реНрдХрдиреЗрдХреНрдЯ рдХрд░реЗрдВ, рдлрд╝рд┐рд▓реНрдЯрд░ рдХрд░реЗрдВред рдЕрдкрдиреЗ рддрддреНрд╡реЛрдВ рдХреЛ рд╕реВрдЪреАрдмрджреНрдз рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдРрд░реЗ рдХреЛ рдмрдирд╛рдиреЗ рдХрд╛ рд╕рдмрд╕реЗ рдЖрд╕рд╛рди рддрд░реАрдХрд╛ рд╣реИ рдХрд┐ рдлрд╝рдВрдХреНрд╢рди рдХреЛ "рд╕реА (рдХреЙрдорд╛ рджреНрд╡рд╛рд░рд╛ рдЕрд▓рдЧ рдХрд┐рдП рдЧрдП рдПрд░реЗ рддрддреНрд╡)" рдХрд╣рд╛ рдЬрд╛рдПред рдирд╛рдо "рд╕реА" рдХреЛ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рд╕рдВрдЧреНрд░рд╣ рдХреЗ рд▓рд┐рдП рд╕рдВрдХреНрд╖рд┐рдкреНрдд рдирд╛рдо рдХреЗ рд░реВрдк рдореЗрдВ рд▓рд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдореИрдВ рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдирд╣реАрдВ рдХрд╣рддрд╛ред
DBMS рдХреЗ рдбреЗрдЯрд╛ рдХреЛ R рдореЗрдВ рд▓реЛрдб рдХрд░рдирд╛
R рдХреЗ рд▓рд┐рдП ODBC рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ RDBMS рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ RODBC рдкреИрдХреЗрдЬ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред рдЗрд╕реЗ R рд╕реНрдЯреВрдбрд┐рдпреЛ рдореЗрдВ рд╕рдВрдХреБрд▓ рдЯреИрдм рдкрд░ рдпрд╛ R рдХрдорд╛рдВрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╕реНрдерд╛рдкрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ:
install.packages('RODBC') library('RODBC')
рдЕрдм рд╣рдо рд╡рд░реНрдЯрд┐рдХрд╛ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рд╣рдо рд╕рд░реНрд╡рд░ рдХреЗ рд▓рд┐рдП рдПрдХ ODBC рдЙрдкрдирд╛рдо рдмрдирд╛рддреЗ рд╣реИрдВ рдФрд░ рдкрд░реАрдХреНрд╖рдг рдбреЗрдЯрд╛ рдФрд░ рдХрд╛рд░ рдХреЗ рд▓рд┐рдП рдкреВрд░рд╛ рдбреЗрдЯрд╛ рд╕реЗрдЯ рдкреНрд░рд╛рдкреНрдд рдХрд░рддреЗ рд╣реИрдВ:
# Vertica con <- odbcConnect(dsn='VerticaDSN') # mtcars_train mtcars.train <- sqlQuery(con, "SELECT * FROM public.mtcars_train") # mtcars</b> mtcars.data <- sqlQuery(con, "SELECT * FROM public.mtcars") # odbcClose(con)
рдкрд╛рда рдкреНрд░рдХрд╛рд░реЛрдВ рдФрд░ рджрд┐рдирд╛рдВрдХ-рд╕рдордп рдХреЗ рдХреНрд╖реЗрддреНрд░реЛрдВ рдХреЗ рд▓рд┐рдП рд╕реНрд░реЛрддреЛрдВ R рд╕реЗ рдбреЗрдЯрд╛ рд▓реЛрдб рдХрд░рддреЗ рд╕рдордп, рдЙрдирдХреЗ рдХрд╛рд░рдХреЛрдВ рдХрд╛ рд╕рдВрдмрдВрдз рд╕реНрд╡рддрдГ рд╕реНрдерд╛рдкрд┐рдд рд╣реЛ рдЬрд╛рддрд╛ рд╣реИред "рдПрдо" рдлрд╝реАрд▓реНрдб рдПрдХ рд╕рдВрдЦреНрдпрд╛рддреНрдордХ рдкреНрд░рдХрд╛рд░ рдХрд╛ рд╣реИ рдФрд░ рдЖрд░ рдХреЛ рд╕рдВрдЦреНрдпрд╛рддреНрдордХ рд╕рдВрдХреЗрддрдХ рдХреЗ рд░реВрдк рдореЗрдВ рдорд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ рдПрдХ рдХрд╛рд░рдХ рдирд╣реАрдВ рд╣реИ, рдЬреЛ рд▓реЙрдЬрд┐рд╕реНрдЯрд┐рдХ рдкреНрд░рддрд┐рдЧрдорди рдХреЗ рд▓рд┐рдП рдЕрдиреБрдорддрд┐ рдирд╣реАрдВ рджреЗрдЧрд╛ред рдЗрд╕рд▓рд┐рдП, рд╣рдо рдЗрд╕ рдХреНрд╖реЗрддреНрд░ рдХреЛ рдПрдХ рд╕рдВрдЦреНрдпрд╛рддреНрдордХ рдХрд╛рд░рдХ рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрд┐рдд рдХрд░рддреЗ рд╣реИрдВ:
mtcars.data$am = factor(mtcars.data$am) mtcars.train$am = factor(mtcars.train$am)
рдЖрд░ рд╕реНрдЯреВрдбрд┐рдпреЛ рдореЗрдВ рдпрд╣ рдбреЗрдЯрд╛ рдХреЛ рдЗрдВрдЯрд░реЗрдХреНрдЯрд┐рд╡ рд░реВрдк рд╕реЗ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╣реИ, рднрд╡рд┐рд╖реНрдп рдХрд╣рдиреЗрд╡рд╛рд▓рд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХреЗ рдЧреНрд░рд╛рдл рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдФрд░ рдпреБрдХреНрддрд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде рдЖрд░ рдореЗрдВ рдХреЛрдб рд▓рд┐рдЦреЗрдВ:

рдЖрд░ рдореЗрдВ рдПрдХ рдореЙрдбрд▓ рдХрд╛ рдирд┐рд░реНрдорд╛рдг
рд╣рдо рд╡рд░реНрдЯрд┐рдХрд╛ рдореЗрдВ рд╕рдорд╛рди рдЖрдпрд╛рдореЛрдВ рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рдХрд┐рдП рдЧрдП рдбреЗрдЯрд╛ рдкрд░ рд▓реЙрдЬрд┐рд╕реНрдЯрд┐рдХ рд░рд┐рдЧреНрд░реЗрд╢рди рдХрд╛ рдПрдХ рдореЙрдбрд▓ рдмрдирд╛рдПрдВрдЧреЗ:
mtcars.model <- glm(formula = am ~ cyl + wt + gear, family = binomial(), data = mtcars.train)
рд╕реНрдкрд╖реНрдЯреАрдХрд░рдг: R рднрд╛рд╖рд╛ рдореЗрдВ, рднрд╡рд┐рд╖реНрдп рдХрд╣рдиреЗрд╡рд╛рд▓рд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рд╕реВрддреНрд░ рдирд┐рдореНрдирд╛рдиреБрд╕рд╛рд░ рдЗрдВрдЧрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ:
< >~< >
рдЖрд░ рдореЗрдВ рдореЙрдбрд▓ рдбреЗрдЯрд╛ рдХрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг
рд╣рдо рдкрд░рд┐рдгрд╛рдореА рдбреЗрдЯрд╛ рд╕реЗрдЯ рдХреЛ рдЖрд░рдВрдн рдХрд░рддреЗ рд╣реИрдВ, рдЖрд╡рд╢реНрдпрдХ рдлрд╝реАрд▓реНрдб рдХреЗ рд╕рднреА рд░рд┐рдХреЙрд░реНрдб mtcars рд╕реЗ рд▓реЗрддреЗ рд╣реИрдВ:
mtcars.result <- data.frame(car_model = mtcars.data$car_model, am = mtcars.data$am, predict = 0)
рдЕрдм, рдирд┐рд░реНрдорд┐рдд рдореЙрдбрд▓ рдХреЗ рдЖрдзрд╛рд░ рдкрд░, рдЖрдк рдбреЗрдЯрд╛ рдкрд░ рд╣реА рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:
mtcars.result$predict <- predict.glm(mtcars.model, newdata = subset(mtcars.data, select = c('cyl', 'wt', 'gear')), type = 'response' )
рдкреВрд░реНрд╡рд╛рдиреБрдорд╛рди рдХреЗ рд╕рдВрднрд╛рд╡реНрдпрддрд╛ рдХреЗ рдкреНрд░рддрд┐рд╢рдд рдХреЗ рд░реВрдк рдореЗрдВ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдкрд░рд┐рдгрд╛рдо рдХреА рднрд╡рд┐рд╖реНрдпрд╡рд╛рдгреА рдХреНрд╖реЗрддреНрд░ рдореЗрдВ рд╡рд╛рдкрд╕ рдЖ рдЬрд╛рддреА рд╣реИред 50 рдпрд╛ рдЕрдзрд┐рдХ% рдХреА рд╕рдВрднрд╛рд╡рдирд╛ рдХреЗ рд╕рд╛рде рдкреВрд░реНрд╡рд╛рдиреБрдорд╛рди рдХреЛ рд╕рдХрд╛рд░рд╛рддреНрдордХ рдорд╛рдирддреЗ рд╣реБрдП, рд╡рд░реНрдЯрд┐рдХрд╛ рдХреЗ рд╕рд╛рде рд╕рд╛рджреГрд╢реНрдп 0 рдпрд╛ 1 рдХреЗ рдорд╛рди рд╕реЗ рд╕рд░рд▓ рдмрдирд╛рдПрдВред
mtcars.result$predict <- ifelse(mtcars.result$predict > 0.5, 1, 0)
рд╣рдо рд░рд┐рдХреЙрд░реНрдб рдХреА рдХреБрд▓ рд╕рдВрдЦреНрдпрд╛ рдХреА рдЧрдгрдирд╛ рдХрд░рддреЗ рд╣реИрдВ, рдЬрд┐рд╕рдХреЗ рд▓рд┐рдП рдкреВрд░реНрд╡рд╛рдиреБрдорд╛рдирд┐рдд рднрд╡рд┐рд╖реНрдпрд╡рд╛рдгреА рдХреНрд╖реЗрддреНрд░ рдореЗрдВ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдореВрд▓реНрдп рд╕реЗ рдореЗрд▓ рдирд╣реАрдВ рдЦрд╛рддрд╛ рд╣реИ:
nrow(mtcars[mtcars.result$am != mtcars.result$predict, ])
R рд╢реВрдиреНрдп рдкрд░ рд▓реМрдЯрд╛ред рдЗрд╕ рдкреНрд░рдХрд╛рд░, рдкреВрд░реНрд╡рд╛рдиреБрдорд╛рди рд╡рд░реНрдЯрд┐рдХрд╛ рдХреЗ рдПрдордПрд▓ рдХреЗ рд░реВрдк рдореЗрдВ рд╕рднреА рдХрд╛рд░ рдореЙрдбрд▓ рдкрд░ рдкрд░рд┐рд╡рд░реНрддрд┐рдд рд╣реЛ рдЧрдпрд╛ред
рдХреГрдкрдпрд╛ рдзреНрдпрд╛рди рджреЗрдВ: mtcars рд╕реЗ рд░рд┐рдХреЙрд░реНрдб рд╕рднреА рдХреЙрд▓рдо рдХреЗ рд╕рд╛рде рдлрд┐рд▓реНрдЯрд░ (рд╕реНрдХреНрд╡рд╛рдпрд░ рдмреНрд░реИрдХреЗрдЯ рдореЗрдВ рдкрд╣рд▓рд╛ рдкреИрд░рд╛рдореАрдЯрд░) рджреНрд╡рд╛рд░рд╛ рд▓реМрдЯрд╛рдпрд╛ рдЧрдпрд╛ рдерд╛ (рд╡рд░реНрдЧ рдмреНрд░реИрдХреЗрдЯ рдореЗрдВ рдХреЙрдорд╛ рдХреЗ рдмрд╛рдж рдЫреЛрдбрд╝рд╛ рдЧрдпрд╛ рджреВрд╕рд░рд╛ рдкреИрд░рд╛рдореАрдЯрд░)ред
рдЖрд░ рдореЗрдВ рд╕реНрдерд╛рдиреАрдп рд░реВрдк рд╕реЗ рдбреЗрдЯрд╛ рдХреЛ рд╕рд╣реЗрдЬрдирд╛ рдФрд░ рд▓реЛрдб рдХрд░рдирд╛
рдЖрд░ рд╕реЗ рдмрд╛рд╣рд░ рдирд┐рдХрд▓рдиреЗ рдкрд░, рд╕реНрдЯреВрдбрд┐рдпреЛ рдкреБрдирдГ рдЖрд░рдВрдн рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж рдХрд╛рдо рдЬрд╛рд░реА рд░рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рд╕рднреА рд╡рд╕реНрддреБрдУрдВ рдХреА рд╕реНрдерд┐рддрд┐ рдХреЛ рдмрдЪрд╛рдиреЗ рдХреА рдкреЗрд╢рдХрд╢ рдХрд░рддрд╛ рд╣реИред рдпрджрд┐ рдХрд┐рд╕реА рдХрд╛рд░рдг рд╕реЗ рдЖрдкрдХреЛ рд╡реНрдпрдХреНрддрд┐рдЧрдд рд╡рд╕реНрддреБрдУрдВ рдХреА рд╕реНрдерд┐рддрд┐ рдХреЛ рдмрдЪрд╛рдиреЗ рдФрд░ рдлрд┐рд░ рд╕реЗ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рддреЛ рдЗрд╕рдХреЗ рд▓рд┐рдП рдЖрд░ рдореЗрдВ рд╡рд┐рд╢реЗрд╖ рдХрд╛рд░реНрдп рдкреНрд░рджрд╛рди рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВ:
# save(mtcars.model, file = 'mtcars.model') # load('mtcars.model')
рдЖрд░ рд╕реЗ рд╡рд░реНрдЯрд┐рдХрд╛ рддрдХ рдбреЗрдЯрд╛ рдХреА рдмрдЪрдд
рдпрджрд┐ рдЖрд░ рд╕реНрдЯреВрдбрд┐рдпреЛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдПрдордПрд▓ рд╡рд░реНрдЯрд┐рдХрд╛ рдореЙрдбрд▓ рдХреЗ рдкреНрд░рд╢рд┐рдХреНрд╖рдг рдХреЗ рд▓рд┐рдП рдбреЗрдЯрд╛ рддреИрдпрд╛рд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рдпрд╛ рдпрджрд┐ рдЗрд╕рдореЗрдВ рд╕реАрдзреЗ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рдЬрд┐рд╕реЗ рддрдм рд╡рд░реНрдЯрд┐рдХрд╛ рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рд╣реИ, рддреЛ рдЖрд░ рдбреЗрдЯрд╛ рд╕реЗрдЯ рдХреЛ рд╡рд░реНрдЯрд┐рдХрд╛ рддрд╛рд▓рд┐рдХрд╛ рдореЗрдВ рд▓рд┐рдЦрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
рдЪреВрдВрдХрд┐ R рдХреЗ рд▓рд┐рдП ODBC рд▓рд╛рдЗрдмреНрд░реЗрд░реА OLTP RDBMS рдХреЗ рд▓рд┐рдП рдбрд┐рдЬрд╝рд╛рдЗрди рдХреА рдЧрдИ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдпрд╣ рд╡рд░реНрдЯрд┐рдХрд╛ рдХреЗ рд▓рд┐рдП рддрд╛рд▓рд┐рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХреНрд╡реЗрд░реА рдХреЛ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рдирд╣реАрдВ рдмрдирд╛ рд╕рдХрддреА рд╣реИред рдЗрд╕рд▓рд┐рдП, рдбреЗрдЯрд╛ рдХреЛ рд╕рдлрд▓рддрд╛рдкреВрд░реНрд╡рдХ рд░рд┐рдХреЙрд░реНрдб рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рдПрд╕рдХреНрдпреВрдПрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╡рд░реНрдЯрд┐рдХрд╛ рдореЗрдВ рдЖрд╡рд╢реНрдпрдХ рддрд╛рд▓рд┐рдХрд╛ рдмрдирд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреА, рдлрд╝реАрд▓реНрдб рдХрд╛ рд╕реЗрдЯ рдФрд░ рдкреНрд░рдХрд╛рд░ рдЬрд┐рдирдореЗрдВ рд╕реЗ рд░рд┐рдХреЙрд░реНрдб рдХрд░рдиреЗ рдпреЛрдЧреНрдп рдбреЗрдЯрд╛ рд╕реЗрдЯ рдЖрд░ рдХреЗ рд╕рд╛рде рдореЗрд▓ рдЦрд╛рддрд╛ рд╣реИред
рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рд░рд┐рдХреЙрд░реНрдбрд┐рдВрдЧ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдЕрдкрдиреЗ рдЖрдк рдореЗрдВ рд╕рд░рд▓ рд▓рдЧрддреА рд╣реИ (рдЦреЛрд▓рдиреЗ рдФрд░ рдлрд┐рд░ рдХрдиреЗрдХреНрд╢рди рдмрдВрдж рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдордд рднреВрд▓рдирд╛):
sqlSave(con, mtcars.result, tablename = 'public.mtcars_result', append = TRUE, rownames = FALSE, colnames = FALSE)
рдЖрд░ рдХреЗ рд╕рд╛рде рд╡рд░реНрдЯрд┐рдХрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛
рдЖрд░ рд╕реНрдЯреВрдбрд┐рдпреЛ рдореЗрдВ рдбреЗрдЯрд╛ рдХреЗ рд╕рд╛рде рдЗрдВрдЯрд░рдПрдХреНрдЯрд┐рд╡ рдХрд╛рдо рдЕрдиреБрд╕рдВрдзрд╛рди рдХреЗ рдореЛрдб рдФрд░ рдбреЗрдЯрд╛ рдХреА рддреИрдпрд╛рд░реА рдХреЗ рд▓рд┐рдП рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдЕрдиреБрдХреВрд▓ рд╣реИред рд▓реЗрдХрд┐рди рдпрд╣ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдбреЗрдЯрд╛ рдзрд╛рд░рд╛рдУрдВ рдФрд░ рдмрдбрд╝реЗ рд╕рд░рдгрд┐рдпреЛрдВ рдХреЗ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХреЗ рд▓рд┐рдП рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЕрдиреБрдкрдпреБрдХреНрдд рд╣реИред рд╡рд░реНрдЯрд┐рдХрд╛ рдХреЗ рд╕рд╛рде рд╣рд╛рдЗрдмреНрд░рд┐рдб рдЖрд░ рдкреНрд░реЗрдбрд┐рдХреНрдЯрд┐рд╡ рдПрдирд╛рд▓рд┐рд╕рд┐рд╕ рд╕реНрдХреАрдо рдХреЗ рд╡рд┐рдХрд▓реНрдкреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рд╣реИ, рдЖрд░ рдкрд░ рд╕реАрдЦрдиреЗ рдФрд░ рдмрд┐рд▓реНрдбрд┐рдВрдЧ рдореЙрдбрд▓ рдХреЗ рд▓рд┐рдП рдирд┐рд░реНрднрд░рддрд╛ рдХреА рдкрд╣рдЪрд╛рди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдбреЗрдЯрд╛ рддреИрдпрд╛рд░ рдХрд░рдирд╛ред рдлрд┐рд░, рд╡рд░реНрдЯрд┐рдХрд╛ рдореЗрдВ рдирд┐рд░реНрдорд┐рдд рдПрдордПрд▓ рдХрд╛рд░реНрдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдП, рдЖрд░ рдкрд░ рддреИрдпрд╛рд░ рдЖрдВрдХрдбрд╝реЛрдВ рдХреЗ рдкреВрд░реНрд╡рд╛рдиреБрдорд╛рди рдореЙрдбрд▓ рдХреЛ рдЪрд░ рдХреА рдкрд╣рдЪрд╛рди рдХреА рдЧрдИ рдирд┐рд░реНрднрд░рддрд╛ рдХреЛ рдзреНрдпрд╛рди рдореЗрдВ рд░рдЦрддреЗ рд╣реБрдП рдкреНрд░рд╢рд┐рдХреНрд╖рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
рдПрдХ рдЕрдзрд┐рдХ рд▓рдЪреАрд▓рд╛ рд╡рд┐рдХрд▓реНрдк рд╣реИ рдЬрдм рдЖрд░ рднрд╛рд╖рд╛ рдХреА рд╕рднреА рд╢рдХреНрддрд┐ рд╕реАрдзреЗ рд╡рд░реНрдЯрд┐рдХрд╛ рдХреЗ рдиреАрдЪреЗ рд╕реЗ рдЙрдкрдпреЛрдЧ рдХреА рдЬрд╛рддреА рд╣реИред рдЗрд╕рдХреЗ рд▓рд┐рдП, рд╡рд░реНрдЯрд┐рдХрд╛ рдиреЗ рдЖрд░-рдбрд┐рд╕реНрдЯреНрд░реАрдмреНрдпреВрд╢рди рдХреЛ рдкреНрд▓рдЧ-рдЗрди рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХреЗ рд░реВрдк рдореЗрдВ рд╡рд┐рдХрд╕рд┐рдд рдХрд┐рдпрд╛, рдЬреЛ рдЖрдкрдХреЛ SQL рдХреНрд╡реЗрд░реАрдЬрд╝ рдореЗрдВ рд╕реАрдзреЗ R рд▓реИрдВрдЧреНрд╡реЗрдЬ рдореЗрдВ рд▓рд┐рдЦреЗ рдЯреНрд░рд╛рдВрд╕рдлрд╝реЙрд░реНрдореЗрд╢рди рдлрдВрдХреНрд╢рдиреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред рдбреЙрдХреНрдпреВрдореЗрдВрдЯ рдореЗрдВ рд╡рд░реНрдЯрд┐рдХрд╛ рдХреЗ рд▓рд┐рдП R рд╕рдкреЛрд░реНрдЯ рдХреА рд╕реНрдерд╛рдкрдирд╛ рдФрд░ рдСрдкрд░реЗрд╢рди рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рдЕрддрд┐рд░рд┐рдХреНрдд R рдкреИрдХреЗрдЬреНрд╕, рдпрджрд┐ рдХреЛрдИ рд╣реЛ, рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╡рд┐рд╕реНрддрд╛рд░ рд╕реЗ рд╡рд░реНрдгрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред
рд╡рд░реНрдЯрд┐рдХрд╛ рдореЗрдВ рд╕реЗрд╡рд┐рдВрдЧ рдореЙрдбрд▓ рдЖрд░
рд╡рд░реНрдЯрд┐рдХрд╛ рдХреЗ рдЕрдВрддрд░реНрдЧрдд рдЪрд▓ рд░рд╣реЗ R рдлрд╝рдВрдХреНрд╢рди рдореЗрдВ R Studio рджреНрд╡рд╛рд░рд╛ рдкрд╣рд▓реЗ рддреИрдпрд╛рд░ рдХрд┐рдП рдЧрдП рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдореЙрдбрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдЙрдиреНрд╣реЗрдВ рд╡рд░реНрдЯрд┐рдХрд╛ рд╕рд░реНрд╡рд░ рдкрд░ рд╕рд╣реЗрдЬрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдлрд╝рд╛рдЗрд▓ рдХреЗ рд╕рд╛рде рдХреНрд▓рд╕реНрдЯрд░ рдХреЗ рдкреНрд░рддреНрдпреЗрдХ рд╕рд░реНрд╡рд░ рдкрд░ рд╕реНрдерд╛рдиреАрдп рд░реВрдк рд╕реЗ рд╕рд╣реЗрдЬрдирд╛ рди рддреЛ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╣реИ рдФрд░ рди рд╣реА рд╡рд┐рд╢реНрд╡рд╕рдиреАрдп, рдирдП рд╕рд░реНрд╡рд░реЛрдВ рдХреЛ рдХреНрд▓рд╕реНрдЯрд░ рдореЗрдВ рдЬреЛрдбрд╝рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдФрд░ рдореЙрдбрд▓ рдХреЛ рдмрджрд▓рддреЗ рд╕рдордп рдЖрдкрдХреЛ рд╕рднреА рдлрд╛рдЗрд▓реЛрдВ рдХреЛ рдлрд┐рд░ рд╕реЗ рд▓рд┐рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдпрд╛рдж рд░рдЦрдирд╛ рд╣реЛрдЧрд╛ред
рд╕рдмрд╕реЗ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рддрд░реАрдХрд╛ рдпрд╣ рд╣реИ рдХрд┐ рдЖрд░ рдореЙрдбрд▓ рдХреЛ рдЯреЗрдХреНрд╕реНрдЯ рдореЗрдВ рдХреНрд░рдордмрджреНрдз рдХрд░реЗрдВ рдФрд░ рд╡рд░реНрдЯрд┐рдХрд╛ рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдпреВрдбреАрдПрдл рдХреЗ рд░реВрдк рдореЗрдВ рд╕рд╣реЗрдЬреЗрдВ, рдЬреЛ рдЗрд╕ рдЯреЗрдХреНрд╕реНрдЯ рдХреЛ рдПрдХ рд╕реНрдерд┐рд░рд╛рдВрдХ рдХреЗ рд░реВрдк рдореЗрдВ рд▓реМрдЯрд╛ рджреЗрдЧрд╛ (рдХреЙрди рдХрдиреЗрдХреНрд╢рди рдХреЛ рдЦреЛрд▓рдирд╛ рдФрд░ рдлрд┐рд░ рдмрдВрдж рдХрд░рдирд╛ рди рднреВрд▓реЗрдВ):
# mtcars.model.text <- rawToChar( serialize(mtcars.model, connection = NULL, ascii = TRUE)) # Vertica # ( ) mtcars.func <- paste0( "CREATE OR REPLACE FUNCTION public.MtCarsAnalizeModel() RETURN varchar(65000) AS BEGIN RETURN '", gsub("'", "''", mtcars.model.text), "'; END; GRANT EXECUTE ON FUNCTION public.MtCarsAnalizeModel() TO public;" ) # Vertica sqlQuery(con, mtcars.func)
рдкреНрд░рд╕реНрддрд╛рд╡рд┐рдд рд╡рд┐рдзрд┐ рдкрд░рд┐рд╡рд░реНрддрди рд╕рдорд╛рд░реЛрд╣ рдореЗрдВ рд╕рдВрдЪрд░рд┐рдд рдорд╛рдкрджрдВрдбреЛрдВ рдкрд░ рд╡рд░реНрдЯрд┐рдХрд╛ рдХреЗ рдкреНрд░рддрд┐рдмрдВрдз рдХреЛ рджрд░рдХрд┐рдирд╛рд░ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддреА рд╣реИ, рдЬрд╣рд╛рдВ рдХреЗрд╡рд▓ рд╕реНрдерд┐рд░рд╛рдВрдХ рдпрд╛ рд╕реНрдерд┐рд░рд╛рдВрдХ рд╕реЗ рд╕реНрдерд╛рдирд╛рдВрддрд░рдг рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред рд╡рд░реНрдЯрд┐рдХрд╛ рдпреВрдбреАрдПрдл рдПрд╕рдХреНрдпреВрдПрд▓ рдлрд╝рдВрдХреНрд╢рди рдХреЗ рд░реВрдк рдореЗрдВ рдирд╣реАрдВ, рдмрд▓реНрдХрд┐ рдЧрдгрдирд╛ рдХреА рдЧрдИ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐рдпреЛрдВ рдХреЗ рд░реВрдк рдореЗрдВ рд╕рдВрдХрд▓рд┐рдд рдХрд░рддрд╛ рд╣реИ, рдЬреЛ рдХрд┐ рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдХреЙрд▓ рдХрд░рдиреЗ рдХреЗ рдмрдЬрд╛рдп, рдЗрд╕рдХреЗ рдкрд╛рда (рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ рдПрдХ рд╕реНрдерд┐рд░) рдХреЛ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛, рдЬреЛ рдКрдкрд░ рджрд┐рдП рдЧрдП рдХреЛрдб рдореЗрдВ рд╕рд╣реЗрдЬрд╛ рдЧрдпрд╛ рдерд╛ред
рдпрджрд┐ рдЖрдк рдореЙрдбрд▓ рдмрджрд▓рддреЗ рд╣реИрдВ, рддреЛ рдЖрдкрдХреЛ рд╡рд░реНрдЯрд┐рдХрд╛ рдореЗрдВ рдЗрд╕рдХреЗ рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдлрд┐рд░ рд╕реЗ рдмрдирд╛рдирд╛ рд╣реЛрдЧрд╛ред рдЗрд╕ рдХреЛрдб рдХреЛ рдПрдХ рд╕рд╛рд░реНрд╡рднреМрдорд┐рдХ рдлрд╝рдВрдХреНрд╢рди рдореЗрдВ рд▓рдкреЗрдЯрдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдордЭ рдореЗрдВ рдЖрддрд╛ рд╣реИ рдЬреЛ рдкрд╛рд░рд┐рдд рдореЙрдбрд▓ рд╕реЗ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдирд╛рдо рдХреЗ рд╕рд╛рде рд╡рд░реНрдЯрд┐рдХрд╛ рдореЗрдВ рдПрдХ рдлрд╝рдВрдХреНрд╢рди рдЙрддреНрдкрдиреНрди рдХрд░рддрд╛ рд╣реИред
рд╡рд░реНрдЯрд┐рдХрд╛ рдХреЗ рд▓рд┐рдП рдХрд╛рд░реНрдп рдХрд░рддрд╛ рд╣реИ
рдЖрд░ рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рд╡рд░реНрдЯрд┐рдХрд╛ рд╕реЗ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рд╡рд░реНрдЯрд┐рдХрд╛ рдореЗрдВ рдбреЗрдЯрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдФрд░ рдкрдВрдЬреАрдХрд░рдг рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рд▓рд┐рдЦрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред
рд╡рд░реНрдЯрд┐рдХрд╛ рдХреЗ рддрд╣рдд рдбреЗрдЯрд╛ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рдХрд╛рд░реНрдп рдореЗрдВ рджреЛ рдкреИрд░рд╛рдореАрдЯрд░ рд╣реЛрдиреЗ рдЪрд╛рд╣рд┐рдП: рдкрд░рд┐рдгрд╛рдореА рдбреЗрдЯрд╛ рд╕реЗрдЯ (рдЬреИрд╕реЗ рдбреЗрдЯрд╛.рдлреНрд░реЗрдо) рдФрд░ рдХрд╛рд░реНрдп рдкреИрд░рд╛рдореАрдЯрд░ (рдЬреИрд╕реЗ рд╕реВрдЪреА):
MtCarsAnalize <- function(data, parameters) { if ( is.null(parameters[['model']]) ) { stop("NULL value for model! Model cannot be NULL.") } else { model <- unserialize(charToRaw(parameters[['model']])) } names(data) <- c('car_model', 'cyl', 'wt', 'gear') result <- data.frame(car_model = data$car_model, predict = 0) result$predict <- predict.glm(model, newdata = subset(data, select = c('cyl', 'wt', 'gear')), type = 'response' ) result$predict <- ifelse(result$predict > 0.5, TRUE, FALSE) return(result) }
рдлрд╝рдВрдХреНрд╢рди рдХреЗ рд╢рд░реАрд░ рдореЗрдВ, рдпрд╣ рдЬрд╛рдВрдЪ рдХреА рдЬрд╛рддреА рд╣реИ рдХрд┐ рдореЙрдбрд▓ рдкреИрд░рд╛рдореАрдЯрд░ рдкрд╛рд░рд┐рдд рд╣реЛ рдЧрдпрд╛ рд╣реИ, рдЬрд┐рд╕рдореЗрдВ рд╕реЗ рдкрд╛рда рдХреЛ рджреНрд╡рд┐рдЖрдзрд╛рд░реА рд░реВрдк рдореЗрдВ рдЕрдиреБрд╡рд╛рдж рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ рдФрд░ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдореЙрдбрд▓ рдХреА рд╡рд╕реНрддреБ рдореЗрдВ deserialized рд╣реИред рдЪреВрдВрдХрд┐ рд╡рд░реНрдЯрд┐рдХрд╛ рдлрд╝рдВрдХреНрд╢рди рдХреЗ рд▓рд┐рдП рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рдлрд╝реАрд▓реНрдб рдирд╛рдореЛрдВ рдХреЛ рдбреЗрдЯрд╛рд╕реЗрдЯ рдореЗрдВ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рд╕реНрдкрд╖реНрдЯ рдлрд╝реАрд▓реНрдб рдирд╛рдо рдбреЗрдЯрд╛рд╕реЗрдЯ рдкрд░ рд╕реЗрдЯ рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВред рдкреНрд░рд╛рдкреНрдд рдЖрдВрдХрдбрд╝реЛрдВ рдХреЗ рдЖрдзрд╛рд░ рдкрд░, рдПрдХ рдкрд░рд┐рдгрд╛рдо рд╕реЗрдЯ рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдорд╢реАрди рдореЙрдбрд▓ рдФрд░ рд╢реВрдиреНрдп рднрд╡рд┐рд╖реНрдпрд╡рд╛рдгреА рдХреЗ рдирд╛рдо рдХреЗ рд╕рд╛рде рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЕрдЧрд▓рд╛, рдкреНрд░рд╛рдкреНрдд рдЖрдВрдХрдбрд╝реЛрдВ рдХреЗ рд╕реЗрдЯ рд╕реЗ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХреЗ рд▓рд┐рдП рдХреЗрд╡рд▓ рдЖрд╡рд╢реНрдпрдХ рдлрд╝реАрд▓реНрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдПрдХ рдкреВрд░реНрд╡рд╛рдиреБрдорд╛рди рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдкрд░рд┐рдгрд╛рдо рд╕реЗрдЯ рдХрд╛ рдкреВрд░реНрд╡рд╛рдиреБрдорд╛рди рдлрд╝реАрд▓реНрдб рдмреВрд▓рд┐рдпрди рдорд╛рдиреЛрдВ (рд╕рдВрдЦреНрдпрд╛рддреНрдордХ рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХреЗ рдмрдЬрд╛рдп рдкрд░рд┐рд╡рд░реНрддрди рдХреЗ рд▓рд┐рдП) рдкрд░ рд╕реЗрдЯ рд╣реИ рдФрд░ рдкрд░рд┐рдгрд╛рдо рдлрд╝рдВрдХреНрд╢рди рд╕реЗ рд╡рд╛рдкрд╕ рдЖ рдЧрдпрд╛ рд╣реИред
рдЕрдм рдпрд╣ рд╡рд░реНрдЯрд┐рдХрд╛ рдореЗрдВ рдЗрд╕ рд╕рдорд╛рд░реЛрд╣ рдХреЗ рдкрдВрдЬреАрдХрд░рдг рдХрд╛ рд╡рд░реНрдгрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрдирд╛ рд╣реБрдЖ рд╣реИ:
MtCarsAnalizeFactory <- function() { list(name = MtCarsAnalize, udxtype = c("transform"), intype = c("varchar", "int", "float", "int"), outtype = c("varchar", "boolean"), outnames = c("car_model", "predict"), parametertypecallback=MtCarsAnalizeParameters) } MtCarsAnalizeParameters <- function() { parameters <- list(datatype = c("varchar"), length = 65000, scale = c("NA"), name = c("model")) return(parameters) }
MtCarsAnalizeFactory рдлрд╝рдВрдХреНрд╢рди рдСрдкрд░реЗрд╢рди рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдирд╛рдо, рдЖрд╡рдХ рдФрд░ рдЖрдЙрдЯрдЧреЛрдЗрдВрдЧ рдбреЗрдЯрд╛ рд╕реЗрдЯ рдХреЗ рд▓рд┐рдП рдлрд╝реАрд▓реНрдб рдХрд╛ рд╡рд░реНрдгрди рдХрд░рддрд╛ рд╣реИ, рдФрд░ рджреВрд╕рд░рд╛ рдлрд╝рдВрдХреНрд╢рди рдкрд╛рд╕ рдХрд┐рдП рдЧрдП рдкреИрд░рд╛рдореАрдЯрд░ "рдореЙрдбрд▓" рдХрд╛ рд╡рд░реНрдгрди рдХрд░рддрд╛ рд╣реИред рдлрд╝реАрд▓реНрдб рдкреНрд░рдХрд╛рд░ рд╡рд░реНрдЯрд┐рдХрд╛ рдбреЗрдЯрд╛ рдкреНрд░рдХрд╛рд░ рд╣реИрдВред рдбреЗрдЯрд╛ рдХреЛ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рдиреЗ рдФрд░ рд╡рд╛рдкрд╕ рдХрд░рдиреЗ рдкрд░, рд╡рд░реНрдЯрд┐рдХрд╛ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдЖрд░ рднрд╛рд╖рд╛ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рдбреЗрдЯрд╛ рдкреНрд░рдХрд╛рд░реЛрдВ рдореЗрдВ рдореВрд▓реНрдпреЛрдВ рдХреЛ рдкрд░рд┐рд╡рд░реНрддрд┐рдд рдХрд░рддрд╛ рд╣реИред рдЖрдк рд╡рд░реНрдЯрд┐рдХрд╛ рдкреНрд░рд▓реЗрдЦрди рдореЗрдВ рдЯрд╛рдЗрдк рд╕рдВрдЧрддрддрд╛ рддрд╛рд▓рд┐рдХрд╛ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВред
рдЖрдк рдЖрд░ рд╕реНрдЯреВрдбрд┐рдпреЛ рдореЗрдВ рдЕрдкрд▓реЛрдб рдХрд┐рдП рдЧрдП рдбреЗрдЯрд╛ рдкрд░ рд╡рд░реНрдЯрд┐рдХрд╛ рдХреЗ рд▓рд┐рдП рд▓рд┐рдЦрд┐рдд рдлрд╝рдВрдХреНрд╢рди рдХреЗ рд╕рдВрдЪрд╛рд▓рди рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:
test.data = subset(mtcars.data, select = c('car_model', 'cyl', 'wt', 'gear')) test.params = list(model = mtcars.model.text) test.result = MtCarsAnalize(test.data, test.params)
рдлреАрдЪрд░ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХреЛ рд╡рд░реНрдЯрд┐рдХрд╛ рд╕реЗ рдХрдиреЗрдХреНрдЯ рдХрд░реЗрдВ
рд╣рдо рдЙрдкрд░реЛрдХреНрдд рд╕рднреА рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рдПрдХ рдлрд╝рд╛рдЗрд▓ "mtcars_func.r" рдореЗрдВ рд╕рд╣реЗрдЬрддреЗ рд╣реИрдВ рдФрд░ рдЗрд╕ рдлрд╛рдЗрд▓ рдХреЛ "/ home / dbadmin" рдореЗрдВ рд╡рд░реНрдЯрд┐рдХрд╛ рдХреНрд▓рд╕реНрдЯрд░ рд╕реЗ рд╕рд░реНрд╡рд░ рдореЗрдВ рд╕реЗ рдХрд┐рд╕реА рдПрдХ рдкрд░ рдЕрдкрд▓реЛрдб рдХрд░рддреЗ рд╣реИрдВред
рдПрдХ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдмрд┐рдВрджреБ: рдЖрд░ рд╕реНрдЯреВрдбрд┐рдпреЛ рдореЗрдВ, рдЖрдкрдХреЛ Posix (LF) рдореЛрдб рдореЗрдВ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЗ рдЕрдиреБрд╡рд╛рдж рдХреЛ рд╕рд╣реЗрдЬрдиреЗ рдХреЗ рд▓рд┐рдП рд╡рд┐рдХрд▓реНрдк рд╕реЗрдЯ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдпрд╣ рд╡реИрд╢реНрд╡рд┐рдХ рд╡рд┐рдХрд▓реНрдкреЛрдВ, рдХреЛрдб рдЕрдиреБрднрд╛рдЧ, рдмрдЪрдд рдЯреИрдм рдореЗрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдпрджрд┐ рдЖрдк рд╡рд┐рдВрдбреЛрдЬ рдкрд░ рдХрд╛рдо рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рддреЛ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рдлрд╛рдЗрд▓ рдХреЛ рдЧрд╛рдбрд╝реА рдХреЗ рд░рд┐рдЯрд░реНрди рдХреЗ рд╕рд╛рде рд╕рд╣реЗрдЬрд╛ рдЬрд╛рдПрдЧрд╛ рдФрд░ рд╡рд░реНрдЯрд┐рдХрд╛ рдкрд░ рдЕрдкрд▓реЛрдб рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХреЗрдЧрд╛ред
рд╣рдо рд╡рд░реНрдЯрд┐рдХрд╛ рдХреНрд▓рд╕реНрдЯрд░ рд╕реЗ рд╕рд░реНрд╡рд░ рд╕реЗ рдХрдиреЗрдХреНрдЯ рдХрд░рддреЗ рд╣реИрдВ, рдЬрд┐рд╕рд╕реЗ рд╣рдордиреЗ рдлрд╝рд╛рдЗрд▓ рдХреЛ рдмрдЪрд╛рдпрд╛ рдФрд░ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рд▓реЛрдб рдХреА:
CREATE LIBRARY MtCarsLibs AS '/home/dbadmin/mtcars_func.r' LANGUAGE 'R';
рдЕрдм рдЗрд╕ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рд╕реЗ рдЖрдк R рдлрдВрдХреНрд╢рди рд░рдЬрд┐рд╕реНрдЯрд░ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:
CREATE TRANSFORM FUNCTION public.MtCarsAnalize AS LANGUAGE 'R' NAME 'MtCarsAnalizeFactory' LIBRARY MtCarsLibs; GRANT EXECUTE ON TRANSFORM FUNCTION public.MtCarsAnalize(varchar, int, float, int) TO public;
рд╡рд░реНрдЯрд┐рдХрд╛ рдореЗрдВ рдХреЙрд▓ рдЖрд░ рдлрд╝рдВрдХреНрд╢рди
рд╣рдо рдЖрд░ рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдХрд╣рддреЗ рд╣реИрдВ, рдЗрд╕реЗ рдореЙрдбрд▓ рдЯреЗрдХреНрд╕реНрдЯ рдкрд╛рд╕ рдХрд░рддреЗ рд╣реИрдВ, рдЬрд┐рд╕реЗ рдкрд╣рд▓реЗ рдпреВрдбреАрдПрдл рдлрд╝рдВрдХреНрд╢рди рдХреЗ рд░реВрдк рдореЗрдВ рд╕рд╣реЗрдЬрд╛ рдЧрдпрд╛ рдерд╛:
SELECT MtCarsAnalize(car_model, cyl, wt, gear USING PARAMETERS model = public.MtCarsAnalizeModel()) OVER() FROM public.mtcars;

рдпрд╣ рд╕рддреНрдпрд╛рдкрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐, рдкрд┐рдЫрд▓реЗ рдорд╛рдорд▓реЛрдВ рдХреА рддрд░рд╣, рдкреВрд░реНрд╡рд╛рдиреБрдорд╛рди рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдорд╛рдорд▓реЛрдВ рдХреА рд╕реНрдерд┐рддрд┐ рдХреЗ рдЕрдиреБрд░реВрдк 100% рд╣реИ:
SELECT c.*, p.predict, p.predict = c.am::int AS valid FROM public.mtcars c INNER JOIN ( SELECT MtCarsAnalize(car_model, cyl, wt, gear USING PARAMETERS model = public.MtCarsAnalizeModel()) OVER() FROM public.mtcars ) p ON c.car_model = p.car_model
рдХреГрдкрдпрд╛ рдзреНрдпрд╛рди рджреЗрдВ: рд╡рд░реНрдЯрд┐рдХрд╛ рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрди рдлрд╝рдВрдХреНрд╢рди рдлрд╝реАрд▓реНрдбреНрд╕ рдФрд░ рдлрд╝рдВрдХреНрд╢рди рдХреЗ рднреАрддрд░ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд┐рдП рдЧрдП рд░рд┐рдХреЙрд░реНрдб рд╕реЗ рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рдбреЗрдЯрд╛ рд╕реЗрдЯ рдХреЛ рд╡рд╛рдкрд╕ рдХрд░рддреЗ рд╣реИрдВ, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдпрджрд┐ рд╡реЗ рдПрдХ рд╕рдмрдХреНрд╡реЗрд░реА рдореЗрдВ рд▓рд┐рдкрдЯреЗ рд╣реИрдВ, рддреЛ рдЙрдирдХрд╛ рдЙрдкрдпреЛрдЧ рдкреНрд░рд╢реНрдиреЛрдВ рдореЗрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
рдЬрдм рдЖрд░ рдлрд╝рдВрдХреНрд╢рди рдЬреБрдбрд╝реЗ рд╣реЛрддреЗ рд╣реИрдВ, рддреЛ рд╡рд░реНрдЯрд┐рдХрд╛ рд╕реНрд░реЛрдд рдХреЛрдб рдХреЛ рдЗрд╕рдХреА рд╕реНрдерд╛рдкрдирд╛ рдХреЗ рд▓рд┐рдП рдХреЙрдкреА рдХрд░рддрд╛ рд╣реИ, рдЬрд┐рд╕реЗ рдпрд╣ рдорд╢реАрди рдХреЛрдб рдореЗрдВ рд╕рдВрдХрд▓рд┐рдд рдХрд░рддрд╛ рд╣реИред рд▓рд╛рдЗрдмреНрд░реЗрд░реА рд╕реЗ рдХрдиреЗрдХреНрдЯ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж рд╕рд░реНрд╡рд░ рдкрд░ рдЕрдкрд▓реЛрдб рдХреА рдЧрдИ рд╕реНрд░реЛрдд рдЖрд░ рдлрд╝рд╛рдЗрд▓ рдХреЛ рдЖрдЧреЗ рдХреЗ рдХрд╛рдо рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рдирд╣реАрдВ рд╣реИред рдмрд╛рдЗрдирд░реА рдбреЗрдЯрд╛ рд╕рдВрдХрд▓рди рдореЗрдВ рдХрд╛рд░реНрдп рдХрд░рдиреЗ рдХреА рдЧрддрд┐ рдмрдбрд╝реА рдбреЗрдЯрд╛ рд╕рд░рдгрд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рд╣реИ, рд╣рд╛рд▓рд╛рдВрдХрд┐, рдпрд╣ рдпрд╛рдж рд░рдЦрдиреЗ рдпреЛрдЧреНрдп рд╣реИ рдХрд┐ рд╕рднреА рдЖрд░ рдСрдкрд░реЗрд╢рди рдореЗрдореЛрд░реА рдореЗрдВ рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВ рдФрд░ рдЕрдЧрд░ рд╡рд░реНрдЯрд┐рдХрд╛ рдФрд░ рдЖрд░ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдУрдПрд╕ рдореЗрдореЛрд░реА рдХреА рдХрдореА рд╣реИ рддреЛ рд╕реНрд╡реИрдк рдЬрд╛рдиреЗ рдХрд╛ рдЬреЛрдЦрд┐рдо рд╣реИред ред
рдпрджрд┐ рдлрд╝рдВрдХреНрд╢рди рдХреЛ OVER рдХреЗ рд▓рд┐рдП рдкрд╛рд░реНрдЯреАрд╢рди рдореЗрдВ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдбреЗрдЯрд╛ рдХреЗ рд╡рд┐рднрд╛рдЬрди рдкрд░ рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рд╡рд░реНрдЯрд┐рдХрд╛ рдХреНрд▓рд╕реНрдЯрд░ рд╕рд░реНрд╡рд░ рдкрд░ рдкреНрд░рддреНрдпреЗрдХ рд╡рд┐рднрд╛рдЬрди рдХреЗ рдирд┐рд╖реНрдкрд╛рджрди рдХреЛ рд╕рдорд╛рдирд╛рдВрддрд░ рдХрд░рддрд╛ рд╣реИред рдЗрд╕ рдкреНрд░рдХрд╛рд░, рдпрджрд┐ рдХреЛрдИ рдирд┐рд░реНрдорд╛рддрд╛ рдЕрднреА рднреА рдорд╢реАрди рдореЙрдбрд▓ рдХреЗ рдЕрддрд┐рд░рд┐рдХреНрдд рдбреЗрдЯрд╛ рд╕реЗрдЯ рдореЗрдВ рдореМрдЬреВрдж рдерд╛, рддреЛ рдЖрдк рдЗрд╕реЗ рдкрд╛рд░реНрдЯреА рджреНрд╡рд╛рд░рд╛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдкреНрд░рддреНрдпреЗрдХ рдирд┐рд░реНрдорд╛рддрд╛ рдХреЗ рд▓рд┐рдП рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХреЛ рд╕рдорд╛рдирд╛рдВрддрд░ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рдЕрдиреНрдп рд╡рд░реНрдЯрд┐рдХрд╛ рдорд╢реАрди рд╕реАрдЦрдиреЗ рдХреЗ рдЕрд╡рд╕рд░
рдЖрд░ рдХреЗ рдЕрд▓рд╛рд╡рд╛, рд╡рд░реНрдЯрд┐рдХрд╛ рд╕реА, рдЬрд╛рд╡рд╛ рдФрд░ рдкрд╛рдпрдерди рдореЗрдВ рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рдкрд░рд┐рд╡рд░реНрддрди рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рд╡рд┐рдХрд╕рд┐рдд рдХрд░ рд╕рдХрддрд╛ рд╣реИред рдкреНрд░рддреНрдпреЗрдХ рднрд╛рд╖рд╛ рдХреА рдЕрдкрдиреА рдмрд╛рд░реАрдХрд┐рдпреЛрдВ рдФрд░ рд▓рд┐рдЦрдиреЗ рдФрд░ рд╡рд░реНрдЯрд┐рдХрд╛ рд╕реЗ рдЬреБрдбрд╝рдиреЗ рдХреА рд╡рд┐рд╢реЗрд╖рддрд╛рдПрдВ рд╣реИрдВред рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рдПрдордПрд▓ рдХреЗ рд╕рд╛рде рдорд┐рд▓рдХрд░, рдпрд╣ рд╕рдм рд╡рд░реНрдЯрд┐рдХрд╛ рдХреЛ рднрд╡рд┐рд╖реНрдп рдХрд╣рдиреЗрд╡рд╛рд▓рд╛ рдбреЗрдЯрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрдЪреНрдЫрд╛ рд░рд┐рдЬрд╝рд░реНрд╡ рджреЗрддрд╛ рд╣реИред
рдзрдиреНрдпрд╡рд╛рдж рдФрд░ рд▓рд┐рдВрдХ
рдореИрдВ рдЕрдкрдиреЗ рджреЛрд╕реНрдд рдФрд░ рд╕рд╣рдХрд░реНрдореА рд╡реНрд▓рд╛рдж рдорд╛рд▓реЛрдлреАрд╡ рдХреЛ рдкрд░реНрдо рд╕реЗ рдИрдорд╛рдирджрд╛рд░реА рд╕реЗ рдзрдиреНрдпрд╡рд╛рдж рджреЗрдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ, рдЬрд┐рдиреНрд╣реЛрдВрдиреЗ рдореБрдЭреЗ рдЖрд░ рд╕реЗ рдорд┐рд▓рд╡рд╛рдпрд╛ рдФрд░ рд╣рдорд╛рд░реА рдПрдХ рд╕рдВрдпреБрдХреНрдд рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ рдЗрд╕рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рдореЗрдВ рдорджрдж рдХреАред
рдкреНрд░рд╛рд░рдВрдн рдореЗрдВ, рдПрдХ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ рдЬрд╣рд╛рдВ рдкрд┐рдЫрд▓реЗ рд╡рд░реНрд╖ рдХреЗ рдбреЗрдЯрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рднрд╡рд┐рд╖реНрдп рдХреЗ рд▓рд┐рдП рдХрдард┐рди рдкрд░рд┐рд╕реНрдерд┐рддрд┐рдпреЛрдВ рдкрд░ рдкреВрд░реНрд╡рд╛рдиреБрдорд╛рди рд▓рдЧрд╛рдпрд╛ рдЧрдпрд╛ рдерд╛, рдбреЗрд╡рд▓рдкрд░реНрд╕ рдиреЗ SQL рдФрд░ Java рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд┐рдпрд╛ред рдЗрд╕рд╕реЗ рдЗрди рд╕реНрд░реЛрддреЛрдВ рдХреА рдЧреБрдгрд╡рддреНрддрд╛ рдХреЛ рдзреНрдпрд╛рди рдореЗрдВ рд░рдЦрддреЗ рд╣реБрдП рдмрдбрд╝реА рдХрдард┐рдирд╛рдЗрдпреЛрдВ рдХрд╛ рд╕рд╛рдордирд╛ рдХрд░рдирд╛ рдкрдбрд╝рд╛ рдФрд░ рдЗрд╕рдиреЗ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рд╡рд┐рдХрд╛рд╕ рдХреЛ рдзреАрдорд╛ рдХрд░ рджрд┐рдпрд╛ред рд╡реНрд▓рд╛рдж рдЖрд░ рдХреЗ рд╕рд╛рде рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рд▓рд┐рдП рдЖрдпрд╛ рдерд╛, рд╣рдордиреЗ рдЖрд░ рдХреЛ рд╡рд░реНрдЯрд┐рдХрд╛ рд╕реЗ рдЬреЛрдбрд╝рд╛, рдЙрд╕рдиреЗ рдбреЗрдЯрд╛ рдХреЛ рд╕реНрдЯреВрдбрд┐рдпреЛ рдФрд░ рд╕рдмрдХреБрдЫ рд╕реЗ рдЕрд▓рдЧ рдХрд░ рджрд┐рдпрд╛ рдФрд░ рддреБрд░рдВрдд рд╕реБрдВрджрд░ рд╣реЛ рдЧрдпрд╛ред рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рд╣рдлреНрддреЛрдВ рдореЗрдВ, рдЬреЛ рдХреБрдЫ рдорд╣реАрдиреЛрдВ рддрдХ рдЪрд▓рд╛ рдерд╛, рдЙрд╕ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЛ рдЬрдЯрд┐рд▓ рдХреЛрдб рд╕реЗ рдмрдЪрд╛рдпрд╛ рдЧрдпрд╛ рдерд╛ред
рдЬреАрдЖрдИрдЯреА рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рд╕реЗ рдХрд╛рд░реЛрдВ рдХрд╛ рдЙрджрд╛рд╣рд░рдг рдбреЗрдЯрд╛ рдбрд╛рдЙрдирд▓реЛрдб рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ:
git clone https://github.com/vertica/Machine-Learning-Examples
рдФрд░ рд╡рд░реНрдЯрд┐рдХрд╛ рдореЗрдВ рдЕрдкрд▓реЛрдб рдХрд░реЗрдВ:
/opt/vertica/bin/vsql -d <name of your database> -f load_ml_data.sql
рдпрджрд┐ рдЖрдк рдПрдордПрд▓ рдореЗрдВ рдЧрд╣рд░рд╛рдИ рд╕реЗ рдЬрд╛рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдФрд░ рдЖрд░ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдирд╛ рд╕реАрдЦрддреЗ рд╣реИрдВ, рддреЛ рдореИрдВ рд░реВрд╕реА рдореЗрдВ
"рдХрд╛рд░реНрд░рд╡рд╛рдИ рдореЗрдВ рдЖрд░" рдкреБрд╕реНрддрдХ рдХреА рд╕рд┐рдлрд╛рд░рд┐рд╢ рдХрд░рддрд╛ рд╣реВрдВ
ред R рднрд╛рд╖рд╛ рдореЗрдВ рдбреЗрдЯрд╛ рдХрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдФрд░ рджреГрд╢реНрдп ред
" рдпрд╣ рдПрдХ рд╕рд░рд▓, рд╕реБрд▓рдн рдорд╛рдирд╡ рднрд╛рд╖рд╛ рдореЗрдВ рд▓рд┐рдЦрд╛ рдЧрдпрд╛ рд╣реИ рдФрд░ рд╢реБрд░реБрдЖрддреА рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреБрдХреНрдд рд╣реИ рдЬрд┐рдиреНрд╣реЛрдВрдиреЗ рдкрд╣рд▓реЗ рдорд╢реАрди рд▓рд░реНрдирд┐рдВрдЧ рдХрд╛ рд╕рд╛рдордирд╛ рдирд╣реАрдВ рдХрд┐рдпрд╛ рд╣реИред
рдпрд╣рд╛рдВ рдЖрдк рдЖрд░ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХреЛ рд╡рд░реНрдЯрд┐рдХрд╛ рд╕реЗ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реА рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВред
рдЙрди рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдЬреЛ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдкрд╛рдпрдерди рдореЗрдВ рдПрдордПрд▓ рд╕реАрдЦрдирд╛ рдФрд░ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░ рдЪреБрдХреЗ рд╣реИрдВ, рдпрд╣ рдЖрдИрдбреАрдИ рд░реЛрдбрд┐рдпреЛ рдкрд░ рдзреНрдпрд╛рди рджреЗрдиреЗ рдпреЛрдЧреНрдп рд╣реИ, рдпрд╣ рдЖрд░ рд╕реНрдЯреВрдбрд┐рдпреЛ рдХрд╛ рдПрдХ рдПрдирд╛рд▓реЙрдЧ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдЗрдВрдЯрд░реИрдХреНрдЯрд┐рд╡ рдЧреБрдгрд╡рддреНрддрд╛ рдХреЗ рдмрд┐рдирд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдЕрд╕рдВрднрд╡ рд╣реИред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЖрд░ рдХреЗ рддрд╣рдд рдЗрд╕ рддрд░рд╣ рдХреЗ рд▓реЗрдЦ рдореЗрдВ рд╡рд░реНрдгрд┐рдд рд╕рдм рдХреБрдЫ рдкрд╛рдпрдерди рдореЗрдВ рд╡рд┐рдХрд╕рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдЬрд┐рд╕рдореЗрдВ рдпреВрдбреАрдПрдл рдХрд╛рд░реНрдпреЛрдВ рдореЗрдВ рдореЙрдбрд▓ рдХреЛ рдмрдЪрд╛рдиреЗ рдФрд░ рд╡рд░реНрдЯрд┐рдХрд╛ рдХреЗ рд▓рд┐рдП рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рд╡рд┐рдХрд╕рд┐рдд рдХрд░рдирд╛ рд╢рд╛рдорд┐рд▓ рд╣реИред рдпрджрд┐ рдЖрдк рдЬрд╛рдВрдЪ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдореЗрдВ рдкрд░рд┐рдгрд╛рдореЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕рджрд╕реНрдпрддрд╛ рд╕рдорд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдордд рднреВрд▓рдирд╛, рдореИрдВ рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд▓рд┐рдП рдЖрднрд╛рд░реА рд░рд╣реВрдВрдЧрд╛ред
рдЕрдкрдиреЗ рд╕рдордп рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж рдФрд░ рдореБрдЭреЗ рдЖрд╢рд╛ рд╣реИ рдХрд┐ рдореИрдВ рдЖрд░ рдФрд░ рд╡рд░реНрдЯрд┐рдХрд╛ рдХреЗ рд╕рд╣рдЬреАрд╡рди рдХреА рд╕рд╛рджрдЧреА рдФрд░ рдЕрд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рдХреНрд╖рдорддрд╛рдУрдВ рдХрд╛ рдкреНрд░рджрд░реНрд╢рди рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдерд╛ред