рдбреЗрдЯрд╛ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреМрди рд╕реА рднрд╛рд╖рд╛ рдЪреБрдиреЗрдВ - рдЖрд░ рдпрд╛ рдкрд╛рдпрдерди? рджреЛрдиреЛрдВ! рдкрд╛рдВрдбрд╛ рд╕реЗ рдЯрд┐рдбреАрд╡рд░реНрд╕ рдФрд░ рдбреЗрдЯрд╛.рдЯреЗрдмрд▓ рдФрд░ рд╡рд╛рдкрд╕ рдХреА рдУрд░ рдкрд▓рд╛рдпрди

рдЗрдВрдЯрд░рдиреЗрдЯ рдкрд░ рдЖрд░ рдпрд╛ рдкрд╛рдпрдерди рдХреА рдЦреЛрдЬ рдХрд░рдиреЗ рдкрд░, рдЖрдкрдХреЛ рдЗрд╕ рд╡рд┐рд╖рдп рдкрд░ рд▓рд╛рдЦреЛрдВ рд▓реЗрдЦ рдФрд░ рдЪрд░реНрдЪрд╛рдПрдБ рдорд┐рд▓реЗрдВрдЧреА рдХрд┐ рдбреЗрдЯрд╛ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреМрди рд╕рд╛ рдмреЗрд╣рддрд░, рддреЗрдЬрд╝ рдФрд░ рдЕрдзрд┐рдХ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╣реИред рдкрд░рдиреНрддреБ рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ рдпреЗ рд╕рднреА рд▓реЗрдЦ рдПрд╡рдВ рд╡рд┐рд╡рд╛рдж рд╡рд┐рд╢реЗрд╖ рдЙрдкрдпреЛрдЧреА рдирд╣реАрдВ рд╣реИрдВред

рдбреЗрдЯрд╛ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреМрди рд╕реА рднрд╛рд╖рд╛ рдЪреБрдиреЗрдВ - рдЖрд░ рдпрд╛ рдкрд╛рдпрдерди? рджреЛрдиреЛрдВ! рдкрд╛рдВрдбрд╛ рд╕реЗ рдЯрд┐рдбреАрд╡рд░реНрд╕ рдФрд░ рдбреЗрдЯрд╛.рдЯреЗрдмрд▓ рдФрд░ рд╡рд╛рдкрд╕ рдХреА рдУрд░ рдкрд▓рд╛рдпрди

рдЗрд╕ рд▓реЗрдЦ рдХрд╛ рдЙрджреНрджреЗрд╢реНрдп рджреЛрдиреЛрдВ рднрд╛рд╖рд╛рдУрдВ рдХреЗ рд╕рдмрд╕реЗ рд▓реЛрдХрдкреНрд░рд┐рдп рдкреИрдХреЗрдЬреЛрдВ рдореЗрдВ рдмреБрдирд┐рдпрд╛рджреА рдбреЗрдЯрд╛ рдкреНрд░реЛрд╕реЗрд╕рд┐рдВрдЧ рддрдХрдиреАрдХреЛрдВ рдХреА рддреБрд▓рдирд╛ рдХрд░рдирд╛ рд╣реИред рдФрд░ рдкрд╛рдардХреЛрдВ рдХреЛ рдЙрди рдЪреАрдЬрд╝реЛрдВ рдкрд░ рд╢реАрдШреНрд░рддрд╛ рд╕реЗ рдорд╣рд╛рд░рдд рд╣рд╛рд╕рд┐рд▓ рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдХрд░реЗрдВ рдЬреЛ рд╡реЗ рдЕрднреА рддрдХ рдирд╣реАрдВ рдЬрд╛рдирддреЗ рд╣реИрдВред рдЬреЛ рд▓реЛрдЧ рдкрд╛рдЗрдереЙрди рдореЗрдВ рд▓рд┐рдЦрддреЗ рд╣реИрдВ, рдЙрдирдХреЗ рд▓рд┐рдП рдЬрд╛рдиреЗрдВ рдХрд┐ рд╡рд╣реА рдХрд╛рдо рдЖрд░ рдореЗрдВ рдХреИрд╕реЗ рдХрд░реЗрдВ рдФрд░ рдЗрд╕рдХреЗ рд╡рд┐рдкрд░реАрддред

рд▓реЗрдЦ рдХреЗ рджреМрд░рд╛рди рд╣рдо рдЖрд░ рдореЗрдВ рд╕рдмрд╕реЗ рд▓реЛрдХрдкреНрд░рд┐рдп рдкреИрдХреЗрдЬреЛрдВ рдХреЗ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд░реЗрдВрдЧреЗред рдпреЗ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдореЗрдВ рд╢рд╛рдорд┐рд▓ рдкреИрдХреЗрдЬ рд╣реИрдВ tidyverseрдФрд░ рдкреИрдХреЗрдЬ рднреА data.table. рдФрд░ рдЙрдирдХреЗ рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рдХреА рддреБрд▓рдирд╛ рдХрд░реЗрдВ pandasрдкрд╛рдЗрдереЙрди рдореЗрдВ рд╕рдмрд╕реЗ рд▓реЛрдХрдкреНрд░рд┐рдп рдбреЗрдЯрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдкреИрдХреЗрдЬред

рд╣рдо рдкрд╛рдпрдерди рдФрд░ рдЖрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдбреЗрдЯрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХреЗ рдкреВрд░реЗ рдкрде рдХреЛ рд▓реЛрдб рдХрд░рдиреЗ рд╕реЗ рд▓реЗрдХрд░ рд╡рд┐рд╢реНрд▓реЗрд╖рдгрд╛рддреНрдордХ рд╡рд┐рдВрдбреЛ рдлрд╝рдВрдХреНрд╢рди рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рддрдХ рдЪрд░рдг рджрд░ рдЪрд░рдг рдЖрдЧреЗ рдмрдврд╝реЗрдВрдЧреЗред

рд╕рд╛рдордЧреНрд░реА

рдпрджрд┐ рдЖрдк рднреВрд▓ рдЧрдП рд╣реИрдВ рдХрд┐ рд╡рд┐рдЪрд╛рд░рд╛рдзреАрди рдкреИрдХреЗрдЬреЛрдВ рдореЗрдВ рд╕реЗ рдХрд┐рд╕реА рдПрдХ рдореЗрдВ рдХреБрдЫ рдбреЗрдЯрд╛ рдкреНрд░реЛрд╕реЗрд╕рд┐рдВрдЧ рдСрдкрд░реЗрд╢рди рдХреИрд╕реЗ рдХрд░рдирд╛ рд╣реИ рддреЛ рдЗрд╕ рд▓реЗрдЦ рдХреЛ рдПрдХ рдЪреАрдЯ рд╢реАрдЯ рдХреЗ рд░реВрдк рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

рдбреЗрдЯрд╛ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреМрди рд╕реА рднрд╛рд╖рд╛ рдЪреБрдиреЗрдВ - рдЖрд░ рдпрд╛ рдкрд╛рдпрдерди? рджреЛрдиреЛрдВ! рдкрд╛рдВрдбрд╛ рд╕реЗ рдЯрд┐рдбреАрд╡рд░реНрд╕ рдФрд░ рдбреЗрдЯрд╛.рдЯреЗрдмрд▓ рдФрд░ рд╡рд╛рдкрд╕ рдХреА рдУрд░ рдкрд▓рд╛рдпрди

  1. рдЖрд░ рдФрд░ рдкрд╛рдпрдерди рдХреЗ рдмреАрдЪ рдореБрдЦреНрдп рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рдЕрдВрддрд░
    1.1. рдкреИрдХреЗрдЬ рдлрд╝рдВрдХреНрд╢рдВрд╕ рддрдХ рдкрд╣реБрдБрдЪрдирд╛
    1.2. рдХрд╛рд░реНрдпрднрд╛рд░
    1.3. рдЕрдиреБрдХреНрд░рдордг
    1.4. рддрд░реАрдХреЗ рдФрд░ OOP
    1.5. рдкрд╛рдЗрдкрд▓рд╛рдЗрдиреЛрдВ
    1.6. рдбреЗрдЯрд╛ рд╕рдВрд░рдЪрдирд╛рдПрдВ
  2. рд╣рдорд╛рд░реЗ рджреНрд╡рд╛рд░рд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рдкреИрдХреЗрдЬреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреБрдЫ рд╢рдмреНрдж
    2.1. рд╕рд╛рдл рд╕реБрдерд░рд╛
    2.2. рдбреЗрдЯрд╛ рддрд╛рд▓рд┐рдХрд╛
    2.3. рдкрд╛рдВрдбрд╛
  3. рд╕рдВрдХреБрд▓ рд╕рдВрд╕реНрдерд╛рдкрд┐рдд рдХрд░рдирд╛
  4. рдбреЗрдЯрд╛ рд▓реЛрдб рд╣реЛ рд░рд╣рд╛ рд╣реИ
  5. рдбреЗрдЯрд╛рдлрд╝реНрд░реЗрдо рдмрдирд╛рдирд╛
  6. рдЖрдкрдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рдХреЙрд▓рдо рдХрд╛ рдЪрдпрди рдХрд░рдирд╛
  7. рдкрдВрдХреНрддрд┐рдпреЛрдВ рдХреЛ рдлрд╝рд┐рд▓реНрдЯрд░ рдХрд░рдирд╛
  8. рд╕рдореВрд╣рди рдФрд░ рдПрдХрддреНрд░реАрдХрд░рдг
  9. рддрд╛рд▓рд┐рдХрд╛рдУрдВ рдХрд╛ рд▓рдВрдмрд╡рдд рд╕рдВрдШ (рдпреВрдирд┐рдпрди)
  10. рддрд╛рд▓рд┐рдХрд╛рдУрдВ рдХрд╛ рдХреНрд╖реИрддрд┐рдЬ рдЬреБрдбрд╝рд╛рд╡ (JOIN)
  11. рдмреБрдирд┐рдпрд╛рджреА рд╡рд┐рдВрдбреЛ рдлрд╝рдВрдХреНрд╢рдВрд╕ рдФрд░ рдкрд░рд┐рдХрд▓рд┐рдд рдХреЙрд▓рдо
  12. рдЖрд░ рдФрд░ рдкрд╛рдпрдерди рдореЗрдВ рдбреЗрдЯрд╛ рдкреНрд░реЛрд╕реЗрд╕рд┐рдВрдЧ рд╡рд┐рдзрд┐рдпреЛрдВ рдХреЗ рдмреАрдЪ рдкрддреНрд░рд╛рдЪрд╛рд░ рддрд╛рд▓рд┐рдХрд╛
  13. рдирд┐рд╖реНрдХрд░реНрд╖
  14. рдЖрдк рдХрд┐рд╕ рдкреИрдХреЗрдЬ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ, рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдПрдХ рд╕рдВрдХреНрд╖рд┐рдкреНрдд рд╕рд░реНрд╡реЗрдХреНрд╖рдг

рдпрджрд┐ рдЖрдк рдбреЗрдЯрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдореЗрдВ рд░реБрдЪрд┐ рд░рдЦрддреЗ рд╣реИрдВ, рддреЛ рдЖрдк рдореЗрд░рд╛ рдкрддрд╛ рд▓рдЧрд╛ рд╕рдХрддреЗ рд╣реИрдВ рддрд╛рд░ ╨╕ рдпреВрдЯреНрдпреВрдм рдЪреИрдирд▓. рдЕрдзрд┐рдХрд╛рдВрд╢ рд╕рд╛рдордЧреНрд░реА рдЖрд░ рднрд╛рд╖рд╛ рдХреЛ рд╕рдорд░реНрдкрд┐рдд рд╣реИред

рдЖрд░ рдФрд░ рдкрд╛рдпрдерди рдХреЗ рдмреАрдЪ рдореБрдЦреНрдп рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рдЕрдВрддрд░

рдЖрдкрдХреЗ рд▓рд┐рдП Python рд╕реЗ R рдпрд╛ рдЗрд╕рдХреЗ рд╡рд┐рдкрд░реАрдд рд╕реНрд╡рд┐рдЪ рдХрд░рдирд╛ рдЖрд╕рд╛рди рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рдореИрдВ рдХреБрдЫ рдореБрдЦреНрдп рдмрд┐рдВрджреБ рджреВрдВрдЧрд╛ рдЬрд┐рди рдкрд░ рдЖрдкрдХреЛ рдзреНрдпрд╛рди рджреЗрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред

рдкреИрдХреЗрдЬ рдлрд╝рдВрдХреНрд╢рдВрд╕ рддрдХ рдкрд╣реБрдБрдЪрдирд╛

рдПрдХ рдмрд╛рд░ рдкреИрдХреЗрдЬ рдХреЛ рдЖрд░ рдореЗрдВ рд▓реЛрдб рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рдЖрдкрдХреЛ рдЗрд╕рдХреЗ рдХрд╛рд░реНрдпреЛрдВ рддрдХ рдкрд╣реБрдВрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рдкреИрдХреЗрдЬ рдХрд╛ рдирд╛рдо рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред рдЕрдзрд┐рдХрд╛рдВрд╢ рдорд╛рдорд▓реЛрдВ рдореЗрдВ рдпрд╣ рдЖрд░ рдореЗрдВ рд╕рд╛рдорд╛рдиреНрдп рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рд╕реНрд╡реАрдХрд╛рд░реНрдп рд╣реИред рдпрджрд┐ рдЖрдкрдХреЛ рдЕрдкрдиреЗ рдХреЛрдб рдореЗрдВ рдЗрд╕рдХреЗ рдХрд┐рд╕реА рдлрд╝рдВрдХреНрд╢рди рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рддреЛ рдЖрдкрдХреЛ рдХрд┐рд╕реА рдкреИрдХреЗрдЬ рдХреЛ рдЖрдпрд╛рдд рдХрд░рдиреЗ рдХреА рдЬрд╝рд░реВрд░рдд рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдмрд╕ рдкреИрдХреЗрдЬ рдХрд╛ рдирд╛рдо рдФрд░ рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдирд╛рдо рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдХреЗ рдЗрд╕реЗ рдХреЙрд▓ рдХрд░реЗрдВред R рдореЗрдВ рдкреИрдХреЗрдЬ рдФрд░ рдлрд╝рдВрдХреНрд╢рди рдирд╛рдореЛрдВ рдХреЗ рдмреАрдЪ рд╡рд┐рднрд╛рдЬрдХ рдПрдХ рдбрдмрд▓ рдХреЛрд▓рди рд╣реИред package_name::function_name().

рдЗрд╕рдХреЗ рд╡рд┐рдкрд░реАрдд, рдкрд╛рдпрдерди рдореЗрдВ, рдХрд┐рд╕реА рдкреИрдХреЗрдЬ рдХреЗ рдирд╛рдо рдХреЛ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдХреЗ рдЙрд╕рдХреЗ рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рдХреЙрд▓ рдХрд░рдирд╛ рдХреНрд▓рд╛рд╕рд┐рдХ рдорд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИред рдЬрдм рдХреЛрдИ рдкреИрдХреЗрдЬ рдбрд╛рдЙрдирд▓реЛрдб рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдЙрд╕реЗ рдЖрдорддреМрд░ рдкрд░ рдПрдХ рдЫреЛрдЯрд╛ рдирд╛рдо рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдПред pandas рдЖрдорддреМрд░ рдкрд░ рдЫрджреНрдо рдирд╛рдо рдХрд╛ рдкреНрд░рдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ pd. рдПрдХ рдкреИрдХреЗрдЬ рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдПрдХ рдмрд┐рдВрджреБ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдПрдХреНрд╕реЗрд╕ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ package_name.function_name().

рдХрд╛рд░реНрдпрднрд╛рд░

рдЖрд░ рдореЗрдВ, рдХрд┐рд╕реА рд╡рд╕реНрддреБ рдХреЛ рдорд╛рди рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рддреАрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЖрдо рдмрд╛рдд рд╣реИред obj_name <- value, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдПрдХрд▓ рдмрд░рд╛рдмрд░ рдЪрд┐рд╣реНрди рдХреА рдЕрдиреБрдорддрд┐ рд╣реИ, рдЖрд░ рдореЗрдВ рдПрдХрд▓ рдмрд░рд╛рдмрд░ рдЪрд┐рд╣реНрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдореБрдЦреНрдп рд░реВрдк рд╕реЗ рдлрд╝рдВрдХреНрд╢рди рддрд░реНрдХреЛрдВ рдореЗрдВ рдорд╛рди рдкрд╛рд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

рдкрд╛рдпрдерди рдореЗрдВ, рдЕрд╕рд╛рдЗрдирдореЗрдВрдЯ рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдПрдХрд▓ рдмрд░рд╛рдмрд░ рдЪрд┐рд╣реНрди рдХреЗ рд╕рд╛рде рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ obj_name = value.

рдЕрдиреБрдХреНрд░рдордг

рдпрд╣рд╛рдВ рднреА рдХрд╛рдлреА рдорд╣рддреНрд╡рдкреВрд░реНрдг рдЕрдВрддрд░ рд╣реИрдВред рдЖрд░ рдореЗрдВ, рдЕрдиреБрдХреНрд░рдордг рдПрдХ рд╕реЗ рд╢реБрд░реВ рд╣реЛрддрд╛ рд╣реИ рдФрд░ рдкрд░рд┐рдгрд╛рдореА рд╕реАрдорд╛ рдореЗрдВ рд╕рднреА рдирд┐рд░реНрджрд┐рд╖реНрдЯ рддрддреНрд╡реЛрдВ рдХреЛ рд╢рд╛рдорд┐рд▓ рдХрд░рддрд╛ рд╣реИ,

рдкрд╛рдпрдерди рдореЗрдВ, рдЕрдиреБрдХреНрд░рдордг рд╢реВрдиреНрдп рд╕реЗ рд╢реБрд░реВ рд╣реЛрддрд╛ рд╣реИ рдФрд░ рдЪрдпрдирд┐рдд рд╢реНрд░реЗрдгреА рдореЗрдВ рдЕрдиреБрдХреНрд░рдордг рдореЗрдВ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдЕрдВрддрд┐рдо рддрддреНрд╡ рд╢рд╛рдорд┐рд▓ рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИред рддреЛ рдбрд┐рдЬрд╝рд╛рдЗрди рдХрд░реЗрдВ x[i:j] рдкрд╛рдпрдерди рдореЗрдВ j рддрддреНрд╡ рд╢рд╛рдорд┐рд▓ рдирд╣реАрдВ рд╣реЛрдЧрд╛ред

рдЖрд░ рдиреЛрдЯреЗрд╢рди рдореЗрдВ рдирдХрд╛рд░рд╛рддреНрдордХ рдЕрдиреБрдХреНрд░рдордг рдореЗрдВ рднреА рдЕрдВрддрд░ рд╣реИрдВ x[-1] рдЕрдВрддрд┐рдо рддрддреНрд╡ рдХреЛ рдЫреЛрдбрд╝рдХрд░ рд╡реЗрдХреНрдЯрд░ рдХреЗ рд╕рднреА рддрддреНрд╡ рд▓реМрдЯрд╛ рджреЗрдЧрд╛ред рдкрд╛рдпрдерди рдореЗрдВ, рдПрдХ рд╕рдорд╛рди рдиреЛрдЯреЗрд╢рди рдХреЗрд╡рд▓ рдЕрдВрддрд┐рдо рддрддреНрд╡ рд▓реМрдЯрд╛рдПрдЧрд╛ред

рддрд░реАрдХреЗ рдФрд░ OOP

рдЖрд░ рдУрдУрдкреА рдХреЛ рдЕрдкрдиреЗ рддрд░реАрдХреЗ рд╕реЗ рд▓рд╛рдЧреВ рдХрд░рддрд╛ рд╣реИ, рдореИрдВрдиреЗ рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд▓реЗрдЦ рдореЗрдВ рд▓рд┐рдЦрд╛ рд╣реИ "рдЖрд░ рднрд╛рд╖рд╛ рдореЗрдВ рдУрдУрдкреА (рднрд╛рдЧ 1): рдПрд╕3 рдХрдХреНрд╖рд╛рдПрдВ". рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, рдЖрд░ рдПрдХ рдХрд╛рд░реНрдпрд╛рддреНрдордХ рднрд╛рд╖рд╛ рд╣реИ, рдФрд░ рдЗрд╕рдореЗрдВ рд╕рдм рдХреБрдЫ рдлрд╝рдВрдХреНрд╢рди рдкрд░ рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рд╣реИред рдЗрд╕рд▓рд┐рдП, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдПрдХреНрд╕реЗрд▓ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рд▓рд┐рдП, рдкрд░ рдЬрд╛рдПрдБ tydiverse рдпрд╣ рдЗрд╕рд╕реЗ рднреА рдЖрд╕рд╛рди рд╣реЛрдЧрд╛ pandas. рд╣рд╛рд▓рд╛рдБрдХрд┐ рдпреЗ рдореЗрд░реА рд╡реНрдпрдХреНрддрд┐рдкрд░рдХ рд░рд╛рдп рд╣реЛ рд╕рдХрддреА рд╣реИ.

рд╕рдВрдХреНрд╖реЗрдк рдореЗрдВ, рдЖрд░ рдореЗрдВ рд╡рд╕реНрддреБрдУрдВ рдореЗрдВ рд╡рд┐рдзрд┐рдпрд╛рдБ рдирд╣реАрдВ рд╣реИрдВ (рдпрджрд┐ рд╣рдо рдПрд╕3 рдХрдХреНрд╖рд╛рдУрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░рддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЕрдиреНрдп рдУрдУрдкреА рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рднреА рд╣реИрдВ рдЬреЛ рдмрд╣реБрдд рдХрдо рдЖрдо рд╣реИрдВ)ред рдХреЗрд╡рд▓ рд╕рд╛рдорд╛рдиреНрдпреАрдХреГрдд рдлрд╝рдВрдХреНрд╢рди рд╣реЛрддреЗ рд╣реИрдВ рдЬреЛ рдСрдмреНрдЬреЗрдХреНрдЯ рдХреА рд╢реНрд░реЗрдгреА рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдЙрдиреНрд╣реЗрдВ рдЕрд▓рдЧ-рдЕрд▓рдЧ рддрд░реАрдХреЗ рд╕реЗ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░рддреЗ рд╣реИрдВред

рдкрд╛рдЗрдкрд▓рд╛рдЗрдиреЛрдВ

рд╢рд╛рдпрдж рдЗрд╕реА рдХрд╛ рдирд╛рдо рд╣реИ pandas рдпрд╣ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╕рд╣реА рдирд╣реАрдВ рд╣реЛрдЧрд╛, рд▓реЗрдХрд┐рди рдореИрдВ рдЗрд╕рдХрд╛ рдЕрд░реНрде рд╕рдордЭрд╛рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░реВрдВрдЧрд╛ред

рдордзреНрдпрд╡рд░реНрддреА рдЧрдгрдирд╛рдУрдВ рдХреЛ рд╕рд╣реЗрдЬрдиреЗ рдФрд░ рдХрд╛рд░реНрдп рд╡рд╛рддрд╛рд╡рд░рдг рдореЗрдВ рдЕрдирд╛рд╡рд╢реНрдпрдХ рд╡рд╕реНрддреБрдУрдВ рдХреЛ рдЙрддреНрдкрдиреНрди рди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдк рдПрдХ рдкреНрд░рдХрд╛рд░ рдХреА рдкрд╛рдЗрдкрд▓рд╛рдЗрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рд╡реЗред рдЧрдгрдирд╛ рдХреЗ рдкрд░рд┐рдгрд╛рдо рдХреЛ рдПрдХ рдлрд╝рдВрдХреНрд╢рди рд╕реЗ рджреВрд╕рд░реЗ рдлрд╝рдВрдХреНрд╢рди рдореЗрдВ рдкрд╛рд╕ рдХрд░реЗрдВ, рдФрд░ рдордзреНрдпрд╡рд░реНрддреА рдкрд░рд┐рдгрд╛рдореЛрдВ рдХреЛ рд╕рд╣реЗрдЬреЗрдВ рдирд╣реАрдВред

рдЖрдЗрдП рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХреЛрдб рдЙрджрд╛рд╣рд░рдг рд▓реЗрдВ, рдЬрд╣рд╛рдВ рд╣рдо рдордзреНрдпрд╡рд░реНрддреА рдЧрдгрдирд╛рдУрдВ рдХреЛ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдСрдмреНрдЬреЗрдХреНрдЯ рдореЗрдВ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рддреЗ рд╣реИрдВ:

temp_object <- func1()
temp_object2 <- func2(temp_object )
obj <- func3(temp_object2 )

рд╣рдордиреЗ рдХреНрд░рдорд┐рдХ рд░реВрдк рд╕реЗ 3 рдСрдкрд░реЗрд╢рди рдХрд┐рдП рдФрд░ рдкреНрд░рддреНрдпреЗрдХ рдХрд╛ рдкрд░рд┐рдгрд╛рдо рдПрдХ рдЕрд▓рдЧ рдСрдмреНрдЬреЗрдХреНрдЯ рдореЗрдВ рд╕рд╣реЗрдЬрд╛ рдЧрдпрд╛ред рд▓реЗрдХрд┐рди рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рд╣рдореЗрдВ рдЗрди рдордзреНрдпрд╡рд░реНрддреА рд╡рд╕реНрддреБрдУрдВ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред

рдпрд╛ рдЗрд╕рд╕реЗ рднреА рдмрджрддрд░, рд▓реЗрдХрд┐рди рдПрдХреНрд╕реЗрд▓ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдЕрдзрд┐рдХ рдкрд░рд┐рдЪрд┐рддред

obj  <- func3(func2(func1()))

рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, рд╣рдордиреЗ рдордзреНрдпрд╡рд░реНрддреА рдЧрдгрдирд╛ рдкрд░рд┐рдгрд╛рдореЛрдВ рдХреЛ рд╕рд╣реЗрдЬрд╛ рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдиреЗрд╕реНрдЯреЗрдб рдлрд╝рдВрдХреНрд╢рдВрд╕ рдХреЗ рд╕рд╛рде рдХреЛрдб рдкрдврд╝рдирд╛ рдмреЗрд╣рдж рдЕрд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╣реИред

рд╣рдо рдЖрд░ рдореЗрдВ рдбреЗрдЯрд╛ рдкреНрд░реЛрд╕реЗрд╕рд┐рдВрдЧ рдХреЗ рдХрдИ рддрд░реАрдХреЛрдВ рдкрд░ рдЧреМрд░ рдХрд░реЗрдВрдЧреЗ, рдФрд░ рд╡реЗ рдЕрд▓рдЧ-рдЕрд▓рдЧ рддрд░реАрдХреЛрдВ рд╕реЗ рд╕рдорд╛рди рдСрдкрд░реЗрд╢рди рдХрд░рддреЗ рд╣реИрдВред

рдкреБрд╕реНрддрдХрд╛рд▓рдп рдореЗрдВ рдкрд╛рдЗрдкрд▓рд╛рдЗрди tidyverse рдСрдкрд░реЗрдЯрд░ рджреНрд╡рд╛рд░рд╛ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ %>%.

obj <- func1() %>% 
            func2() %>%
            func3()

рдЗрд╕ рдкреНрд░рдХрд╛рд░ рд╣рдо рдХрд╛рд░реНрдп рдХрд╛ рдкрд░рд┐рдгрд╛рдо рд▓реЗрддреЗ рд╣реИрдВ func1() рдФрд░ рдЗрд╕реЗ рдкрд╣рд▓реЗ рддрд░реНрдХ рдХреЗ рд░реВрдк рдореЗрдВ рдкрд╛рд╕ рдХрд░реЗрдВ func2(), рддреЛ рд╣рдо рдЗрд╕ рдЧрдгрдирд╛ рдХреЗ рдкрд░рд┐рдгрд╛рдо рдХреЛ рдкрд╣рд▓реЗ рддрд░реНрдХ рдХреЗ рд░реВрдк рдореЗрдВ рдкрд╛рд╕ рдХрд░рддреЗ рд╣реИрдВ func3(). рдФрд░ рдЕрдВрдд рдореЗрдВ, рд╣рдо рдСрдмреНрдЬреЗрдХреНрдЯ рдореЗрдВ рдХреА рдЧрдИ рд╕рднреА рдЧрдгрдирд╛рдПрдБ рд▓рд┐рдЦрддреЗ рд╣реИрдВ obj <-.

рдЙрдкрд░реЛрдХреНрдд рд╕рднреА рдХреЛ рдЗрд╕ рдореАрдо рдореЗрдВ рд╢рдмреНрджреЛрдВ рд╕реЗ рдмреЗрд╣рддрд░ рджрд░реНрд╢рд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ:
рдбреЗрдЯрд╛ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреМрди рд╕реА рднрд╛рд╖рд╛ рдЪреБрдиреЗрдВ - рдЖрд░ рдпрд╛ рдкрд╛рдпрдерди? рджреЛрдиреЛрдВ! рдкрд╛рдВрдбрд╛ рд╕реЗ рдЯрд┐рдбреАрд╡рд░реНрд╕ рдФрд░ рдбреЗрдЯрд╛.рдЯреЗрдмрд▓ рдФрд░ рд╡рд╛рдкрд╕ рдХреА рдУрд░ рдкрд▓рд╛рдпрди

╨Т data.table рдЬрдВрдЬреАрд░реЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдЗрд╕реА рдкреНрд░рдХрд╛рд░ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

newDT <- DT[where, select|update|do, by][where, select|update|do, by][where, select|update|do, by]

рдкреНрд░рддреНрдпреЗрдХ рд╡рд░реНрдЧрд╛рдХрд╛рд░ рдХреЛрд╖реНрдардХ рдореЗрдВ рдЖрдк рдкрд┐рдЫрд▓реЗ рдСрдкрд░реЗрд╢рди рдХреЗ рдкрд░рд┐рдгрд╛рдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

╨Т pandas рдРрд╕реЗ рдСрдкрд░реЗрд╢рдиреЛрдВ рдХреЛ рдПрдХ рдмрд┐рдВрджреБ рджреНрд╡рд╛рд░рд╛ рдЕрд▓рдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

obj = df.fun1().fun2().fun3()

рд╡реЗред рд╣рдо рдЕрдкрдиреА рдореЗрдЬ рд▓реЗрддреЗ рд╣реИрдВ df рдФрд░ рдЙрд╕рдХреА рд╡рд┐рдзрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ fun1(), рдлрд┐рд░ рд╣рдо рдкреНрд░рд╛рдкреНрдд рдкрд░рд┐рдгрд╛рдо рдкрд░ рд╡рд┐рдзрд┐ рд▓рд╛рдЧреВ рдХрд░рддреЗ рд╣реИрдВ fun2()рдХреЗ рдмрд╛рдж fun3(). рдкрд░рд┐рдгрд╛рдореА рдкрд░рд┐рдгрд╛рдо рдХрд┐рд╕реА рдСрдмреНрдЬреЗрдХреНрдЯ рдореЗрдВ рд╕рд╣реЗрдЬрд╛ рдЬрд╛рддрд╛ рд╣реИ obj .

рдбреЗрдЯрд╛ рд╕рдВрд░рдЪрдирд╛рдПрдВ

рдЖрд░ рдФрд░ рдкрд╛рдпрдерди рдореЗрдВ рдбреЗрдЯрд╛ рд╕рдВрд░рдЪрдирд╛рдПрдВ рд╕рдорд╛рди рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЙрдирдХреЗ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдирд╛рдо рд╣реИрдВред

рд╡рд┐рд╡рд░рдг
рдЖрд░ рдореЗрдВ рдирд╛рдо
рдкрд╛рдпрдерди/рдкрд╛рдВрдбрд╛ рдореЗрдВ рдирд╛рдо

рдЯреЗрдмрд▓ рд╕рдВрд░рдЪрдирд╛
рдбреЗрдЯрд╛.рдлрд╝реНрд░реЗрдо, рдбреЗрдЯрд╛.рдЯреЗрдмрд▓, рдЯрд┐рдмрд▓
рдбреЗрдЯрд╛ рдврд╛рдВрдЪрд╛

рдореВрд▓реНрдпреЛрдВ рдХреА рдПрдХ-рдЖрдпрд╛рдореА рд╕реВрдЪреА
рд╡реЗрдХреНрдЯрд░
рдкрд╛рдВрдбрд╛ рдореЗрдВ рд╢реНрд░реГрдВрдЦрд▓рд╛ рдпрд╛ рд╢реБрджреНрдз рдкрд╛рдпрдерди рдореЗрдВ рд╕реВрдЪреА

рдмрд╣реБ-рд╕реНрддрд░реАрдп рдЧреИрд░-рд╕рд╛рд░рдгреАрдмрджреНрдз рд╕рдВрд░рдЪрдирд╛
рд╕реВрдЪреА
рд╢рдмреНрджрдХреЛрд╢ (рддрд╛рдирд╛рд╢рд╛рд╣реА)

рд╣рдо рдиреАрдЪреЗ рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рдореЗрдВ рдХреБрдЫ рдЕрдиреНрдп рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдФрд░ рдЕрдВрддрд░реЛрдВ рдХреЛ рджреЗрдЦреЗрдВрдЧреЗред

рд╣рдорд╛рд░реЗ рджреНрд╡рд╛рд░рд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рдкреИрдХреЗрдЬреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреБрдЫ рд╢рдмреНрдж

рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рдореИрдВ рдЖрдкрдХреЛ рдЙрди рдкреИрдХреЗрдЬреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдереЛрдбрд╝рд╛ рдмрддрд╛рдКрдВрдЧрд╛ рдЬрд┐рдирд╕реЗ рдЖрдк рдЗрд╕ рд▓реЗрдЦ рдХреЗ рджреМрд░рд╛рди рдкрд░рд┐рдЪрд┐рдд рд╣реЛрдВрдЧреЗред

рд╕рд╛рдл рд╕реБрдерд░рд╛

рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рд╡реЗрдмрд╕рд╛рдЗрдЯ: tidyvers.org
рдбреЗрдЯрд╛ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреМрди рд╕реА рднрд╛рд╖рд╛ рдЪреБрдиреЗрдВ - рдЖрд░ рдпрд╛ рдкрд╛рдпрдерди? рджреЛрдиреЛрдВ! рдкрд╛рдВрдбрд╛ рд╕реЗ рдЯрд┐рдбреАрд╡рд░реНрд╕ рдФрд░ рдбреЗрдЯрд╛.рдЯреЗрдмрд▓ рдФрд░ рд╡рд╛рдкрд╕ рдХреА рдУрд░ рдкрд▓рд╛рдпрди
рдкреБрд╕реНрддрдХрд╛рд▓рдп tidyverse рдЖрд░рд╕реНрдЯреВрдбрд┐рдпреЛ рдХреЗ рд╡рд░рд┐рд╖реНрда рд╢реЛрдз рд╡реИрдЬреНрдЮрд╛рдирд┐рдХ рд╣реЗрдбрд▓реА рд╡рд┐рдХрдо рджреНрд╡рд╛рд░рд╛ рд▓рд┐рдЦрд┐рддред tidyverse рдЗрд╕рдореЗрдВ рдкреИрдХреЗрдЬреЛрдВ рдХрд╛ рдПрдХ рдкреНрд░рднрд╛рд╡рд╢рд╛рд▓реА рд╕реЗрдЯ рд╢рд╛рдорд┐рд▓ рд╣реИ рдЬреЛ рдбреЗрдЯрд╛ рдкреНрд░реЛрд╕реЗрд╕рд┐рдВрдЧ рдХреЛ рд╕рд░рд▓ рдмрдирд╛рддрд╛ рд╣реИ, рдЬрд┐рдирдореЗрдВ рд╕реЗ 5 CRAN рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рд╕реЗ рд╢реАрд░реНрд╖ 10 рдбрд╛рдЙрдирд▓реЛрдб рдореЗрдВ рд╢рд╛рдорд┐рд▓ рд╣реИрдВред

рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХреЗ рдореВрд▓ рдореЗрдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдкреИрдХреЗрдЬ рд╢рд╛рдорд┐рд▓ рд╣реИрдВ: ggplot2, dplyr, tidyr, readr, purrr, tibble, stringr, forcats. рдЗрдирдореЗрдВ рд╕реЗ рдкреНрд░рддреНрдпреЗрдХ рдкреИрдХреЗрдЬ рдХрд╛ рдЙрджреНрджреЗрд╢реНрдп рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╕рдорд╛рдзрд╛рди рдХрд░рдирд╛ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП dplyr рдбреЗрдЯрд╛ рд╣реЗрд░рдлреЗрд░ рдХреЗ рд▓рд┐рдП рдмрдирд╛рдпрд╛ рдЧрдпрд╛, tidyr рдбреЗрдЯрд╛ рдХреЛ рд╕реБрд╡реНрдпрд╡рд╕реНрдерд┐рдд рд░реВрдк рдореЗрдВ рд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП, stringr рд╕реНрдЯреНрд░рд┐рдВрдЧреНрд╕ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдирд╛ рд╕рд░рд▓ рдмрдирд╛рддрд╛ рд╣реИ, рдФрд░ ggplot2 рд╕рдмрд╕реЗ рд▓реЛрдХрдкреНрд░рд┐рдп рдбреЗрдЯрд╛ рд╡рд┐рдЬрд╝реБрдЕрд▓рд╛рдЗрдЬрд╝реЗрд╢рди рдЯреВрд▓ рдореЗрдВ рд╕реЗ рдПрдХ рд╣реИред

рд▓рд╛рдн tidyverse рд╕рд░рд▓рддрд╛ рдФрд░ рдкрдврд╝рдиреЗ рдореЗрдВ рдЖрд╕рд╛рди рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рд╣реИ, рдЬреЛ рдХрдИ рдорд╛рдпрдиреЛрдВ рдореЗрдВ SQL рдХреНрд╡реЗрд░реА рднрд╛рд╖рд╛ рдХреЗ рд╕рдорд╛рди рд╣реИред

рдбреЗрдЯрд╛ рддрд╛рд▓рд┐рдХрд╛

рдбреЗрдЯрд╛ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреМрди рд╕реА рднрд╛рд╖рд╛ рдЪреБрдиреЗрдВ - рдЖрд░ рдпрд╛ рдкрд╛рдпрдерди? рджреЛрдиреЛрдВ! рдкрд╛рдВрдбрд╛ рд╕реЗ рдЯрд┐рдбреАрд╡рд░реНрд╕ рдФрд░ рдбреЗрдЯрд╛.рдЯреЗрдмрд▓ рдФрд░ рд╡рд╛рдкрд╕ рдХреА рдУрд░ рдкрд▓рд╛рдпрдирдЖрдзрд┐рдХрд╛рд░рд┐рдХ рд╡реЗрдмрд╕рд╛рдЗрдЯ: r-datatable.com

рд▓реЗрдЦрдХ рджреНрд╡рд╛рд░рд╛ data.table H2O.ai рдХреЗ рдореИрдЯ рдбреЛрд▓ рд╣реИрдВред

рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХрд╛ рдкрд╣рд▓рд╛ рд╡рд┐рдореЛрдЪрди 2006 рдореЗрдВ рд╣реБрдЖред

рдкреИрдХреЗрдЬ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдЙрддрдирд╛ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рдирд╣реАрдВ рд╣реИ рдЬрд┐рддрдирд╛ рдХрд┐ tidyverse рдФрд░ рдЖрд░ рдореЗрдВ рдХреНрд▓рд╛рд╕рд┐рдХ рдбреЗрдЯрд╛рдлреНрд░реЗрдо рдХреА рдЕрдзрд┐рдХ рдпрд╛рдж рджрд┐рд▓рд╛рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рд╕рд╛рде рд╣реА рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдореЗрдВ рдХрд╛рдлреА рд╡рд┐рд╕реНрддрд╛рд░ рд╣реБрдЖ рд╣реИред

рдЗрд╕ рдкреИрдХреЗрдЬ рдореЗрдВ рддрд╛рд▓рд┐рдХрд╛ рдХреЗ рд╕рд╛рде рд╕рднреА рдЬреЛрдбрд╝-рддреЛрдбрд╝ рд╡рд░реНрдЧрд╛рдХрд╛рд░ рдХреЛрд╖реНрдардХ рдореЗрдВ рд╡рд░реНрдгрд┐рдд рд╣реИрдВ, рдФрд░ рдпрджрд┐ рдЖрдк рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рдХрд╛ рдЕрдиреБрд╡рд╛рдж рдХрд░рддреЗ рд╣реИрдВ data.table SQL рдореЗрдВ, рдЖрдкрдХреЛ рдХреБрдЫ рдЗрд╕ рддрд░рд╣ рдорд┐рд▓рддрд╛ рд╣реИ: data.table[ WHERE, SELECT, GROUP BY ]

рдЗрд╕ рдкреИрдХреЗрдЬ рдХреА рддрд╛рдХрдд рдмрдбрд╝реА рдорд╛рддреНрд░рд╛ рдореЗрдВ рдбреЗрдЯрд╛ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░рдиреЗ рдХреА рдЧрддрд┐ рд╣реИред

рдкрд╛рдВрдбрд╛

рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рд╡реЗрдмрд╕рд╛рдЗрдЯ: рдкрд╛рдВрдбрд╛.pydata.org рдбреЗрдЯрд╛ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреМрди рд╕реА рднрд╛рд╖рд╛ рдЪреБрдиреЗрдВ - рдЖрд░ рдпрд╛ рдкрд╛рдпрдерди? рджреЛрдиреЛрдВ! рдкрд╛рдВрдбрд╛ рд╕реЗ рдЯрд┐рдбреАрд╡рд░реНрд╕ рдФрд░ рдбреЗрдЯрд╛.рдЯреЗрдмрд▓ рдФрд░ рд╡рд╛рдкрд╕ рдХреА рдУрд░ рдкрд▓рд╛рдпрди

рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХрд╛ рдирд╛рдо рдЕрд░реНрдердорд┐рддреАрдп рд╢рдмреНрдж "рдкреИрдирд▓ рдбреЗрдЯрд╛" рд╕реЗ рдЖрдпрд╛ рд╣реИ, рдЬрд┐рд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рд╕реВрдЪрдирд╛ рдХреЗ рдмрд╣реБрдЖрдпрд╛рдореА рд╕рдВрд░рдЪрд┐рдд рд╕реЗрдЯ рдХрд╛ рд╡рд░реНрдгрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

рд▓реЗрдЦрдХ рджреНрд╡рд╛рд░рд╛ pandas рдЕрдореЗрд░рд┐рдХреА рд╡реЗрд╕ рдореИрдХрд┐рдиреА рд╣реИрдВред

рдЬрдм рдкрд╛рдпрдерди рдореЗрдВ рдбреЗрдЯрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХреА рдмрд╛рдд рдЖрддреА рд╣реИ, рддреЛ рдмрд░рд╛рдмрд░ pandas рдирд╣реАрдВред рдПрдХ рдмрд╣реБрдд рд╣реА рдмрд╣реБрдХреНрд░рд┐рдпрд╛рд╢реАрд▓, рдЙрдЪреНрдЪ-рд╕реНрддрд░реАрдп рдкреИрдХреЗрдЬ рдЬреЛ рдЖрдкрдХреЛ рдХрд┐рд╕реА рднреА рд╕реНрд░реЛрдд рд╕реЗ рдбреЗрдЯрд╛ рд▓реЛрдб рдХрд░рдиреЗ рд╕реЗ рд▓реЗрдХрд░ рдЙрд╕реЗ рд╡рд┐рдЬрд╝реБрдЕрд▓рд╛рдЗрдЬрд╝ рдХрд░рдиреЗ рддрдХ, рдбреЗрдЯрд╛ рдХреЗ рд╕рд╛рде рдХреЛрдИ рднреА рд╣реЗрд░рдлреЗрд░ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред

рдЕрддрд┐рд░рд┐рдХреНрдд рдкреИрдХреЗрдЬ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдирд╛

рдЗрд╕ рдЖрд▓реЗрдЦ рдореЗрдВ рдЪрд░реНрдЪрд╛ рдХрд┐рдП рдЧрдП рдкреИрдХреЗрдЬ рдореВрд▓ рдЖрд░ рдФрд░ рдкрд╛рдпрдерди рд╡рд┐рддрд░рдг рдореЗрдВ рд╢рд╛рдорд┐рд▓ рдирд╣реАрдВ рд╣реИрдВред рд╣рд╛рд▓рд╛рдБрдХрд┐ рдПрдХ рдЫреЛрдЯреА рд╕реА рдЪреЗрддрд╛рд╡рдиреА рд╣реИ, рдпрджрд┐ рдЖрдкрдиреЗ рдПрдирд╛рдХреЛрдВрдбрд╛ рд╡рд┐рддрд░рдг рд╕реНрдерд╛рдкрд┐рдд рдХрд┐рдпрд╛ рд╣реИ, рддреЛ рдЕрддрд┐рд░рд┐рдХреНрдд рд░реВрдк рд╕реЗ рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВ pandas рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред

рдЖрд░ рдореЗрдВ рдкреИрдХреЗрдЬ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдирд╛

рдпрджрд┐ рдЖрдкрдиреЗ рдХрдо рд╕реЗ рдХрдо рдПрдХ рдмрд╛рд░ RStudio рд╡рд┐рдХрд╛рд╕ рд╡рд╛рддрд╛рд╡рд░рдг рдЦреЛрд▓рд╛ рд╣реИ, рддреЛ рдЖрдк рд╢рд╛рдпрдж рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЬрд╛рдирддреЗ рд╣реИрдВ рдХрд┐ R рдореЗрдВ рдЖрд╡рд╢реНрдпрдХ рдкреИрдХреЗрдЬ рдХреИрд╕реЗ рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВред рдкреИрдХреЗрдЬ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдорд╛рдирдХ рдХрдорд╛рдВрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ install.packages() рдЗрд╕реЗ рд╕реАрдзреЗ рдЖрд░ рдореЗрдВ рд╣реА рдЪрд▓рд╛рдХрд░ред

# ╤Г╤Б╤В╨░╨╜╨╛╨▓╨║╨░ ╨┐╨░╨║╨╡╤В╨╛╨▓
install.packages("vroom")
install.packages("readr")
install.packages("dplyr")
install.packages("data.table")

рдЗрдВрд╕реНрдЯрд╛рд▓реЗрд╢рди рдХреЗ рдмрд╛рдж, рдкреИрдХреЗрдЬреЛрдВ рдХреЛ рдХрдиреЗрдХреНрдЯ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ, рдЬрд┐рд╕рдХреЗ рд▓рд┐рдП рдЬреНрдпрд╛рджрд╛рддрд░ рдорд╛рдорд▓реЛрдВ рдореЗрдВ рдХрдорд╛рдВрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ library().

# ╨┐╨╛╨┤╨║╨╗╤О╤З╨╡╨╜╨╕╨╡ ╨╕╨╗╨╕ ╨╕╨╝╨┐╨╛╤А╤В ╨┐╨░╨║╨╡╤В╨╛╨▓ ╨▓ ╤А╨░╨▒╨╛╤З╨╡╨╡ ╨╛╨║╤А╤Г╨╢╨╡╨╜╨╕╨╡
library(vroom)
library(readr)
library(dplyr)
library(data.table)

рдкрд╛рдпрдерди рдореЗрдВ рдкреИрдХреЗрдЬ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдирд╛

рддреЛ, рдпрджрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рд╢реБрджреНрдз рдкрд╛рдпрдерди рд╕реНрдерд╛рдкрд┐рдд рд╣реИ, рддреЛ pandas рдЖрдкрдХреЛ рдЗрд╕реЗ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рдЗрдВрд╕реНрдЯреЙрд▓ рдХрд░рдирд╛ рд╣реЛрдЧрд╛. рдЕрдкрдиреЗ рдСрдкрд░реЗрдЯрд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдо рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдПрдХ рдХрдорд╛рдВрдб рд▓рд╛рдЗрди рдпрд╛ рдЯрд░реНрдорд┐рдирд▓ рдЦреЛрд▓реЗрдВ рдФрд░ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХрдорд╛рдВрдб рджрд░реНрдЬ рдХрд░реЗрдВред

pip install pandas

рдлрд┐рд░ рд╣рдо рдкрд╛рдпрдерди рдкрд░ рд▓реМрдЯрддреЗ рд╣реИрдВ рдФрд░ рдХрдорд╛рдВрдб рдХреЗ рд╕рд╛рде рд╕реНрдерд╛рдкрд┐рдд рдкреИрдХреЗрдЬ рдХреЛ рдЖрдпрд╛рдд рдХрд░рддреЗ рд╣реИрдВ import.

import pandas as pd

рдбреЗрдЯрд╛ рд▓реЛрдб рд╣реЛ рд░рд╣рд╛ рд╣реИ

рдбреЗрдЯрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдореЗрдВ рдбреЗрдЯрд╛ рдорд╛рдЗрдирд┐рдВрдЧ рд╕рдмрд╕реЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдЪрд░рдгреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рд╣реИред рдпрджрд┐ рд╡рд╛рдВрдЫрд┐рдд рд╣реЛ, рддреЛ рдкрд╛рдпрдерди рдФрд░ рдЖрд░ рджреЛрдиреЛрдВ рдЖрдкрдХреЛ рдХрд┐рд╕реА рднреА рд╕реНрд░реЛрдд рд╕реЗ рдбреЗрдЯрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд╡реНрдпрд╛рдкрдХ рдЕрд╡рд╕рд░ рдкреНрд░рджрд╛рди рдХрд░рддреЗ рд╣реИрдВ: рд╕реНрдерд╛рдиреАрдп рдлрд╝рд╛рдЗрд▓реЗрдВ, рдЗрдВрдЯрд░рдиреЗрдЯ рд╕реЗ рдлрд╝рд╛рдЗрд▓реЗрдВ, рд╡реЗрдмрд╕рд╛рдЗрдЯреЗрдВ, рд╕рднреА рдкреНрд░рдХрд╛рд░ рдХреЗ рдбреЗрдЯрд╛рдмреЗрд╕ред

рдбреЗрдЯрд╛ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреМрди рд╕реА рднрд╛рд╖рд╛ рдЪреБрдиреЗрдВ - рдЖрд░ рдпрд╛ рдкрд╛рдпрдерди? рджреЛрдиреЛрдВ! рдкрд╛рдВрдбрд╛ рд╕реЗ рдЯрд┐рдбреАрд╡рд░реНрд╕ рдФрд░ рдбреЗрдЯрд╛.рдЯреЗрдмрд▓ рдФрд░ рд╡рд╛рдкрд╕ рдХреА рдУрд░ рдкрд▓рд╛рдпрди

рдкреВрд░реЗ рд▓реЗрдЦ рдореЗрдВ рд╣рдо рдХрдИ рдбреЗрдЯрд╛рд╕реЗрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВрдЧреЗ:

  1. Google Analytics рд╕реЗ рджреЛ рдбрд╛рдЙрдирд▓реЛрдб.
  2. рдЯрд╛рдЗрдЯреИрдирд┐рдХ рдкреИрд╕реЗрдВрдЬрд░ рдбреЗрдЯрд╛рд╕реЗрдЯред

рд╕рд╛рд░рд╛ рдбреЗрдЯрд╛ рдореЗрд░реЗ рдкрд╛рд╕ рд╣реИ GitHub рд╕реАрдПрд╕рд╡реА рдФрд░ рдЯреАрдПрд╕рд╡реА рдлрд╛рдЗрд▓реЛрдВ рдХреЗ рд░реВрдк рдореЗрдВред рд╣рдо рдЙрдирд╕реЗ рдХрд╣рд╛рдБ рд╕реЗ рдЕрдиреБрд░реЛрдз рдХрд░реЗрдВрдЧреЗ?

рдЖрд░ рдореЗрдВ рдбреЗрдЯрд╛ рд▓реЛрдб рд╣реЛ рд░рд╣рд╛ рд╣реИ: рдЯрд┐рдбреАрд╡рд░реНрд╕, рд╡реНрд░реВрдо, рд░реАрдбрд░

рдХрд┐рд╕реА рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдореЗрдВ рдбреЗрдЯрд╛ рд▓реЛрдб рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП tidyverse рджреЛ рдкреИрдХреЗрдЬ рд╣реИрдВ: vroom, readr. vroom рдЕрдзрд┐рдХ рдЖрдзреБрдирд┐рдХ, рд▓реЗрдХрд┐рди рднрд╡рд┐рд╖реНрдп рдореЗрдВ рдкреИрдХреЗрдЬ рд╕рдВрдпреБрдХреНрдд рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВред

рд╕реЗ рдмреЛрд▓реА рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рджрд╕реНрддрд╛рд╡реЗрдЬ vroom.

рд╡рд░ рдмрдирд╛рдо рдкрд╛рдардХ
рдХрд╛ рд╡рд┐рдореЛрдЪрди рдХреНрдпрд╛ рд╣реЛрддрд╛ рд╣реИ vroom рдорддрд▓рдм рдХреЗ рд▓рд┐рдП readr? рдЕрднреА рд╣рдорд╛рд░реА рдпреЛрдЬрдирд╛ рджреЛрдиреЛрдВ рдкреИрдХреЗрдЬреЛрдВ рдХреЛ рдЕрд▓рдЧ-рдЕрд▓рдЧ рд╡рд┐рдХрд╕рд┐рдд рдХрд░рдиреЗ рдХреА рд╣реИ, рд▓реЗрдХрд┐рди рд╕рдВрднрд╛рд╡рдирд╛ рд╣реИ рдХрд┐ рд╣рдо рднрд╡рд┐рд╖реНрдп рдореЗрдВ рдкреИрдХреЗрдЬреЛрдВ рдХреЛ рдПрдХ рдХрд░ рджреЗрдВрдЧреЗред рд╡реНрд░реВрдо рдХреЗ рдЖрд▓рд╕реА рдкрдврд╝рдиреЗ рдХрд╛ рдПрдХ рдиреБрдХрд╕рд╛рди рдпрд╣ рд╣реИ рдХрд┐ рдХреБрдЫ рдбреЗрдЯрд╛ рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЛ рд╕рд╛рдордиреЗ рд╕реЗ рд░рд┐рдкреЛрд░реНрдЯ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЙрдиреНрд╣реЗрдВ рдХреИрд╕реЗ рдПрдХреАрдХреГрдд рдХрд┐рдпрд╛ рдЬрд╛рдП рдЗрд╕рдХреЗ рд▓рд┐рдП рдХреБрдЫ рд╡рд┐рдЪрд╛рд░ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред

рд╡реНрд░реВрдо рдмрдирд╛рдо рд░реАрдбрд░
рд░рд┐рд▓реАрдЬ рдХрд╛ рдорддрд▓рдм рдХреНрдпрд╛ рд╣реИ? vroom рдХреЗ рд▓рд┐рдП readr? рдлрд┐рд▓рд╣рд╛рд▓ рд╣рдо рджреЛрдиреЛрдВ рдкреИрдХреЗрдЬреЛрдВ рдХреЛ рдЕрд▓рдЧ-рдЕрд▓рдЧ рд╡рд┐рдХрд╕рд┐рдд рдХрд░рдиреЗ рдХреА рдпреЛрдЬрдирд╛ рдмрдирд╛ рд░рд╣реЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рд╣рдо рд╕рдВрднрд╡рдд: рднрд╡рд┐рд╖реНрдп рдореЗрдВ рдЙрдиреНрд╣реЗрдВ рдЬреЛрдбрд╝ рджреЗрдВрдЧреЗред рдЖрд▓рд╕реА рдкрдврд╝рдиреЗ рдХреЗ рдиреБрдХрд╕рд╛рдиреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ vroom рдпрд╣ рд╣реИ рдХрд┐ рдбреЗрдЯрд╛ рдХреЗ рд╕рд╛рде рдХреБрдЫ рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреА рдкрд╣рд▓реЗ рд╕реЗ рд░рд┐рдкреЛрд░реНрдЯ рдирд╣реАрдВ рдХреА рдЬрд╛ рд╕рдХрддреА рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЖрдкрдХреЛ рдпрд╣ рд╕реЛрдЪрдиреЗ рдХреА рдЬрд╝рд░реВрд░рдд рд╣реИ рдХрд┐ рдЙрдиреНрд╣реЗрдВ рдХреИрд╕реЗ рд╕рдВрдпреЛрдЬрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдПред

рдЗрд╕ рд▓реЗрдЦ рдореЗрдВ рд╣рдо рджреЛрдиреЛрдВ рдбреЗрдЯрд╛ рд▓реЛрдбрд┐рдВрдЧ рдкреИрдХреЗрдЬреЛрдВ рдХреЛ рджреЗрдЦреЗрдВрдЧреЗ:

R: vroom рдкреИрдХреЗрдЬ рдореЗрдВ рдбреЗрдЯрд╛ рд▓реЛрдб рд╣реЛ рд░рд╣рд╛ рд╣реИ

# install.packages("vroom")
library(vroom)

# ╨з╤В╨╡╨╜╨╕╨╡ ╨┤╨░╨╜╨╜╤Л╤Е
## vroom
ga_nov  <- vroom("https://raw.githubusercontent.com/selesnow/publications/master/data_example/r_python_data/ga_nowember.csv")
ga_dec  <- vroom("https://raw.githubusercontent.com/selesnow/publications/master/data_example/r_python_data/ga_december.csv")
titanic <- vroom("https://raw.githubusercontent.com/selesnow/publications/master/data_example/r_python_data/titanic.csv")

R: рд░реАрдбрд░ рдореЗрдВ рдбреЗрдЯрд╛ рд▓реЛрдб рд╣реЛ рд░рд╣рд╛ рд╣реИ

# install.packages("readr")
library(readr)

# ╨з╤В╨╡╨╜╨╕╨╡ ╨┤╨░╨╜╨╜╤Л╤Е
## readr
ga_nov  <- read_tsv("https://raw.githubusercontent.com/selesnow/publications/master/data_example/r_python_data/ga_nowember.csv")
ga_dec  <- read_tsv("https://raw.githubusercontent.com/selesnow/publications/master/data_example/r_python_data/ga_december.csv")
titanic <- read_csv("https://raw.githubusercontent.com/selesnow/publications/master/data_example/r_python_data/titanic.csv")

рдкреИрдХреЗрдЬ рдореЗрдВ vroomрд╕реАрдПрд╕рд╡реА / рдЯреАрдПрд╕рд╡реА рдбреЗрдЯрд╛ рдкреНрд░рд╛рд░реВрдк рдХреА рдкрд░рд╡рд╛рд╣ рдХрд┐рдП рдмрд┐рдирд╛, рд▓реЛрдбрд┐рдВрдЧ рдЙрд╕реА рдирд╛рдо рдХреЗ рдлрд╝рдВрдХреНрд╢рди рджреНрд╡рд╛рд░рд╛ рдХреА рдЬрд╛рддреА рд╣реИ vroom(), рдкреИрдХреЗрдЬ рдореЗрдВ readr рд╣рдо рдкреНрд░рддреНрдпреЗрдХ рдкреНрд░рд╛рд░реВрдк рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрд▓рдЧ рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ read_tsv() ╨╕ read_csv().

рдбреЗрдЯрд╛ рдХреЛ R рдореЗрдВ рд▓реЛрдб рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИ: data.table

╨Т data.table рдбреЗрдЯрд╛ рд▓реЛрдб рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдлрд╝рдВрдХреНрд╢рди рд╣реИ fread().

рдбреЗрдЯрд╛ рдХреЛ R: data.table рдкреИрдХреЗрдЬ рдореЗрдВ рд▓реЛрдб рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИ

# install.packages("data.table")
library(data.table)

## data.table
ga_nov  <- fread("https://raw.githubusercontent.com/selesnow/publications/master/data_example/r_python_data/ga_nowember.csv")
ga_dec  <- fread("https://raw.githubusercontent.com/selesnow/publications/master/data_example/r_python_data/ga_december.csv")
titanic <- fread("https://raw.githubusercontent.com/selesnow/publications/master/data_example/r_python_data/titanic.csv")

рдкрд╛рдпрдерди рдореЗрдВ рдбреЗрдЯрд╛ рд▓реЛрдб рд╣реЛ рд░рд╣рд╛ рд╣реИ: рдкрд╛рдВрдбрд╛

рдЕрдЧрд░ рд╣рдо R рдкреИрдХреЗрдЬ рд╕реЗ рддреБрд▓рдирд╛ рдХрд░реЗрдВ рддреЛ рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ рд╕рд┐рдВрдЯреИрдХреНрд╕ рд╕рдмрд╕реЗ рдХрд░реАрдм рд╣реИ pandas рд╣реЛрдЧрд╛ readrрдХреНрдпреЛрдВрдХрд┐ pandas рдХрд╣реАрдВ рд╕реЗ рднреА рдбреЗрдЯрд╛ рдХрд╛ рдЕрдиреБрд░реЛрдз рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдФрд░ рдЗрд╕ рдкреИрдХреЗрдЬ рдореЗрдВ рдХрд╛рд░реНрдпреЛрдВ рдХрд╛ рдПрдХ рдкреВрд░рд╛ рдкрд░рд┐рд╡рд╛рд░ рд╣реИ read_*().

  • read_csv()
  • read_excel()
  • read_sql()
  • read_json()
  • read_html()

рдФрд░ рд╡рд┐рднрд┐рдиреНрди рдкреНрд░рд╛рд░реВрдкреЛрдВ рд╕реЗ рдбреЗрдЯрд╛ рдкрдврд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдбрд┐рдЬрд╝рд╛рдЗрди рдХрд┐рдП рдЧрдП рдХрдИ рдЕрдиреНрдп рдлрд╝рдВрдХреНрд╢рдиред рд▓реЗрдХрд┐рди рд╣рдорд╛рд░реЗ рдЙрджреНрджреЗрд╢реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП рдпрд╣ рдкрд░реНрдпрд╛рдкреНрдд рд╣реИ read_table() рдпрд╛ read_csv() рддрд░реНрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╕рд┐рддрдореНрдмрд░ рд╕реНрддрдВрдн рд╡рд┐рднрд╛рдЬрдХ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП.

рдкрд╛рдпрдерди рдореЗрдВ рдбреЗрдЯрд╛ рд▓реЛрдб рд╣реЛ рд░рд╣рд╛ рд╣реИ: рдкрд╛рдВрдбрд╛

import pandas as pd

ga_nov  = pd.read_csv("https://raw.githubusercontent.com/selesnow/publications/master/data_example/russian_text_in_r/ga_nowember.csv", sep = "t")
ga_dec  = pd.read_csv("https://raw.githubusercontent.com/selesnow/publications/master/data_example/russian_text_in_r/ga_december.csv", sep = "t")
titanic = pd.read_csv("https://raw.githubusercontent.com/selesnow/publications/master/data_example/russian_text_in_r/titanic.csv")

рдбреЗрдЯрд╛рдлрд╝реНрд░реЗрдо рдмрдирд╛рдирд╛

рдЯреЗрдмрд▓ рдЯрд╛рдЗрдЯреИрдирд┐рдХ, рдЬрд┐рд╕реЗ рд╣рдордиреЗ рд▓реЛрдб рдХрд┐рдпрд╛ рд╣реИ, рд╡рд╣рд╛рдВ рдПрдХ рдлрд╝реАрд▓реНрдб рд╣реИ рд▓рд┐рдВрдЧ, рдЬреЛ рдпрд╛рддреНрд░реА рдХреЗ рд▓рд┐рдВрдЧ рдкрд╣рдЪрд╛рдирдХрд░реНрддрд╛ рдХреЛ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рддрд╛ рд╣реИред

рд▓реЗрдХрд┐рди рдпрд╛рддреНрд░реА рд▓рд┐рдВрдЧ рдХреЗ рд╕рдВрджрд░реНрдн рдореЗрдВ рдбреЗрдЯрд╛ рдХреА рдЕрдзрд┐рдХ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рдкреНрд░рд╕реНрддреБрддрд┐ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рд▓рд┐рдВрдЧ рдХреЛрдб рдХреЗ рдмрдЬрд╛рдп рдирд╛рдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред

рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдо рдПрдХ рдЫреЛрдЯреА рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛, рдПрдХ рддрд╛рд▓рд┐рдХрд╛ рдмрдирд╛рдПрдВрдЧреЗ рдЬрд┐рд╕рдореЗрдВ рдХреНрд░рдорд╢рдГ рдХреЗрд╡рд▓ 2 рдХреЙрд▓рдо (рдХреЛрдб рдФрд░ рд▓рд┐рдВрдЧ рдирд╛рдо) рдФрд░ 2 рдкрдВрдХреНрддрд┐рдпрд╛рдБ рд╣реЛрдВрдЧреАред

R рдореЗрдВ рдПрдХ рдбреЗрдЯрд╛рдлрд╝реНрд░реЗрдо рдмрдирд╛рдирд╛: tidyvers, dplyr

рдиреАрдЪреЗ рджрд┐рдП рдЧрдП рдХреЛрдб рдЙрджрд╛рд╣рд░рдг рдореЗрдВ, рд╣рдо рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╡рд╛рдВрдЫрд┐рдд рдбреЗрдЯрд╛рдлрд╝реНрд░реЗрдо рдмрдирд╛рддреЗ рд╣реИрдВ tibble() .

R: dplyr рдореЗрдВ рдбреЗрдЯрд╛рдлрд╝реНрд░реЗрдо рдмрдирд╛рдирд╛

## dplyr
### ╤Б╨╛╨╖╨┤╨░╤С╨╝ ╤Б╨┐╤А╨░╨▓╨╛╤З╨╜╨╕╨║
gender <- tibble(id = c(1, 2),
                 gender = c("female", "male"))

R: data.table рдореЗрдВ рдбреЗрдЯрд╛рдлрд╝реНрд░реЗрдо рдмрдирд╛рдирд╛

R: data.table рдореЗрдВ рдбреЗрдЯрд╛рдлрд╝реНрд░реЗрдо рдмрдирд╛рдирд╛

## data.table
### ╤Б╨╛╨╖╨┤╨░╤С╨╝ ╤Б╨┐╤А╨░╨▓╨╛╤З╨╜╨╕╨║
gender <- data.table(id = c(1, 2),
                    gender = c("female", "male"))

рдкрд╛рдпрдерди рдореЗрдВ рдбреЗрдЯрд╛рдлрд╝реНрд░реЗрдо рдмрдирд╛рдирд╛: рдкрд╛рдВрдбрд╛

╨Т pandas рдлрд╝реНрд░реЗрдо рдмрдирд╛рдирд╛ рдХрдИ рдЪрд░рдгреЛрдВ рдореЗрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдкрд╣рд▓реЗ рд╣рдо рдПрдХ рд╢рдмреНрджрдХреЛрд╢ рдмрдирд╛рддреЗ рд╣реИрдВ, рдФрд░ рдлрд┐рд░ рд╣рдо рд╢рдмреНрджрдХреЛрд╢ рдХреЛ рдбреЗрдЯрд╛рдлрд╝реНрд░реЗрдо рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрд┐рдд рдХрд░рддреЗ рд╣реИрдВред

рдкрд╛рдпрдерди рдореЗрдВ рдбреЗрдЯрд╛рдлрд╝реНрд░реЗрдо рдмрдирд╛рдирд╛: рдкрд╛рдВрдбрд╛

# ╤Б╨╛╨╖╨┤╨░╤С╨╝ ╨┤╨░╤В╨░ ╤Д╤А╨╡╨╣╨╝
gender_dict = {'id': [1, 2],
               'gender': ["female", "male"]}
# ╨┐╤А╨╡╨╛╨▒╤А╨░╨╖╤Г╨╡╨╝ ╤Б╨╗╨╛╨▓╨░╤А╤М ╨▓ ╨┤╨░╤В╨░╤Д╤А╨╡╨╣╨╝
gender = pd.DataFrame.from_dict(gender_dict)

рдХреЙрд▓рдо рдХрд╛ рдЪрдпрди рдХрд░рдирд╛

рдЖрдк рдЬрд┐рди рддрд╛рд▓рд┐рдХрд╛рдУрдВ рдкрд░ рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВ рдЙрдирдореЗрдВ рдбреЗрдЯрд╛ рдХреЗ рджрд░реНрдЬрдиреЛрдВ рдпрд╛ рд╕реИрдХрдбрд╝реЛрдВ рдХреЙрд▓рдо рднреА рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВред рд▓реЗрдХрд┐рди рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдПрдХ рдирд┐рдпрдо рдХреЗ рд░реВрдк рдореЗрдВ, рдЖрдкрдХреЛ рдЙрди рд╕рднреА рдХреЙрд▓рдореЛрдВ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ рдЬреЛ рд╕реНрд░реЛрдд рддрд╛рд▓рд┐рдХрд╛ рдореЗрдВ рдЙрдкрд▓рдмреНрдз рд╣реИрдВред

рдбреЗрдЯрд╛ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреМрди рд╕реА рднрд╛рд╖рд╛ рдЪреБрдиреЗрдВ - рдЖрд░ рдпрд╛ рдкрд╛рдпрдерди? рджреЛрдиреЛрдВ! рдкрд╛рдВрдбрд╛ рд╕реЗ рдЯрд┐рдбреАрд╡рд░реНрд╕ рдФрд░ рдбреЗрдЯрд╛.рдЯреЗрдмрд▓ рдФрд░ рд╡рд╛рдкрд╕ рдХреА рдУрд░ рдкрд▓рд╛рдпрди

рдЗрд╕рд▓рд┐рдП, рд╕реНрд░реЛрдд рддрд╛рд▓рд┐рдХрд╛ рдХреЗ рд╕рд╛рде рдЖрдк рдЬреЛ рдкрд╣рд▓рд╛ рдСрдкрд░реЗрд╢рди рдХрд░реЗрдВрдЧреЗ, рдЙрдирдореЗрдВ рд╕реЗ рдПрдХ рдпрд╣ рд╣реИ рдХрд┐ рдЗрд╕реЗ рдЕрдирд╛рд╡рд╢реНрдпрдХ рдЬрд╛рдирдХрд╛рд░реА рд╕реЗ рд╕рд╛рдлрд╝ рдХрд┐рдпрд╛ рдЬрд╛рдП рдФрд░ рдЙрд╕ рдореЗрдореЛрд░реА рдХреЛ рдореБрдХреНрдд рдХрд┐рдпрд╛ рдЬрд╛рдП рдЬреЛ рдпрд╣ рдЬрд╛рдирдХрд╛рд░реА рдШреЗрд░рддреА рд╣реИред

рдЖрд░ рдореЗрдВ рдХреЙрд▓рдо рдХрд╛ рдЪрдпрди: tidyvers, dplyr

рд╡рд╛рдХреНрдп-рд╡рд┐рдиреНрдпрд╛рд╕ dplyr рдпрд╣ SQL рдХреНрд╡реЗрд░реА рднрд╛рд╖рд╛ рдХреЗ рд╕рдорд╛рди рд╣реИ, рдпрджрд┐ рдЖрдк рдЗрд╕рд╕реЗ рдкрд░рд┐рдЪрд┐рдд рд╣реИрдВ рддреЛ рдЖрдк рдЬрд▓реНрджреА рд╕реЗ рдЗрд╕ рдкреИрдХреЗрдЬ рдореЗрдВ рдорд╣рд╛рд░рдд рд╣рд╛рд╕рд┐рд▓ рдХрд░ рд▓реЗрдВрдЧреЗред

рдХреЙрд▓рдо рдЪреБрдирдиреЗ рдХреЗ рд▓рд┐рдП, рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ select().

рдиреАрдЪреЗ рдХреЛрдб рдХреЗ рдЙрджрд╛рд╣рд░рдг рджрд┐рдП рдЧрдП рд╣реИрдВ рдЬрд┐рдирдХреЗ рд╕рд╛рде рдЖрдк рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рддрд░реАрдХреЛрдВ рд╕реЗ рдХреЙрд▓рдо рдХрд╛ рдЪрдпрди рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:

  • рдЖрд╡рд╢реНрдпрдХ рдХреЙрд▓рдореЛрдВ рдХреЗ рдирд╛рдо рд╕реВрдЪреАрдмрджреНрдз рдХрд░рдирд╛
  • рд░реЗрдЧреБрд▓рд░ рдПрдХреНрд╕рдкреНрд░реЗрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдХреЙрд▓рдо рдирд╛рдо рджреЗрдЦреЗрдВ
  • рдбреЗрдЯрд╛ рдкреНрд░рдХрд╛рд░ рдпрд╛ рдХреЙрд▓рдо рдореЗрдВ рдореМрдЬреВрдж рдбреЗрдЯрд╛ рдХреА рдХрд┐рд╕реА рдЕрдиреНрдп рд╕рдВрдкрддреНрддрд┐ рджреНрд╡рд╛рд░рд╛

R: dplyr рдореЗрдВ рдХреЙрд▓рдо рдХрд╛ рдЪрдпрди рдХрд░рдирд╛

# ╨Т╤Л╨▒╨╛╤А ╨╜╤Г╨╢╨╜╤Л╤Е ╤Б╤В╨╛╨╗╨▒╤Ж╨╛╨▓
## dplyr
### ╨▓╤Л╨▒╤А╨░╤В╤М ╨┐╨╛ ╨╜╨░╨╖╨▓╨░╨╜╨╕╤О ╤Б╤В╨╛╨╗╨▒╤Ж╨╛╨▓
select(ga_nov, date, source, sessions)
### ╨╕╤Б╨║╨╗╤О╤З╤М ╨┐╨╛ ╨╜╨░╨╖╨▓╨░╨╜╨╕╤О ╤Б╤В╨╛╨╗╨▒╤Ж╨╛╨▓
select(ga_nov, -medium, -bounces)
### ╨▓╤Л╨▒╤А╨░╤В╤М ╨┐╨╛ ╤А╨╡╨│╤Г╨╗╤П╤А╨╜╨╛╨╝╤Г ╨▓╤Л╤А╨░╨╢╨╡╨╜╨╕╤О, ╤Б╤В╨╛╨▒╤Ж╤Л ╨╕╨╝╨╡╨╜╨░ ╨║╨╛╤В╨╛╤А╤Л╤Е ╨╖╨░╨║╨░╨╜╤З╨╕╨▓╨░╤О╤В╤Б╤П ╨╜╨░ s
select(ga_nov, matches("s$"))
### ╨▓╤Л╨▒╤А╨░╤В╤М ╨┐╨╛ ╤Г╤Б╨╗╨╛╨▓╨╕╤О, ╨▓╤Л╨▒╨╕╤А╨░╨╡╨╝ ╤В╨╛╨╗╤М╨║╨╛ ╤Ж╨╡╨╗╨╛╤З╨╕╤Б╨╗╨╡╨╜╨╜╤Л╨╡ ╤Б╤В╨╛╨╗╨▒╤Ж╤Л
select_if(ga_nov, is.integer)

R: data.table рдореЗрдВ рдХреЙрд▓рдо рдХрд╛ рдЪрдпрди рдХрд░рдирд╛

рдореЗрдВ рд╡рд╣реА рд╕рдВрдЪрд╛рд▓рди data.table рдереЛрдбрд╝рд╛ рдЕрд▓рдЧ рддрд░реАрдХреЗ рд╕реЗ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рд▓реЗрдЦ рдХреА рд╢реБрд░реБрдЖрдд рдореЗрдВ рдореИрдВрдиреЗ рд╡рд░реНрдЧрд╛рдХрд╛рд░ рдХреЛрд╖реНрдардХреЛрдВ рдХреЗ рдЕрдВрджрд░ рдХреМрди рд╕реЗ рддрд░реНрдХ рд╣реИрдВ рдЗрд╕рдХрд╛ рд╡рд┐рд╡рд░рдг рдкреНрд░рджрд╛рди рдХрд┐рдпрд╛ рд╣реИ data.table.

DT[i,j,by]

рдХрд╣рд╛рдБ:
рдореИрдВ - рдХрд╣рд╛рдБ, рдпрд╛рдиреА рдкрдВрдХреНрддрд┐рдпреЛрдВ рджреНрд╡рд╛рд░рд╛ рдлрд╝рд┐рд▓реНрдЯрд░ рдХрд░рдирд╛
рдЬреЗ - рдЪреБрдиреЗрдВ|рдЕрджреНрдпрддрди|рдХрд░реЗрдВ, рдпрд╛рдиреАред рд╕реНрддрдВрднреЛрдВ рдХрд╛ рдЪрдпрди рдХрд░рдирд╛ рдФрд░ рдЙрдиреНрд╣реЗрдВ рдкрд░рд┐рд╡рд░реНрддрд┐рдд рдХрд░рдирд╛
рджреНрд╡рд╛рд░рд╛ - рдбреЗрдЯрд╛ рд╕рдореВрд╣рди

R: data.table рдореЗрдВ рдХреЙрд▓рдо рдХрд╛ рдЪрдпрди рдХрд░рдирд╛

## data.table
### ╨▓╤Л╨▒╤А╨░╤В╤М ╨┐╨╛ ╨╜╨░╨╖╨▓╨░╨╜╨╕╤О ╤Б╤В╨╛╨╗╨▒╤Ж╨╛╨▓
ga_nov[ , .(date, source, sessions) ]
### ╨╕╤Б╨║╨╗╤О╤З╤М ╨┐╨╛ ╨╜╨░╨╖╨▓╨░╨╜╨╕╤О ╤Б╤В╨╛╨╗╨▒╤Ж╨╛╨▓
ga_nov[ , .SD, .SDcols = ! names(ga_nov) %like% "medium|bounces" ]
### ╨▓╤Л╨▒╤А╨░╤В╤М ╨┐╨╛ ╤А╨╡╨│╤Г╨╗╤П╤А╨╜╨╛╨╝╤Г ╨▓╤Л╤А╨░╨╢╨╡╨╜╨╕╤О
ga_nov[, .SD, .SDcols = patterns("s$")]

рдкрд░рд┐рд╡рд░реНрддрдирд╢реАрд▓ .SD рдЖрдкрдХреЛ рд╕рднреА рдХреЙрд▓рдореЛрдВ рддрдХ рдкрд╣реБрдВрдЪрдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ, рдФрд░ .SDcols рдЖрдкрдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рдХреЙрд▓рдо рдХреЗ рдирд╛рдореЛрдВ рдХреЛ рдлрд╝рд┐рд▓реНрдЯрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд░реЗрдЧреБрд▓рд░ рдПрдХреНрд╕рдкреНрд░реЗрд╢рди, рдпрд╛ рдЕрдиреНрдп рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЖрд╡рд╢реНрдпрдХ рдХреЙрд▓рдо рдлрд╝рд┐рд▓реНрдЯрд░ рдХрд░реЗрдВред

рдкрд╛рдпрдерди, рдкрд╛рдВрдбрд╛ рдореЗрдВ рдХреЙрд▓рдо рдХрд╛ рдЪрдпрди рдХрд░рдирд╛

рдореЗрдВ рдирд╛рдо рд╕реЗ рдХреЙрд▓рдо рдХрд╛ рдЪрдпрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП pandas рдЙрдирдХреЗ рдирд╛рдореЛрдВ рдХреА рд╕реВрдЪреА рдкреНрд░рджрд╛рди рдХрд░рдирд╛ рд╣реА рдкрд░реНрдпрд╛рдкреНрдд рд╣реИред рдФрд░ рд░реЗрдЧреБрд▓рд░ рдПрдХреНрд╕рдкреНрд░реЗрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдирд╛рдо рд╕реЗ рдХреЙрд▓рдо рдЪреБрдирдиреЗ рдпрд╛ рдмрд╛рд╣рд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдлрд╝рдВрдХреНрд╢рдВрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ drop() ╨╕ filter(), рдФрд░ рддрд░реНрдХ рдЕрдХреНрд╖ = 1, рдЬрд┐рд╕рдХреЗ рд╕рд╛рде рдЖрдк рдЗрдВрдЧрд┐рдд рдХрд░рддреЗ рд╣реИрдВ рдХрд┐ рдкрдВрдХреНрддрд┐рдпреЛрдВ рдХреЗ рдмрдЬрд╛рдп рд╕реНрддрдВрднреЛрдВ рдХреЛ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реИред

рдбреЗрдЯрд╛ рдкреНрд░рдХрд╛рд░ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдлрд╝реАрд▓реНрдб рдХрд╛ рдЪрдпрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ select_dtypes(), рдФрд░ рддрд░реНрдХ-рд╡рд┐рддрд░реНрдХ рдореЗрдВ рд╢рд╛рдорд┐рд▓ рдпрд╛ рдирд┐рдХрд╛рд▓рдирд╛ рдЖрдкрдХреЛ рдЬрд┐рди рдлрд╝реАрд▓реНрдб рдХрд╛ рдЪрдпрди рдХрд░рдирд╛ рд╣реИ, рдЙрд╕рдХреЗ рдЕрдиреБрд░реВрдк рдбреЗрдЯрд╛ рдкреНрд░рдХрд╛рд░реЛрдВ рдХреА рдПрдХ рд╕реВрдЪреА рдкрд╛рд╕ рдХрд░реЗрдВред

рдкрд╛рдпрдерди рдореЗрдВ рдХреЙрд▓рдо рдХрд╛ рдЪрдпрди: рдкрд╛рдВрдбрд╛

# ╨Т╤Л╨▒╨╛╤А ╨┐╨╛╨╗╨╡╨╣ ╨┐╨╛ ╨╜╨░╨╖╨▓╨░╨╜╨╕╤О
ga_nov[['date', 'source', 'sessions']]
# ╨Ш╤Б╨║╨╗╤О╤З╨╕╤В╤М ╨┐╨╛ ╨╜╨░╨╖╨▓╨░╨╜╨╕╤О
ga_nov.drop(['medium', 'bounces'], axis=1)
# ╨Т╤Л╨▒╤А╨░╤В╤М ╨┐╨╛ ╤А╨╡╨│╤Г╨╗╤П╤А╨╜╨╛╨╝╤Г ╨▓╤Л╤А╨░╨╢╨╡╨╜╨╕╤О
ga_nov.filter(regex="s$", axis=1)
# ╨Т╤Л╨▒╤А╨░╤В╤М ╤З╨╕╤Б╨╗╨╛╨▓╤Л╨╡ ╨┐╨╛╨╗╤П
ga_nov.select_dtypes(include=['number'])
# ╨Т╤Л╨▒╤А╨░╤В╤М ╤В╨╡╨║╤Б╤В╨╛╨▓╤Л╨╡ ╨┐╨╛╨╗╤П
ga_nov.select_dtypes(include=['object'])

рдкрдВрдХреНрддрд┐рдпреЛрдВ рдХреЛ рдлрд╝рд┐рд▓реНрдЯрд░ рдХрд░рдирд╛

рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд╕реНрд░реЛрдд рддрд╛рд▓рд┐рдХрд╛ рдореЗрдВ рдХрдИ рд╡рд░реНрд╖реЛрдВ рдХрд╛ рдбреЗрдЯрд╛ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЖрдкрдХреЛ рдХреЗрд╡рд▓ рдкрд┐рдЫрд▓реЗ рдорд╣реАрдиреЗ рдХрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдлрд┐рд░, рдЕрддрд┐рд░рд┐рдХреНрдд рд▓рд╛рдЗрдиреЗрдВ рдбреЗрдЯрд╛ рдкреНрд░реЛрд╕реЗрд╕рд┐рдВрдЧ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЛ рдзреАрдорд╛ рдХрд░ рджреЗрдВрдЧреА рдФрд░ рдкреАрд╕реА рдореЗрдореЛрд░реА рдХреЛ рдЕрд╡рд░реБрджреНрдз рдХрд░ рджреЗрдВрдЧреАред

рдбреЗрдЯрд╛ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреМрди рд╕реА рднрд╛рд╖рд╛ рдЪреБрдиреЗрдВ - рдЖрд░ рдпрд╛ рдкрд╛рдпрдерди? рджреЛрдиреЛрдВ! рдкрд╛рдВрдбрд╛ рд╕реЗ рдЯрд┐рдбреАрд╡рд░реНрд╕ рдФрд░ рдбреЗрдЯрд╛.рдЯреЗрдмрд▓ рдФрд░ рд╡рд╛рдкрд╕ рдХреА рдУрд░ рдкрд▓рд╛рдпрди

рдЖрд░ рдореЗрдВ рдкрдВрдХреНрддрд┐рдпреЛрдВ рдХреЛ рдлрд╝рд┐рд▓реНрдЯрд░ рдХрд░рдирд╛: рдЯрд╛рдЗрдбреАрд╡рд░реНрд╕, рдбреАрдкреАрдПрд▓рдЖрдИрдЖрд░

╨Т dplyr рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдкрдВрдХреНрддрд┐рдпреЛрдВ рдХреЛ рдлрд╝рд┐рд▓реНрдЯрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ filter(). рдпрд╣ рдкрд╣рд▓реЗ рддрд░реНрдХ рдХреЗ рд░реВрдк рдореЗрдВ рдПрдХ рдбреЗрдЯрд╛рдлрд╝реНрд░реЗрдо рд▓реЗрддрд╛ рд╣реИ, рдлрд┐рд░ рдЖрдк рдлрд╝рд┐рд▓реНрдЯрд░рд┐рдВрдЧ рд╢рд░реНрддреЛрдВ рдХреЛ рд╕реВрдЪреАрдмрджреНрдз рдХрд░рддреЗ рд╣реИрдВред

рдХрд┐рд╕реА рддрд╛рд▓рд┐рдХрд╛ рдХреЛ рдлрд╝рд┐рд▓реНрдЯрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рддрд╛рд░реНрдХрд┐рдХ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рд▓рд┐рдЦрддреЗ рд╕рдордп, рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, рдЙрджреНрдзрд░рдг рдЪрд┐рд╣реНрдиреЛрдВ рдХреЗ рдмрд┐рдирд╛ рдФрд░ рддрд╛рд▓рд┐рдХрд╛ рдирд╛рдо рдШреЛрд╖рд┐рдд рдХрд┐рдП рдмрд┐рдирд╛ рдХреЙрд▓рдо рдирд╛рдо рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░реЗрдВред

рдлрд╝рд┐рд▓реНрдЯрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХрд╛рдзрд┐рдХ рддрд╛рд░реНрдХрд┐рдХ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐рдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╕рдордп, рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдСрдкрд░реЗрдЯрд░реЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ:

  • & рдпрд╛ рдЕрд▓реНрдкрд╡рд┐рд░рд╛рдо - рддрд╛рд░реНрдХрд┐рдХ рддрдерд╛
  • | - рддрд╛рд░реНрдХрд┐рдХ рдпрд╛

R: dplyr рдореЗрдВ рдкрдВрдХреНрддрд┐рдпреЛрдВ рдХреЛ рдлрд╝рд┐рд▓реНрдЯрд░ рдХрд░рдирд╛

# ╤Д╨╕╨╗╤М╤В╤А╨░╤Ж╨╕╤П ╤Б╤В╤А╨╛╨║
## dplyr
### ╤Д╨╕╨╗╤М╤В╤А╨░╤Ж╨╕╤П ╤Б╤В╤А╨╛╨║ ╨┐╨╛ ╨╛╨┤╨╜╨╛╨╝╤Г ╤Г╤Б╨╗╨╛╨▓╨╕╤О
filter(ga_nov, source == "google")
### ╤Д╨╕╨╗╤М╤В╤А ╨┐╨╛ ╨┤╨▓╤Г╨╝ ╤Г╤Б╨╗╨╛╨▓╨╕╤П╨╝ ╤Б╨╛╨╡╨┤╨╕╨╜╤С╨╜╨╜╤Л╨╝ ╨╗╨╛╨│╨╕╤З╨╡╤Б╨║╨╕╨╝ ╨╕
filter(ga_nov, source == "google" & sessions >= 10)
### ╤Д╨╕╨╗╤М╤В╤А ╨┐╨╛ ╨┤╨▓╤Г╨╝ ╤Г╤Б╨╗╨╛╨▓╨╕╤П╨╝ ╤Б╨╛╨╡╨┤╨╕╨╜╤С╨╜╨╜╤Л╨╝ ╨╗╨╛╨│╨╕╤З╨╡╤Б╨║╨╕╨╝ ╨╕╨╗╨╕
filter(ga_nov, source == "google" | sessions >= 10)

R рдореЗрдВ рдкрдВрдХреНрддрд┐рдпреЛрдВ рдХреЛ рдлрд╝рд┐рд▓реНрдЯрд░ рдХрд░рдирд╛: data.table

рдЬреИрд╕рд╛ рдХрд┐ рдореИрдВрдиреЗ рдкрд╣рд▓реЗ рд╣реА рдКрдкрд░ рд▓рд┐рдЦрд╛ рд╣реИ, рдореЗрдВ data.table рдбреЗрдЯрд╛ рд░реВрдкрд╛рдВрддрд░рдг рд╕рд┐рдВрдЯреИрдХреНрд╕ рд╡рд░реНрдЧрд╛рдХрд╛рд░ рдХреЛрд╖реНрдардХреЛрдВ рдореЗрдВ рд╕рдВрд▓рдЧреНрди рд╣реИред

DT[i,j,by]

рдХрд╣рд╛рдБ:
рдореИрдВ - рдХрд╣рд╛рдБ, рдпрд╛рдиреА рдкрдВрдХреНрддрд┐рдпреЛрдВ рджреНрд╡рд╛рд░рд╛ рдлрд╝рд┐рд▓реНрдЯрд░ рдХрд░рдирд╛
рдЬреЗ - рдЪреБрдиреЗрдВ|рдЕрджреНрдпрддрди|рдХрд░реЗрдВ, рдпрд╛рдиреАред рд╕реНрддрдВрднреЛрдВ рдХрд╛ рдЪрдпрди рдХрд░рдирд╛ рдФрд░ рдЙрдиреНрд╣реЗрдВ рдкрд░рд┐рд╡рд░реНрддрд┐рдд рдХрд░рдирд╛
рджреНрд╡рд╛рд░рд╛ - рдбреЗрдЯрд╛ рд╕рдореВрд╣рди

рддрд░реНрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдкрдВрдХреНрддрд┐рдпреЛрдВ рдХреЛ рдлрд╝рд┐рд▓реНрдЯрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ i, рдЬрд┐рд╕рдХрд╛ рд╡рд░реНрдЧрд╛рдХрд╛рд░ рдХреЛрд╖реНрдардХ рдореЗрдВ рдкреНрд░рдердо рд╕реНрдерд╛рди рд╣реИред

рд╕реНрддрдВрднреЛрдВ рддрдХ рдЙрджреНрдзрд░рдг рдЪрд┐рд╣реНрдиреЛрдВ рдХреЗ рдмрд┐рдирд╛ рдФрд░ рддрд╛рд▓рд┐рдХрд╛ рдирд╛рдо рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд┐рдП рдмрд┐рдирд╛ рддрд╛рд░реНрдХрд┐рдХ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐рдпреЛрдВ рдореЗрдВ рдкрд╣реБрдВрдЪрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

рддрд╛рд░реНрдХрд┐рдХ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐рдпрд╛рдБ рдПрдХ-рджреВрд╕рд░реЗ рд╕реЗ рдЙрд╕реА рддрд░рд╣ рд╕рдВрдмрдВрдзрд┐рдд рд╣реИрдВ рдЬреИрд╕реЗ рдХрд┐ dplyr & рдФрд░ | рдСрдкрд░реЗрдЯрд░реЛрдВ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗред

R рдореЗрдВ рдкрдВрдХреНрддрд┐рдпреЛрдВ рдХреЛ рдлрд╝рд┐рд▓реНрдЯрд░ рдХрд░рдирд╛: data.table

## data.table
### ╤Д╨╕╨╗╤М╤В╤А╨░╤Ж╨╕╤П ╤Б╤В╤А╨╛╨║ ╨┐╨╛ ╨╛╨┤╨╜╨╛╨╝╤Г ╤Г╤Б╨╗╨╛╨▓╨╕╤О
ga_nov[source == "google"]
### ╤Д╨╕╨╗╤М╤В╤А ╨┐╨╛ ╨┤╨▓╤Г╨╝ ╤Г╤Б╨╗╨╛╨▓╨╕╤П╨╝ ╤Б╨╛╨╡╨┤╨╕╨╜╤С╨╜╨╜╤Л╨╝ ╨╗╨╛╨│╨╕╤З╨╡╤Б╨║╨╕╨╝ ╨╕
ga_nov[source == "google" & sessions >= 10]
### ╤Д╨╕╨╗╤М╤В╤А ╨┐╨╛ ╨┤╨▓╤Г╨╝ ╤Г╤Б╨╗╨╛╨▓╨╕╤П╨╝ ╤Б╨╛╨╡╨┤╨╕╨╜╤С╨╜╨╜╤Л╨╝ ╨╗╨╛╨│╨╕╤З╨╡╤Б╨║╨╕╨╝ ╨╕╨╗╨╕
ga_nov[source == "google" | sessions >= 10]

рдкрд╛рдпрдерди рдореЗрдВ рд╕реНрдЯреНрд░рд┐рдВрдЧреНрд╕ рдХреЛ рдлрд╝рд┐рд▓реНрдЯрд░ рдХрд░рдирд╛: рдкрд╛рдВрдбрд╛

рдкрдВрдХреНрддрд┐рдпреЛрдВ рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдлрд╝рд┐рд▓реНрдЯрд░ рдХрд░реЗрдВ pandas рдлрд╝рд┐рд▓реНрдЯрд░ рдХрд░рдиреЗ рдХреЗ рд╕рдорд╛рди data.table, рдФрд░ рд╡рд░реНрдЧрд╛рдХрд╛рд░ рдХреЛрд╖реНрдардХреЛрдВ рдореЗрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, рдбреЗрдЯрд╛рдлрд╝реНрд░реЗрдо рдХреЗ рдирд╛рдо рдХреЛ рдЗрдВрдЧрд┐рдд рдХрд░рдХреЗ рдХреЙрд▓рдо рддрдХ рдкрд╣реБрдВрдЪ рдЖрд╡рд╢реНрдпрдХ рд░реВрдк рд╕реЗ рдХреА рдЬрд╛рддреА рд╣реИ; рдлрд┐рд░ рдХреЙрд▓рдо рдирд╛рдо рдХреЛ рд╡рд░реНрдЧрд╛рдХрд╛рд░ рдХреЛрд╖реНрдардХ рдореЗрдВ рдЙрджреНрдзрд░рдг рдЪрд┐рд╣реНрдиреЛрдВ рдореЗрдВ рднреА рджрд░реНрд╢рд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ (рдЙрджрд╛рд╣рд░рдг df['col_name']), рдпрд╛ рдЕрд╡рдзрд┐ рдХреЗ рдмрд╛рдж рдЙрджреНрдзрд░рдг рдХреЗ рдмрд┐рдирд╛ (рдЙрджрд╛рд╣рд░рдг df.col_name).

рдпрджрд┐ рдЖрдкрдХреЛ рдХрд┐рд╕реА рдбреЗрдЯрд╛рдлрд╝реНрд░реЗрдо рдХреЛ рдХрдИ рд╢рд░реНрддреЛрдВ рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдлрд╝рд┐рд▓реНрдЯрд░ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рддреЛ рдкреНрд░рддреНрдпреЗрдХ рд╢рд░реНрдд рдХреЛ рдХреЛрд╖реНрдардХ рдореЗрдВ рд░рдЦрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рддрд╛рд░реНрдХрд┐рдХ рд╕реНрдерд┐рддрд┐рдпрд╛рдБ рдСрдкрд░реЗрдЯрд░реЛрдВ рджреНрд╡рд╛рд░рд╛ рдПрдХ рджреВрд╕рд░реЗ рд╕реЗ рдЬреБрдбрд╝реА рд╣реЛрддреА рд╣реИрдВ & ╨╕ |.

рдкрд╛рдпрдерди рдореЗрдВ рд╕реНрдЯреНрд░рд┐рдВрдЧреНрд╕ рдХреЛ рдлрд╝рд┐рд▓реНрдЯрд░ рдХрд░рдирд╛: рдкрд╛рдВрдбрд╛

# ╨д╨╕╨╗╤М╤В╤А╨░╤Ж╨╕╤П ╤Б╤В╤А╨╛╨║ ╤В╨░╨▒╨╗╨╕╤Ж╤Л
### ╤Д╨╕╨╗╤М╤В╤А╨░╤Ж╨╕╤П ╤Б╤В╤А╨╛╨║ ╨┐╨╛ ╨╛╨┤╨╜╨╛╨╝╤Г ╤Г╤Б╨╗╨╛╨▓╨╕╤О
ga_nov[ ga_nov['source'] == "google" ]
### ╤Д╨╕╨╗╤М╤В╤А ╨┐╨╛ ╨┤╨▓╤Г╨╝ ╤Г╤Б╨╗╨╛╨▓╨╕╤П╨╝ ╤Б╨╛╨╡╨┤╨╕╨╜╤С╨╜╨╜╤Л╨╝ ╨╗╨╛╨│╨╕╤З╨╡╤Б╨║╨╕╨╝ ╨╕
ga_nov[(ga_nov['source'] == "google") & (ga_nov['sessions'] >= 10)]
### ╤Д╨╕╨╗╤М╤В╤А ╨┐╨╛ ╨┤╨▓╤Г╨╝ ╤Г╤Б╨╗╨╛╨▓╨╕╤П╨╝ ╤Б╨╛╨╡╨┤╨╕╨╜╤С╨╜╨╜╤Л╨╝ ╨╗╨╛╨│╨╕╤З╨╡╤Б╨║╨╕╨╝ ╨╕╨╗╨╕
ga_nov[(ga_nov['source'] == "google") | (ga_nov['sessions'] >= 10)]

рдбреЗрдЯрд╛ рдХрд╛ рд╕рдореВрд╣реАрдХрд░рдг рдФрд░ рдПрдХрддреНрд░реАрдХрд░рдг

рдбреЗрдЯрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдореЗрдВ рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рдСрдкрд░реЗрд╢рдиреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рд╕рдореВрд╣реАрдХрд░рдг рдФрд░ рдПрдХрддреНрд░реАрдХрд░рдг рд╣реИред

рдбреЗрдЯрд╛ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреМрди рд╕реА рднрд╛рд╖рд╛ рдЪреБрдиреЗрдВ - рдЖрд░ рдпрд╛ рдкрд╛рдпрдерди? рджреЛрдиреЛрдВ! рдкрд╛рдВрдбрд╛ рд╕реЗ рдЯрд┐рдбреАрд╡рд░реНрд╕ рдФрд░ рдбреЗрдЯрд╛.рдЯреЗрдмрд▓ рдФрд░ рд╡рд╛рдкрд╕ рдХреА рдУрд░ рдкрд▓рд╛рдпрди

рдЗрди рдкрд░рд┐рдЪрд╛рд▓рдиреЛрдВ рдХреЛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХрд╛ рд╕рд┐рдВрдЯреИрдХреНрд╕ рд╣рдорд╛рд░реЗ рджреНрд╡рд╛рд░рд╛ рд╕рдореАрдХреНрд╖рд╛ рдХрд┐рдП рдЧрдП рд╕рднреА рдкреИрдХреЗрдЬреЛрдВ рдореЗрдВ рдмрд┐рдЦрд░рд╛ рд╣реБрдЖ рд╣реИред

рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, рд╣рдо рдПрдХ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд░реВрдк рдореЗрдВ рдПрдХ рдбреЗрдЯрд╛рдлрд╝реНрд░реЗрдо рд▓реЗрдВрдЧреЗ рдЯрд╛рдЗрдЯреИрдирд┐рдХ, рдФрд░ рдХреЗрдмрд┐рди рд╢реНрд░реЗрдгреА рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдЯрд┐рдХрдЯреЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдФрд░ рдФрд╕рдд рд▓рд╛рдЧрдд рдХреА рдЧрдгрдирд╛ рдХрд░реЗрдВред

рдЖрд░ рдореЗрдВ рдбреЗрдЯрд╛ рдХрд╛ рд╕рдореВрд╣рди рдФрд░ рдПрдХрддреНрд░реАрдХрд░рдг: рдЯрд┐рдбреАрд╡рд░реНрд╕, рдбреАрдкреАрдПрд▓рдЖрдИрдЖрд░

╨Т dplyr рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рд╕рдореВрд╣реАрдХрд░рдг рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ group_by(), рдФрд░ рдПрдХрддреНрд░реАрдХрд░рдг рдХреЗ рд▓рд┐рдП summarise(). рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, dplyr рдХрд╛рд░реНрдпреЛрдВ рдХрд╛ рдПрдХ рдкреВрд░рд╛ рдкрд░рд┐рд╡рд╛рд░ рд╣реИ summarise_*(), рд▓реЗрдХрд┐рди рдЗрд╕ рд▓реЗрдЦ рдХрд╛ рдЙрджреНрджреЗрд╢реНрдп рдореВрд▓ рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рдХреА рддреБрд▓рдирд╛ рдХрд░рдирд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рд╣рдо рдРрд╕реЗ рдЬрдВрдЧрд▓ рдореЗрдВ рдирд╣реАрдВ рдЬрд╛рдПрдВрдЧреЗред

рдмреБрдирд┐рдпрд╛рджреА рдПрдХрддреНрд░реАрдХрд░рдг рдХрд╛рд░реНрдп:

  • sum() - рд╕рд╛рд░рд╛рдВрд╢
  • min() / max() тАУ рдиреНрдпреВрдирддрдо рдФрд░ рдЕрдзрд┐рдХрддрдо рдореВрд▓реНрдп
  • mean() - рдФрд╕рдд
  • median() - рдордзреНрдпрд┐рдХрд╛
  • length() - рдорд╛рддреНрд░рд╛

R: dplyr рдореЗрдВ рд╕рдореВрд╣рди рдФрд░ рдПрдХрддреНрд░реАрдХрд░рдг

## dplyr
### ╨│╤А╤Г╨┐╨┐╨╕╤А╨╛╨▓╨║╨░ ╨╕ ╨░╨│╤А╨╡╨│╨░╤Ж╨╕╤П ╤Б╤В╤А╨╛╨║
group_by(titanic, Pclass) %>%
  summarise(passangers = length(PassengerId),
            avg_price  = mean(Fare))

рд╕рдорд╛рд░реЛрд╣ рдореЗрдВ group_by() рд╣рдордиреЗ рддрд╛рд▓рд┐рдХрд╛ рдХреЛ рдкрд╣рд▓реЗ рддрд░реНрдХ рдХреЗ рд░реВрдк рдореЗрдВ рдкрд╛рд░рд┐рдд рдХрд┐рдпрд╛ рдЯрд╛рдЗрдЯреИрдирд┐рдХ, рдФрд░ рдлрд┐рд░ рдлрд╝реАрд▓реНрдб рдХрд╛ рд╕рдВрдХреЗрдд рджрд┐рдпрд╛ рдкрдХреНрд▓рд╛рд╕, рдЬрд┐рд╕рдХреЗ рджреНрд╡рд╛рд░рд╛ рд╣рдо рдЕрдкрдиреА рддрд╛рд▓рд┐рдХрд╛ рдХреЛ рд╕рдореВрд╣реАрдХреГрдд рдХрд░реЗрдВрдЧреЗред рдСрдкрд░реЗрдЯрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЗрд╕ рдСрдкрд░реЗрд╢рди рдХрд╛ рдкрд░рд┐рдгрд╛рдо %>% рдлрд╝рдВрдХреНрд╢рди рдХреЗ рдкрд╣рд▓реЗ рддрд░реНрдХ рдХреЗ рд░реВрдк рдореЗрдВ рдкрд╛рд░рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ summarise(), рдФрд░ 2 рдФрд░ рдлрд╝реАрд▓реНрдб рдЬреЛрдбрд╝реЗ: рдпрд╛рддреНрд░рд┐рдпреЛрдВ ╨╕ avg_price. рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ length() рдЯрд┐рдХрдЯреЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдХреА рдЧрдгрдирд╛ рдХреА, рдФрд░ рджреВрд╕рд░реЗ рдореЗрдВ рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ mean() рдФрд╕рдд рдЯрд┐рдХрдЯ рдореВрд▓реНрдп рдкреНрд░рд╛рдкреНрдд рд╣реБрдЖред

рдЖрд░ рдореЗрдВ рдбреЗрдЯрд╛ рдХрд╛ рд╕рдореВрд╣рди рдФрд░ рдПрдХрддреНрд░реАрдХрд░рдг: рдбреЗрдЯрд╛.рдЯреЗрдмрд▓

╨Т data.table рддрд░реНрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдПрдХрддреНрд░реАрдХрд░рдг рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ j рдЬрд┐рд╕рдХрд╛ рд╡рд░реНрдЧрд╛рдХрд╛рд░ рдХреЛрд╖реНрдардХреЛрдВ рдореЗрдВ рдФрд░ рд╕рдореВрд╣реАрдХрд░рдг рдХреЗ рд▓рд┐рдП рджреВрд╕рд░рд╛ рд╕реНрдерд╛рди рд╣реИ by рдпрд╛ keybyрдЬрд┐рдирдХрд╛ рддреАрд╕рд░рд╛ рд╕реНрдерд╛рди рд╣реИред

рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ рдПрдХрддреНрд░реАрдХрд░рдг рдХрд╛рд░реНрдпреЛрдВ рдХреА рд╕реВрдЪреА рд╡рд░реНрдгрд┐рдд рдХреЗ рд╕рдорд╛рди рд╣реИ dplyr, рдХреНрдпреЛрдВрдХрд┐ рдпреЗ рдореВрд▓ R рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреЗ рдлрд╝рдВрдХреНрд╢рди рд╣реИрдВред

рдЖрд░ рдореЗрдВ рд╕рдореВрд╣реАрдХрд░рдг рдФрд░ рдПрдХрддреНрд░реАрдХрд░рдг: рдбреЗрдЯрд╛.рдЯреЗрдмрд▓

## data.table
### ╤Д╨╕╨╗╤М╤В╤А╨░╤Ж╨╕╤П ╤Б╤В╤А╨╛╨║ ╨┐╨╛ ╨╛╨┤╨╜╨╛╨╝╤Г ╤Г╤Б╨╗╨╛╨▓╨╕╤О
titanic[, .(passangers = length(PassengerId),
            avg_price  = mean(Fare)),
        by = Pclass]

рдкрд╛рдпрдерди рдореЗрдВ рдбреЗрдЯрд╛ рдХрд╛ рд╕рдореВрд╣рди рдФрд░ рдПрдХрддреНрд░реАрдХрд░рдг: рдкрд╛рдВрдбрд╛

рдореЗрдВ рд╕рдореВрд╣ рдмрдирд╛рдирд╛ pandas рдХреЗ рд╕рдорд╛рди dplyr, рд▓реЗрдХрд┐рди рдПрдХрддреНрд░реАрдХрд░рдг рд╕рдорд╛рди рдирд╣реАрдВ рд╣реИ dplyr рдмрд┐рд▓реНрдХреБрд▓ рдирд╣реАрдВ data.table.

рд╕рдореВрд╣ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╡рд┐рдзрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ groupby(), рдЬрд┐рд╕рдореЗрдВ рдЖрдкрдХреЛ рдХреЙрд▓рдо рдХреА рдПрдХ рд╕реВрдЪреА рдкрд╛рд╕ рдХрд░рдиреА рд╣реЛрдЧреА рдЬрд┐рд╕рдХреЗ рджреНрд╡рд╛рд░рд╛ рдбреЗрдЯрд╛рдлрд╝реНрд░реЗрдо рдХреЛ рд╕рдореВрд╣реАрдХреГрдд рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред

рдПрдХрддреНрд░реАрдХрд░рдг рдХреЗ рд▓рд┐рдП рдЖрдк рд╡рд┐рдзрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ agg()рдЬреЛ рдПрдХ рд╢рдмреНрджрдХреЛрд╢ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░рддрд╛ рд╣реИ. рд╢рдмреНрджрдХреЛрд╢ рдХреБрдВрдЬрд┐рдпрд╛рдБ рд╡реЗ рдХреЙрд▓рдо рд╣реИрдВ рдЬрд┐рди рдкрд░ рдЖрдк рдПрдХрддреНрд░реАрдХрд░рдг рдлрд╝рдВрдХреНрд╢рди рд▓рд╛рдЧреВ рдХрд░реЗрдВрдЧреЗ, рдФрд░ рдорд╛рди рдПрдХрддреНрд░реАрдХрд░рдг рдлрд╝рдВрдХреНрд╢рди рдХреЗ рдирд╛рдо рд╣реИрдВред

рдПрдХрддреНрд░реАрдХрд░рдг рдХрд╛рд░реНрдп:

  • sum() - рд╕рд╛рд░рд╛рдВрд╢
  • min() / max() тАУ рдиреНрдпреВрдирддрдо рдФрд░ рдЕрдзрд┐рдХрддрдо рдореВрд▓реНрдп
  • mean() - рдФрд╕рдд
  • median() - рдордзреНрдпрд┐рдХрд╛
  • count() - рдорд╛рддреНрд░рд╛

рд╕рдорд╛рд░реЛрд╣ reset_index() рдиреАрдЪреЗ рджрд┐рдП рдЧрдП рдЙрджрд╛рд╣рд░рдг рдореЗрдВ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдиреЗрд╕реНрдЯреЗрдб рдЗрдВрдбреЗрдХреНрд╕ рдХреЛ рд░реАрд╕реЗрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ pandas рдбреЗрдЯрд╛ рдПрдХрддреНрд░реАрдХрд░рдг рдХреЗ рдмрд╛рдж рдбрд┐рдлрд╝реЙрд▓реНрдЯред

рдкреНрд░рддреАрдХ рдЖрдкрдХреЛ рдЕрдЧрд▓реА рдкрдВрдХреНрддрд┐ рдореЗрдВ рдЬрд╛рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред

рдкрд╛рдпрдерди рдореЗрдВ рд╕рдореВрд╣реАрдХрд░рдг рдФрд░ рдПрдХрддреНрд░реАрдХрд░рдг: рдкрд╛рдВрдбрд╛

# ╨│╤А╤Г╨┐╨┐╨╕╤А╨╛╨▓╨║╨░ ╨╕ ╨░╨│╤А╨╡╨│╨░╤Ж╨╕╤П ╨┤╨░╨╜╨╜╤Л╤Е
titanic.groupby(["Pclass"]).
    agg({'PassengerId': 'count', 'Fare': 'mean'}).
        reset_index()

рддрд╛рд▓рд┐рдХрд╛рдУрдВ рдХрд╛ рд▓рдВрдмрд╡рдд рдЬреБрдбрд╝рд╛рд╡

рдПрдХ рдСрдкрд░реЗрд╢рди рдЬрд┐рд╕рдореЗрдВ рдЖрдк рдПрдХ рд╣реА рд╕рдВрд░рдЪрдирд╛ рдХреА рджреЛ рдпрд╛ рджреЛ рд╕реЗ рдЕрдзрд┐рдХ рддрд╛рд▓рд┐рдХрд╛рдУрдВ рдХреЛ рдЬреЛрдбрд╝рддреЗ рд╣реИрдВред рд╣рдорд╛рд░реЗ рджреНрд╡рд╛рд░рд╛ рд▓реЛрдб рдХрд┐рдП рдЧрдП рдбреЗрдЯрд╛ рдореЗрдВ рддрд╛рд▓рд┐рдХрд╛рдПрдБ рд╣реИрдВ ga_nov ╨╕ ga_dec. рдпреЗ рддрд╛рд▓рд┐рдХрд╛рдПрдБ рд╕рдВрд░рдЪрдирд╛ рдореЗрдВ рд╕рдорд╛рди рд╣реИрдВ, рдЕрд░реНрдерд╛рддреНред рд╕рдорд╛рди рдХреЙрд▓рдо рд╣реИрдВ, рдФрд░ рдЗрди рдХреЙрд▓рдореЛрдВ рдореЗрдВ рдбреЗрдЯрд╛ рдкреНрд░рдХрд╛рд░ рд╣реИрдВред

рдбреЗрдЯрд╛ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреМрди рд╕реА рднрд╛рд╖рд╛ рдЪреБрдиреЗрдВ - рдЖрд░ рдпрд╛ рдкрд╛рдпрдерди? рджреЛрдиреЛрдВ! рдкрд╛рдВрдбрд╛ рд╕реЗ рдЯрд┐рдбреАрд╡рд░реНрд╕ рдФрд░ рдбреЗрдЯрд╛.рдЯреЗрдмрд▓ рдФрд░ рд╡рд╛рдкрд╕ рдХреА рдУрд░ рдкрд▓рд╛рдпрди

рдпрд╣ рдирд╡рдВрдмрд░ рдФрд░ рджрд┐рд╕рдВрдмрд░ рдорд╣реАрдиреЗ рдХреЗ рд▓рд┐рдП Google Analytics рдХрд╛ рдЕрдкрд▓реЛрдб рд╣реИ, рдЗрд╕ рдЕрдиреБрднрд╛рдЧ рдореЗрдВ рд╣рдо рдЗрд╕ рдбреЗрдЯрд╛ рдХреЛ рдПрдХ рддрд╛рд▓рд┐рдХрд╛ рдореЗрдВ рд╕рдВрдпреЛрдЬрд┐рдд рдХрд░реЗрдВрдЧреЗред

рдЖрд░ рдореЗрдВ рддрд╛рд▓рд┐рдХрд╛рдУрдВ рдХреЛ рд▓рдВрдмрд╡рдд рд░реВрдк рд╕реЗ рдЬреЛрдбрд╝рдирд╛: рдЯрд┐рдбреАрд╡рд░реНрд╕, рдбреАрдкреАрдПрд▓рдЖрдИрдЖрд░

╨Т dplyr рдЖрдк рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ 2 рддрд╛рд▓рд┐рдХрд╛рдУрдВ рдХреЛ рдПрдХ рдореЗрдВ рдЬреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВ bind_rows(), рддрд╛рд▓рд┐рдХрд╛рдУрдВ рдХреЛ рдЕрдкрдиреЗ рддрд░реНрдХреЛрдВ рдХреЗ рд░реВрдк рдореЗрдВ рдкрд╛рд░рд┐рдд рдХрд░рдирд╛ред

R: dplyr рдореЗрдВ рдкрдВрдХреНрддрд┐рдпреЛрдВ рдХреЛ рдлрд╝рд┐рд▓реНрдЯрд░ рдХрд░рдирд╛

# ╨Т╨╡╤А╤В╨╕╨║╨░╨╗╤М╨╜╨╛╨╡ ╨╛╨▒╤К╨╡╨┤╨╕╨╜╨╡╨╜╨╕╨╡ ╤В╨░╨▒╨╗╨╕╤Ж
## dplyr
bind_rows(ga_nov, ga_dec)

R: data.table рдореЗрдВ рддрд╛рд▓рд┐рдХрд╛рдУрдВ рдХреЛ рд▓рдВрдмрд╡рдд рд░реВрдк рд╕реЗ рдЬреЛрдбрд╝рдирд╛

рдЗрд╕рдореЗрдВ рдХреБрдЫ рднреА рдЬрдЯрд┐рд▓ рдирд╣реАрдВ рд╣реИ, рдЖрдЗрдП рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ rbind().

R рдореЗрдВ рдкрдВрдХреНрддрд┐рдпреЛрдВ рдХреЛ рдлрд╝рд┐рд▓реНрдЯрд░ рдХрд░рдирд╛: data.table

## data.table
rbind(ga_nov, ga_dec)

рдкрд╛рдпрдерди рдореЗрдВ рддрд╛рд▓рд┐рдХрд╛рдУрдВ рдХреЛ рд▓рдВрдмрд╡рдд рд░реВрдк рд╕реЗ рдЬреЛрдбрд╝рдирд╛: рдкрд╛рдВрдбрд╛

╨Т pandas рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рддрд╛рд▓рд┐рдХрд╛рдУрдВ рдХреЛ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ concat(), рдЬрд┐рд╕рдореЗрдВ рдЖрдкрдХреЛ рдлрд╝реНрд░реЗрдореЛрдВ рдХреЛ рд╕рдВрдпреЛрдЬрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдирдХреА рдПрдХ рд╕реВрдЪреА рдкрд╛рд╕ рдХрд░рдиреА рд╣реЛрдЧреАред

рдкрд╛рдпрдерди рдореЗрдВ рд╕реНрдЯреНрд░рд┐рдВрдЧреНрд╕ рдХреЛ рдлрд╝рд┐рд▓реНрдЯрд░ рдХрд░рдирд╛: рдкрд╛рдВрдбрд╛

# ╨▓╨╡╤А╤В╨╕╨║╨░╨╗╤М╨╜╨╛╨╡ ╨╛╨▒╤К╨╡╨┤╨╕╨╜╨╡╨╜╨╕╨╡ ╤В╨░╨▒╨╗╨╕╤Ж
pd.concat([ga_nov, ga_dec])

рддрд╛рд▓рд┐рдХрд╛рдУрдВ рдХрд╛ рдХреНрд╖реИрддрд┐рдЬ рдЬреБрдбрд╝рд╛рд╡

рдПрдХ рдСрдкрд░реЗрд╢рди рдЬрд┐рд╕рдореЗрдВ рдХреБрдВрдЬреА рджреНрд╡рд╛рд░рд╛ рджреВрд╕рд░реЗ рд╕реЗ рдХреЙрд▓рдо рдХреЛ рдкрд╣рд▓реА рддрд╛рд▓рд┐рдХрд╛ рдореЗрдВ рдЬреЛрдбрд╝рд╛ рдЬрд╛рддрд╛ рд╣реИред рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдЕрдХреНрд╕рд░ рдХрд┐рд╕реА рддрдереНрдп рддрд╛рд▓рд┐рдХрд╛ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдмрд┐рдХреНрд░реА рдбреЗрдЯрд╛ рд╡рд╛рд▓реА рддрд╛рд▓рд┐рдХрд╛) рдХреЛ рдХреБрдЫ рд╕рдВрджрд░реНрдн рдбреЗрдЯрд╛ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдХрд┐рд╕реА рдЙрддреНрдкрд╛рдж рдХреА рд▓рд╛рдЧрдд) рдХреЗ рд╕рд╛рде рд╕рдореГрджреНрдз рдХрд░рддреЗ рд╕рдордп рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

рдбреЗрдЯрд╛ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреМрди рд╕реА рднрд╛рд╖рд╛ рдЪреБрдиреЗрдВ - рдЖрд░ рдпрд╛ рдкрд╛рдпрдерди? рджреЛрдиреЛрдВ! рдкрд╛рдВрдбрд╛ рд╕реЗ рдЯрд┐рдбреАрд╡рд░реНрд╕ рдФрд░ рдбреЗрдЯрд╛.рдЯреЗрдмрд▓ рдФрд░ рд╡рд╛рдкрд╕ рдХреА рдУрд░ рдкрд▓рд╛рдпрди

рдЬреЛрдбрд╝ рдХрдИ рдкреНрд░рдХрд╛рд░ рдХреЗ рд╣реЛрддреЗ рд╣реИрдВ:

рдбреЗрдЯрд╛ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреМрди рд╕реА рднрд╛рд╖рд╛ рдЪреБрдиреЗрдВ - рдЖрд░ рдпрд╛ рдкрд╛рдпрдерди? рджреЛрдиреЛрдВ! рдкрд╛рдВрдбрд╛ рд╕реЗ рдЯрд┐рдбреАрд╡рд░реНрд╕ рдФрд░ рдбреЗрдЯрд╛.рдЯреЗрдмрд▓ рдФрд░ рд╡рд╛рдкрд╕ рдХреА рдУрд░ рдкрд▓рд╛рдпрди

рдкрд╣рд▓реЗ рд╕реЗ рд▓реЛрдб рдХреА рдЧрдИ рддрд╛рд▓рд┐рдХрд╛ рдореЗрдВ рдЯрд╛рдЗрдЯреИрдирд┐рдХ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдПрдХ рдХреЙрд▓рдо рд╣реИ рд▓рд┐рдВрдЧ, рдЬреЛ рдпрд╛рддреНрд░реА рдХреЗ рд▓рд┐рдВрдЧ рдХреЛрдб рд╕реЗ рдореЗрд▓ рдЦрд╛рддрд╛ рд╣реИ:

1 - рд╕реНрддреНрд░реА
2 - рдкреБрд░реБрд╖

рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рд╣рдордиреЗ рдПрдХ рддрд╛рд▓рд┐рдХрд╛ - рдПрдХ рд╕рдВрджрд░реНрдн рдкреБрд╕реНрддрдХ рднреА рдмрдирд╛рдИ рд╣реИ рд▓рд┐рдВрдЧ. рдпрд╛рддреНрд░рд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдВрдЧ рдкрд░ рдбреЗрдЯрд╛ рдХреА рдЕрдзрд┐рдХ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рдкреНрд░рд╕реНрддреБрддрд┐ рдХреЗ рд▓рд┐рдП, рд╣рдореЗрдВ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рд╕реЗ рд▓рд┐рдВрдЧ рдХрд╛ рдирд╛рдо рдЬреЛрдбрд╝рдирд╛ рд╣реЛрдЧрд╛ рд▓рд┐рдВрдЧ рдореЗрдЬ рдкрд░ рдЯрд╛рдЗрдЯреИрдирд┐рдХ.

рдХреНрд╖реИрддрд┐рдЬ рддрд╛рд▓рд┐рдХрд╛ рдЖрд░ рдореЗрдВ рд╢рд╛рдорд┐рд▓ рд╣реЛрддреА рд╣реИ: рдЯрд┐рдбреАрд╡рд░реНрд╕, рдбреАрдкреАрдПрд▓рдЖрдИрдЖрд░

╨Т dplyr рдХреНрд╖реИрддрд┐рдЬ рдЬреБрдбрд╝рд╛рд╡ рдХреЗ рд▓рд┐рдП рдХрд╛рд░реНрдпреЛрдВ рдХрд╛ рдПрдХ рдкреВрд░рд╛ рдкрд░рд┐рд╡рд╛рд░ рд╣реИ:

  • inner_join()
  • left_join()
  • right_join()
  • full_join()
  • semi_join()
  • nest_join()
  • anti_join()

рдореЗрд░реЗ рдЕрднреНрдпрд╛рд╕ рдореЗрдВ рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ left_join().

рдкрд╣рд▓реЗ рджреЛ рддрд░реНрдХреЛрдВ рдХреЗ рд░реВрдк рдореЗрдВ, рдКрдкрд░ рд╕реВрдЪреАрдмрджреНрдз рдлрд╝рдВрдХреНрд╢рди рдЬреБрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП рджреЛ рддрд╛рд▓рд┐рдХрд╛рдПрдБ рд▓реЗрддреЗ рд╣реИрдВ, рдФрд░ рддреАрд╕рд░реЗ рддрд░реНрдХ рдХреЗ рд░реВрдк рдореЗрдВ by рд╢рд╛рдорд┐рд▓ рд╣реЛрдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдкрдХреЛ рдХреЙрд▓рдо рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдиреЗ рд╣реЛрдВрдЧреЗ.

R: dplyr рдореЗрдВ рдХреНрд╖реИрддрд┐рдЬ рддрд╛рд▓рд┐рдХрд╛ рдЬреБрдбрд╝реЗрдВ

# ╨╛╨▒╤К╨╡╨┤╨╕╨╜╤П╨╡╨╝ ╤В╨░╨▒╨╗╨╕╤Ж╤Л
left_join(titanic, gender,
          by = c("Sex" = "id"))

R: data.table рдореЗрдВ рддрд╛рд▓рд┐рдХрд╛рдУрдВ рдХрд╛ рдХреНрд╖реИрддрд┐рдЬ рдЬреБрдбрд╝рд╛рд╡

╨Т data.table рдЖрдкрдХреЛ рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдХреБрдВрдЬреА рджреНрд╡рд╛рд░рд╛ рддрд╛рд▓рд┐рдХрд╛рдУрдВ рдХреЛ рдЬреЛрдбрд╝рдирд╛ рд╣реЛрдЧрд╛ merge().

data.table рдореЗрдВ рдорд░реНрдЬ() рдлрд╝рдВрдХреНрд╢рди рдХреЗ рд▓рд┐рдП рддрд░реНрдХ

  • x, y - рдЬреБрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП рддрд╛рд▓рд┐рдХрд╛рдПрдБ
  • рджреНрд╡рд╛рд░рд╛ - рдпрджрд┐ рджреЛрдиреЛрдВ рддрд╛рд▓рд┐рдХрд╛рдУрдВ рдореЗрдВ рдПрдХ рд╣реА рдирд╛рдо рд╣реИ рддреЛ рд╡рд╣ рдХреЙрд▓рдо рдЬреБрдбрд╝рдиреЗ рдХреА рдХреБрдВрдЬреА рд╣реИ
  • by.x, by.y - рдорд░реНрдЬ рдХрд┐рдП рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рдХреЙрд▓рдо рдХреЗ рдирд╛рдо, рдпрджрд┐ рддрд╛рд▓рд┐рдХрд╛рдУрдВ рдореЗрдВ рдЙрдирдХреЗ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдирд╛рдо рд╣реИрдВ
  • all, all.x, all.y - рдЬреНрд╡рд╛рдЗрди рдкреНрд░рдХрд╛рд░, all рджреЛрдиреЛрдВ рддрд╛рд▓рд┐рдХрд╛рдУрдВ рд╕реЗ рд╕рднреА рдкрдВрдХреНрддрд┐рдпреЛрдВ рдХреЛ рд▓реМрдЯрд╛рдПрдЧрд╛, all.x LEFT JOIN рдСрдкрд░реЗрд╢рди рд╕реЗ рдореЗрд▓ рдЦрд╛рддрд╛ рд╣реИ (рдкрд╣рд▓реА рддрд╛рд▓рд┐рдХрд╛ рдХреА рд╕рднреА рдкрдВрдХреНрддрд┐рдпреЛрдВ рдХреЛ рдЫреЛрдбрд╝ рджреЗрдЧрд╛), all.y - рд╕реЗ рдореЗрд▓ рдЦрд╛рддрд╛ рд╣реИ рд░рд╛рдЗрдЯ рдЬреЙрдЗрди рдСрдкрд░реЗрд╢рди (рджреВрд╕рд░реА рддрд╛рд▓рд┐рдХрд╛ рдХреА рд╕рднреА рдкрдВрдХреНрддрд┐рдпреЛрдВ рдХреЛ рдЫреЛрдбрд╝ рджреЗрдЧрд╛)ред

R: data.table рдореЗрдВ рддрд╛рд▓рд┐рдХрд╛рдУрдВ рдХрд╛ рдХреНрд╖реИрддрд┐рдЬ рдЬреБрдбрд╝рд╛рд╡

# ╨╛╨▒╤К╨╡╨┤╨╕╨╜╤П╨╡╨╝ ╤В╨░╨▒╨╗╨╕╤Ж╤Л
merge(titanic, gender, by.x = "Sex", by.y = "id", all.x = T)

рдкрд╛рдпрдерди рдореЗрдВ рдХреНрд╖реИрддрд┐рдЬ рддрд╛рд▓рд┐рдХрд╛ рд╢рд╛рдорд┐рд▓ рдХрд░реЗрдВ: рдкрд╛рдВрдбрд╛

рд╕рд╛рде рд╣реА рдЗрд╕рдореЗрдВ data.tableрдореЗрдВ pandas рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рддрд╛рд▓рд┐рдХрд╛рдУрдВ рдХреЛ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ merge().

рдкрд╛рдВрдбрд╛ рдореЗрдВ рдорд░реНрдЬ() рдлрд╝рдВрдХреНрд╢рди рдХреЗ рддрд░реНрдХ

  • рдХреИрд╕реЗ - рдХрдиреЗрдХреНрд╢рди рдкреНрд░рдХрд╛рд░: рдмрд╛рдПрдБ, рджрд╛рдПрдБ, рдмрд╛рд╣рд░реА, рднреАрддрд░реА
  • on - рд╡рд╣ рдХреЙрд▓рдо рдЬреЛ рдПрдХ рдХреБрдВрдЬреА рд╣реИ рдпрджрд┐ рдЙрд╕рдХрд╛ рдирд╛рдо рджреЛрдиреЛрдВ рддрд╛рд▓рд┐рдХрд╛рдУрдВ рдореЗрдВ рд╕рдорд╛рди рд╣реИ
  • рдмрд╛рдПрдБ_рдкрд░, рджрд╛рдПрдБ_рдкрд░ - рдХреБрдВрдЬреА рд╕реНрддрдВрднреЛрдВ рдХреЗ рдирд╛рдо, рдпрджрд┐ рддрд╛рд▓рд┐рдХрд╛рдУрдВ рдореЗрдВ рдЙрдирдХреЗ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдирд╛рдо рд╣реИрдВ

рдкрд╛рдпрдерди рдореЗрдВ рдХреНрд╖реИрддрд┐рдЬ рддрд╛рд▓рд┐рдХрд╛ рд╢рд╛рдорд┐рд▓ рдХрд░реЗрдВ: рдкрд╛рдВрдбрд╛

# ╨╛╨▒╤К╨╡╨┤╨╕╨╜╤П╨╡╨╝ ╨┐╨╛ ╨║╨╗╤О╤З╤Г
titanic.merge(gender, how = "left", left_on = "Sex", right_on = "id")

рдмреБрдирд┐рдпрд╛рджреА рд╡рд┐рдВрдбреЛ рдлрд╝рдВрдХреНрд╢рдВрд╕ рдФрд░ рдкрд░рд┐рдХрд▓рд┐рдд рдХреЙрд▓рдо

рд╡рд┐рдВрдбреЛ рдлрд╝рдВрдХреНрд╢рдВрд╕ рдПрдХрддреНрд░реАрдХрд░рдг рдлрд╝рдВрдХреНрд╢рдВрд╕ рдХреЗ рдЕрд░реНрде рдореЗрдВ рд╕рдорд╛рди рд╣реИрдВ, рдФрд░ рдЕрдХреНрд╕рд░ рдбреЗрдЯрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдореЗрдВ рднреА рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВред рд▓реЗрдХрд┐рди рдПрдХрддреНрд░реАрдХрд░рдг рдлрд╝рдВрдХреНрд╢рдВрд╕ рдХреЗ рд╡рд┐рдкрд░реАрдд, рд╡рд┐рдВрдбреЛ рдлрд╝рдВрдХреНрд╢рдВрд╕ рдЖрдЙрдЯрдЧреЛрдЗрдВрдЧ рдбреЗрдЯрд╛рдлрд╝реНрд░реЗрдо рдХреА рдкрдВрдХреНрддрд┐рдпреЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдХреЛ рдирд╣реАрдВ рдмрджрд▓рддреЗ рд╣реИрдВред

рдбреЗрдЯрд╛ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреМрди рд╕реА рднрд╛рд╖рд╛ рдЪреБрдиреЗрдВ - рдЖрд░ рдпрд╛ рдкрд╛рдпрдерди? рджреЛрдиреЛрдВ! рдкрд╛рдВрдбрд╛ рд╕реЗ рдЯрд┐рдбреАрд╡рд░реНрд╕ рдФрд░ рдбреЗрдЯрд╛.рдЯреЗрдмрд▓ рдФрд░ рд╡рд╛рдкрд╕ рдХреА рдУрд░ рдкрд▓рд╛рдпрди

рдЕрдирд┐рд╡рд╛рд░реНрдп рд░реВрдк рд╕реЗ, рд╡рд┐рдВрдбреЛ рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ, рд╣рдо рдЖрдиреЗ рд╡рд╛рд▓реЗ рдбреЗрдЯрд╛рдлрд╝реНрд░реЗрдо рдХреЛ рдХреБрдЫ рдорд╛рдирджрдВрдбреЛрдВ рдХреЗ рдЕрдиреБрд╕рд╛рд░ рднрд╛рдЧреЛрдВ рдореЗрдВ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд░рддреЗ рд╣реИрдВ, рдЕрд░реНрдерд╛рддред рдХрд┐рд╕реА рдлрд╝реАрд▓реНрдб рдпрд╛ рдХрдИ рдлрд╝реАрд▓реНрдб рдХреЗ рдорд╛рди рд╕реЗред рдФрд░ рд╣рдо рдкреНрд░рддреНрдпреЗрдХ рд╡рд┐рдВрдбреЛ рдкрд░ рдЕрдВрдХрдЧрдгрд┐рддреАрдп рд╕рдВрдХреНрд░рд┐рдпрд╛рдПрдБ рдХрд░рддреЗ рд╣реИрдВред рдЗрди рдкрд░рд┐рдЪрд╛рд▓рдиреЛрдВ рдХрд╛ рдкрд░рд┐рдгрд╛рдо рдкреНрд░рддреНрдпреЗрдХ рдкрдВрдХреНрддрд┐ рдореЗрдВ рд▓реМрдЯрд╛рдпрд╛ рдЬрд╛рдПрдЧрд╛, рдЕрд░реНрдерд╛рддред рддрд╛рд▓рд┐рдХрд╛ рдореЗрдВ рдкрдВрдХреНрддрд┐рдпреЛрдВ рдХреА рдХреБрд▓ рд╕рдВрдЦреНрдпрд╛ рдмрджрд▓реЗ рдмрд┐рдирд╛ред

рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЖрдЗрдП рддрд╛рд▓рд┐рдХрд╛ рд▓реЗрдВ рдЯрд╛рдЗрдЯреИрдирд┐рдХ. рд╣рдо рдЧрдгрдирд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдкреНрд░рддреНрдпреЗрдХ рдЯрд┐рдХрдЯ рдХреА рдХреАрдордд рдЙрд╕рдХреЗ рдХреЗрдмрд┐рди рдХреНрд▓рд╛рд╕ рдХреЗ рднреАрддрд░ рдХрд┐рддрдиреЗ рдкреНрд░рддрд┐рд╢рдд рдереАред

рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдореЗрдВ рдкреНрд░рддреНрдпреЗрдХ рдкрдВрдХреНрддрд┐ рдореЗрдВ рд╡рд░реНрддрдорд╛рди рдХреЗрдмрд┐рди рд╢реНрд░реЗрдгреА рдХреЗ рдЯрд┐рдХрдЯ рдХреА рдХреБрд▓ рд▓рд╛рдЧрдд рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдЬрд┐рд╕рд╕реЗ рдЗрд╕ рдкрдВрдХреНрддрд┐ рдХрд╛ рдЯрд┐рдХрдЯ рд╕рдВрдмрдВрдзрд┐рдд рд╣реИ, рдлрд┐рд░ рдкреНрд░рддреНрдпреЗрдХ рдЯрд┐рдХрдЯ рдХреА рд▓рд╛рдЧрдд рдХреЛ рдЙрд╕реА рдХреЗрдмрд┐рди рд╢реНрд░реЗрдгреА рдХреЗ рд╕рднреА рдЯрд┐рдХрдЯреЛрдВ рдХреА рдХреБрд▓ рд▓рд╛рдЧрдд рд╕реЗ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд░реЗрдВред .

рдЖрд░ рдореЗрдВ рд╡рд┐рдВрдбреЛ рдлрд╝рдВрдХреНрд╢рдВрд╕: рдЯрд┐рдбреАрд╡рд░реНрд╕, рдбреАрдкреАрдПрд▓рдЖрдИрдЖрд░

рдкрдВрдХреНрддрд┐ рд╕рдореВрд╣рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдмрд┐рдирд╛, рдирдП рдХреЙрд▓рдо рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП dplyr рдХрд╛рд░реНрдп рдХрд░рддрд╛ рд╣реИ mutate().

рдЖрдк рдлрд╝реАрд▓реНрдб рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдбреЗрдЯрд╛ рдХреЛ рд╕рдореВрд╣реАрдХреГрдд рдХрд░рдХреЗ рдКрдкрд░ рд╡рд░реНрдгрд┐рдд рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╕рдорд╛рдзрд╛рди рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдкрдХреНрд▓рд╛рд╕ рдФрд░ рдлрд╝реАрд▓реНрдб рдХреЛ рдПрдХ рдирдП рдХреЙрд▓рдо рдореЗрдВ рд╕рд╛рд░рд╛рдВрд╢рд┐рдд рдХрд░реЗрдВ рд▓реЛ. рдЗрд╕рдХреЗ рдмрд╛рдж, рддрд╛рд▓рд┐рдХрд╛ рдХреЛ рдЕрд╕рдореВрд╣реАрдХреГрдд рдХрд░реЗрдВ рдФрд░ рдлрд╝реАрд▓реНрдб рдорд╛рдиреЛрдВ рдХреЛ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд░реЗрдВ рд▓реЛ рдкрд┐рдЫрд▓реЗ рдЪрд░рдг рдореЗрдВ рдХреНрдпрд╛ рд╣реБрдЖ рдерд╛ред

R рдореЗрдВ рд╡рд┐рдВрдбреЛ рдлрд╝рдВрдХреНрд╢рди: dplyr

group_by(titanic, Pclass) %>%
  mutate(Pclass_cost = sum(Fare)) %>%
  ungroup() %>%
  mutate(ticket_fare_rate = Fare / Pclass_cost)

R рдореЗрдВ рд╡рд┐рдВрдбреЛ рдлрд╝рдВрдХреНрд╢рди: рдбреЗрдЯрд╛.рдЯреЗрдмрд▓

рд╕рдорд╛рдзрд╛рди рдПрд▓реНрдЧреЛрд░рд┐рдереНрдо рд╡реИрд╕рд╛ рд╣реА рд░рд╣рддрд╛ рд╣реИ рдЬреИрд╕рд╛ рдХрд┐ рдЗрд╕рдореЗрдВ рд╣реИ dplyr, рд╣рдореЗрдВ рддрд╛рд▓рд┐рдХрд╛ рдХреЛ рдлрд╝реАрд▓реНрдб рдХреЗ рдЕрдиреБрд╕рд╛рд░ рд╡рд┐рдВрдбреЛрдЬрд╝ рдореЗрдВ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдкрдХреНрд▓рд╛рд╕. рдПрдХ рдирдП рдХреЙрд▓рдо рдореЗрдВ рдкреНрд░рддреНрдпреЗрдХ рдкрдВрдХреНрддрд┐ рдХреЗ рдЕрдиреБрд░реВрдк рд╕рдореВрд╣ рдХреЗ рд▓рд┐рдП рд░рд╛рд╢рд┐ рдЖрдЙрдЯрдкреБрдЯ рдХрд░реЗрдВ, рдФрд░ рдПрдХ рдХреЙрд▓рдо рдЬреЛрдбрд╝реЗрдВ рдЬрд┐рд╕рдореЗрдВ рд╣рдо рдЙрд╕рдХреЗ рд╕рдореВрд╣ рдореЗрдВ рдкреНрд░рддреНрдпреЗрдХ рдЯрд┐рдХрдЯ рдХреА рд▓рд╛рдЧрдд рдХреЗ рд╣рд┐рд╕реНрд╕реЗ рдХреА рдЧрдгрдирд╛ рдХрд░рддреЗ рд╣реИрдВред

рдирдпреЗ рдХреЙрд▓рдо рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП data.table рд╕рдВрдЪрд╛рд▓рдХ рдЙрдкрд╕реНрдерд┐рдд :=. рдкреИрдХреЗрдЬ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдХрд┐рд╕реА рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХрд╛ рдПрдХ рдЙрджрд╛рд╣рд░рдг рдиреАрдЪреЗ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ data.table

R рдореЗрдВ рд╡рд┐рдВрдбреЛ рдлрд╝рдВрдХреНрд╢рди: рдбреЗрдЯрд╛.рдЯреЗрдмрд▓

titanic[,c("Pclass_cost","ticket_fare_rate") := .(sum(Fare), Fare / Pclass_cost), 
        by = Pclass]

рдкрд╛рдпрдерди рдореЗрдВ рд╡рд┐рдВрдбреЛ рдлрд╝рдВрдХреНрд╢рдВрд╕: рдкрд╛рдВрдбрд╛

рдирдпрд╛ рдХреЙрд▓рдо рдЬреЛрдбрд╝рдиреЗ рдХрд╛ рдПрдХ рддрд░реАрдХрд╛ pandas - рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ assign(). рдкрдВрдХреНрддрд┐рдпреЛрдВ рдХреЛ рд╕рдореВрд╣реАрдХреГрдд рдХрд┐рдП рдмрд┐рдирд╛, рдХреЗрдмрд┐рди рд╢реНрд░реЗрдгреА рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдЯрд┐рдХрдЯреЛрдВ рдХреА рд▓рд╛рдЧрдд рдХреЛ рд╕рдВрдХреНрд╖реЗрдк рдореЗрдВ рдкреНрд░рд╕реНрддреБрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдо рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВрдЧреЗ transform().

рдиреАрдЪреЗ рдПрдХ рд╕рдорд╛рдзрд╛рди рдХрд╛ рдЙрджрд╛рд╣рд░рдг рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ рдЬрд┐рд╕реЗ рд╣рдо рддрд╛рд▓рд┐рдХрд╛ рдореЗрдВ рдЬреЛрдбрд╝рддреЗ рд╣реИрдВ рдЯрд╛рдЗрдЯреИрдирд┐рдХ рд╡рд╣реА 2 рдХреЙрд▓рдо.

рдкрд╛рдпрдерди рдореЗрдВ рд╡рд┐рдВрдбреЛ рдлрд╝рдВрдХреНрд╢рдВрд╕: рдкрд╛рдВрдбрд╛

titanic.assign(Pclass_cost      =  titanic.groupby('Pclass').Fare.transform(sum),
               ticket_fare_rate = lambda x: x['Fare'] / x['Pclass_cost'])

рдХрд╛рд░реНрдп рдФрд░ рд╡рд┐рдзрд┐рдпрд╛рдБ рдкрддреНрд░рд╛рдЪрд╛рд░ рддрд╛рд▓рд┐рдХрд╛

рдЬрд┐рди рдкреИрдХреЗрдЬреЛрдВ рдкрд░ рд╣рдордиреЗ рд╡рд┐рдЪрд╛рд░ рдХрд┐рдпрд╛ рд╣реИ рдЙрдирдореЗрдВ рдбреЗрдЯрд╛ рдХреЗ рд╕рд╛рде рд╡рд┐рднрд┐рдиреНрди рд╕рдВрдЪрд╛рд▓рди рдХрд░рдиреЗ рдХреЗ рддрд░реАрдХреЛрдВ рдХреЗ рдмреАрдЪ рдкрддреНрд░рд╛рдЪрд╛рд░ рдХреА рдПрдХ рддрд╛рд▓рд┐рдХрд╛ рдиреАрдЪреЗ рджреА рдЧрдИ рд╣реИред

рд╡рд┐рд╡рд░рдг
рд╕рд╛рдл рд╕реБрдерд░рд╛
рдбреЗрдЯрд╛ рддрд╛рд▓рд┐рдХрд╛
рдкрд╛рдВрдбрд╛

рдбреЗрдЯрд╛ рд▓реЛрдб рд╣реЛ рд░рд╣рд╛ рд╣реИ
vroom()/ readr::read_csv() / readr::read_tsv()
fread()
read_csv()

рдбреЗрдЯрд╛рдлрд╝реНрд░реЗрдо рдмрдирд╛рдирд╛
tibble()
data.table()
dict() + from_dict()

рдХреЙрд▓рдо рдХрд╛ рдЪрдпрди рдХрд░рдирд╛
select()
рдмрд╣рд╕ j, рд╡рд░реНрдЧрд╛рдХрд╛рд░ рдХреЛрд╖реНрдардХреЛрдВ рдореЗрдВ рджреВрд╕рд░рд╛ рд╕реНрдерд╛рди
рд╣рдо рд╡рд░реНрдЧрд╛рдХрд╛рд░ рдХреЛрд╖реНрдардХреЛрдВ рдореЗрдВ рдЖрд╡рд╢реНрдпрдХ рд╕реНрддрдВрднреЛрдВ рдХреА рд╕реВрдЪреА рдкрд╛рд╕ рдХрд░рддреЗ рд╣реИрдВ / drop() / filter() / select_dtypes()

рдкрдВрдХреНрддрд┐рдпреЛрдВ рдХреЛ рдлрд╝рд┐рд▓реНрдЯрд░ рдХрд░рдирд╛
filter()
рдмрд╣рд╕ i, рд╡рд░реНрдЧрд╛рдХрд╛рд░ рдХреЛрд╖реНрдардХреЛрдВ рдореЗрдВ рдкреНрд░рдердо рд╕реНрдерд╛рди
рд╣рдо рдлрд╝рд┐рд▓реНрдЯрд░рд┐рдВрдЧ рд╕реНрдерд┐рддрд┐рдпреЛрдВ рдХреЛ рд╡рд░реНрдЧрд╛рдХрд╛рд░ рдХреЛрд╖реНрдардХреЛрдВ рдореЗрдВ рд╕реВрдЪреАрдмрджреНрдз рдХрд░рддреЗ рд╣реИрдВ / filter()

рд╕рдореВрд╣рди рдФрд░ рдПрдХрддреНрд░реАрдХрд░рдг
group_by() + summarise()
рдмрд╣рд╕ j + by
groupby() + agg()

рддрд╛рд▓рд┐рдХрд╛рдУрдВ рдХрд╛ рд▓рдВрдмрд╡рдд рд╕рдВрдШ (рдпреВрдирд┐рдпрди)
bind_rows()
rbind()
concat()

рддрд╛рд▓рд┐рдХрд╛рдУрдВ рдХрд╛ рдХреНрд╖реИрддрд┐рдЬ рдЬреБрдбрд╝рд╛рд╡ (JOIN)
left_join() / *_join()
merge()
merge()

рдмреБрдирд┐рдпрд╛рджреА рд╡рд┐рдВрдбреЛ рдлрд╝рдВрдХреНрд╢рди рдФрд░ рдкрд░рд┐рдХрд▓рд┐рдд рдХреЙрд▓рдо рдЬреЛрдбрд╝рдирд╛
group_by() + mutate()
рдмрд╣рд╕ j рдСрдкрд░реЗрдЯрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ := + рддрд░реНрдХ by
transform() + assign()

рдирд┐рд╖реНрдХрд░реНрд╖

рд╢рд╛рдпрдж рд▓реЗрдЦ рдореЗрдВ рдореИрдВрдиреЗ рдбреЗрдЯрд╛ рдкреНрд░реЛрд╕реЗрд╕рд┐рдВрдЧ рдХреЗ рд╕рдмрд╕реЗ рдЗрд╖реНрдЯрддрдо рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХрд╛ рд╡рд░реНрдгрди рдирд╣реАрдВ рдХрд┐рдпрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдореБрдЭреЗ рдЦреБрд╢реА рд╣реЛрдЧреА рдпрджрд┐ рдЖрдк рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдореЗрдВ рдореЗрд░реА рдЧрд▓рддрд┐рдпреЛрдВ рдХреЛ рд╕реБрдзрд╛рд░рддреЗ рд╣реИрдВ, рдпрд╛ рдЖрд░ / рдкрд╛рдпрдерди рдореЗрдВ рдбреЗрдЯрд╛ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдиреНрдп рддрдХрдиреАрдХреЛрдВ рдХреЗ рд╕рд╛рде рд▓реЗрдЦ рдореЗрдВ рджреА рдЧрдИ рдЬрд╛рдирдХрд╛рд░реА рдХреЛ рдкреВрд░рдХ рдХрд░рддреЗ рд╣реИрдВред

рдЬреИрд╕рд╛ рдХрд┐ рдореИрдВрдиреЗ рдКрдкрд░ рд▓рд┐рдЦрд╛ рд╣реИ, рд▓реЗрдЦ рдХрд╛ рдЙрджреНрджреЗрд╢реНрдп рдХрд┐рд╕реА рдХреА рд░рд╛рдп рдереЛрдкрдирд╛ рдирд╣реАрдВ рдерд╛ рдХрд┐ рдХреМрди рд╕реА рднрд╛рд╖рд╛ рдмреЗрд╣рддрд░ рд╣реИ, рдмрд▓реНрдХрд┐ рджреЛрдиреЛрдВ рднрд╛рд╖рд╛рдУрдВ рдХреЛ рд╕реАрдЦрдиреЗ рдХреЗ рдЕрд╡рд╕рд░ рдХреЛ рд╕рд░рд▓ рдмрдирд╛рдирд╛ рдерд╛, рдпрд╛ рдпрджрд┐ рдЖрд╡рд╢реНрдпрдХ рд╣реЛ, рддреЛ рдЙрдирдХреЗ рдмреАрдЪ рд╕реНрдерд╛рдирд╛рдВрддрд░рдг рдХрд░рдирд╛ рдерд╛ред

рдпрджрд┐ рдЖрдкрдХреЛ рд▓реЗрдЦ рдкрд╕рдВрдж рдЖрдпрд╛, рддреЛ рдореБрдЭреЗ рдЕрдкрдиреЗ рдирдП рдЧреНрд░рд╛рд╣рдХ рдкрд╛рдХрд░ рдЦреБрд╢реА рд╣реЛрдЧреА рдпреВрдЯреНрдпреВрдм ╨╕ рддрд╛рд░ рдЪреИрдирд▓ред

╨Ю╨┐╤А╨╛╤Б

рдЖрдк рдЕрдкрдиреЗ рдХрд╛рдо рдореЗрдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдореЗрдВ рд╕реЗ рдХрд┐рд╕ рдкреИрдХреЗрдЬ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ?

рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдореЗрдВ рдЖрдк рдЕрдкрдиреА рдкрд╕рдВрдж рдХрд╛ рдХрд╛рд░рдг рд▓рд┐рдЦ рд╕рдХрддреЗ рд╣реИрдВред

рдХреЗрд╡рд▓ рдкрдВрдЬреАрдХреГрдд рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд╣реА рд╕рд░реНрд╡реЗрдХреНрд╖рдг рдореЗрдВ рднрд╛рдЧ рд▓реЗ рд╕рдХрддреЗ рд╣реИрдВред рд╕рд╛рдЗрди рдЗрди рдХрд░реЗрдВрдХреГрдкрдпрд╛ред

рдЖрдк рдХрд┐рд╕ рдбреЗрдЯрд╛ рдкреНрд░реЛрд╕реЗрд╕рд┐рдВрдЧ рдкреИрдХреЗрдЬ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ (рдЖрдк рдХрдИ рд╡рд┐рдХрд▓реНрдк рдЪреБрди рд╕рдХрддреЗ рд╣реИрдВ)

  • 45,2% рддрдХ рд╕реБрд╡реНрдпрд╡рд╕реНрдерд┐рдд19

  • 33,3% рддрдХ рдбреЗрдЯрд╛.рдЯреЗрдмрд▓14

  • 54,8% рддрдХ рдкрд╛рдВрдбрд╛23

42 рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдиреЗ рдорддрджрд╛рди рдХрд┐рдпрд╛ред 9 рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЕрдиреБрдкрд╕реНрдерд┐рдд рд░рд╣реЗред

рд╕реНрд░реЛрдд: www.habr.com

рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдЬреЛрдбрд╝реЗрдВ