ื•ื•ืึธืก ืฉืคึผืจืึทืš ืฆื• ืงืœื™ื™ึทื‘ืŸ ืคึฟืึทืจ ืืจื‘ืขื˜ืŸ ืžื™ื˜ ื“ืึทื˜ืŸ - ืจ ืึธื“ืขืจ ืคึผื™ื˜ื”ืึธืŸ? ื‘ื™ื™ื“ืข! ืžื™ื’ืจื™ื™ื˜ื™ื ื’ ืคื•ืŸ ืคึผืึทื ื“ืึทืก ืฆื• ื˜ื™ื™ื“ื•ื•ืขืจืกืข ืื•ืŸ ื“ืึทื˜ืŸ.ื˜ืึทื‘ืœืข ืื•ืŸ ืฆื•ืจื™ืง

ื“ื•ืจืš ื–ื•ื›ืŸ ืคึฟืึทืจ R ืึธื“ืขืจ Python ืื•ื™ืฃ ื“ืขืจ ืื™ื ื˜ืขืจื ืขืฅ, ืื™ืจ ื•ื•ืขื˜ ื’ืขืคึฟื™ื ืขืŸ ืžื™ืœื™ืึทื ื– ืคื•ืŸ ืึทืจื˜ื™ืงืœืขืŸ ืื•ืŸ ืงื™ืœืึธืžืขื˜ืขืจืก ืคื•ืŸ ื“ื™ืกืงื•ืกื™ืขืก ืื•ื™ืฃ ื“ื™ ื˜ืขืžืข ืคื•ืŸ โ€‹โ€‹ื•ื•ืึธืก ืื™ื™ื ืขืจ ืื™ื– ื‘ืขืกืขืจ, ืคืึทืกื˜ืขืจ ืื•ืŸ ืžืขืจ ื‘ืึทืงื•ื•ืขื ืฆื• ืึทืจื‘ืขื˜ืŸ ืžื™ื˜ ื“ืึทื˜ืŸ. ืึธื‘ืขืจ ืœื™ื™ื“ืขืจ, ืึทืœืข ื“ื™ ืึทืจื˜ื™ืงืœืขืŸ ืื•ืŸ ื“ื™ืกืคึผื™ื•ืฅ ื–ืขื ืขืŸ ื ื™ืฉื˜ ืกืคึผืขืฆื™ืขืœ ื ื•ืฆื™ืง.

ื•ื•ืึธืก ืฉืคึผืจืึทืš ืฆื• ืงืœื™ื™ึทื‘ืŸ ืคึฟืึทืจ ืืจื‘ืขื˜ืŸ ืžื™ื˜ ื“ืึทื˜ืŸ - ืจ ืึธื“ืขืจ ืคึผื™ื˜ื”ืึธืŸ? ื‘ื™ื™ื“ืข! ืžื™ื’ืจื™ื™ื˜ื™ื ื’ ืคื•ืŸ ืคึผืึทื ื“ืึทืก ืฆื• ื˜ื™ื™ื“ื•ื•ืขืจืกืข ืื•ืŸ ื“ืึทื˜ืŸ.ื˜ืึทื‘ืœืข ืื•ืŸ ืฆื•ืจื™ืง

ื“ืขืจ ืฆื™ืœ ืคื•ืŸ ื“ืขื ืึทืจื˜ื™ืงืœ ืื™ื– ืฆื• ืคืึทืจื’ืœื™ื™ึทื›ืŸ ื“ื™ ื™ืงืขืจื“ื™ืง ื“ืึทื˜ืŸ ืคึผืจืึทืกืขืกื™ื ื’ ื˜ืขืงื ื™ืงืก ืื™ืŸ ื“ื™ ืžืขืจืกื˜ ืคืึธืœืงืก ืคึผืึทืงืึทื“ื–ืฉืึทื– ืคื•ืŸ ื‘ื™ื™ื“ืข ืฉืคึผืจืึทื›ืŸ. ืื•ืŸ ื”ืขืœืคึผืก ืœื™ื™ืขื ืขืจ ื’ืขืฉื•ื•ื™ื ื“ ื‘ืขืœ ืขืคึผืขืก ื•ื•ืึธืก ื–ื™ื™ ื˜ืึธืŸ ื ื™ื˜ ื•ื•ื™ืกืŸ ื ืึธืš. ืคืืจ ื“ื™ ื•ื•ืืก ืฉืจื™ื™ื‘ืŸ ืื™ืŸ Python, ื–ืขื”ื˜ ืื•ื™ืก ื•ื•ื™ ืื–ื•ื™ ืžืขืŸ ืžืื›ื˜ ื“ืืก ื–ืขืœื‘ืข ืื™ืŸ R, ืื•ืŸ ืคืืจืงืขืจื˜.

ื‘ืขืฉืึทืก ื“ืขื ืึทืจื˜ื™ืงืœ ืžื™ืจ ื•ื•ืขืœืŸ ืึทื ืึทืœื™ื™ื– ื“ื™ ืกื™ื ื˜ืึทืงืก ืคื•ืŸ ื“ื™ ืžืขืจืกื˜ ืคืึธืœืงืก ืคึผืึทืงืึทื“ื–ืฉืึทื– ืื™ืŸ R. ื“ืึธืก ื–ืขื ืขืŸ ื“ื™ ืคึผืึทืงืึทื“ื–ืฉืึทื– ืึทืจื™ื™ึทื ื’ืขืจืขื›ื ื˜ ืื™ืŸ ื“ืขืจ ื‘ื™ื‘ืœื™ืึธื˜ืขืง tidyverseืื•ืŸ ืื•ื™ืš ื“ื™ ืคึผืขืงืœ data.table. ืื•ืŸ ืคืึทืจื’ืœื™ื™ึทื›ืŸ ื–ื™ื™ืขืจ ืกื™ื ื˜ืึทืงืก ืžื™ื˜ pandas, ื“ื™ ืžืขืจืกื˜ ืคืึธืœืงืก ื“ืึทื˜ืŸ ืึทื ืึทืœื™ืกื™ืก ืคึผืขืงืœ ืื™ืŸ ืคึผื™ื˜ื”ืึธืŸ.

ืžื™ืจ ื•ื•ืขืœืŸ ื’ื™ื™ืŸ ืฉืจื™ื˜ ื“ื•ืจืš ืฉืจื™ื˜ ื“ื•ืจืš ื“ื™ ื’ืื ืฆืข ื“ืจืš ืคื•ืŸ ื“ืึทื˜ืŸ ืึทื ืึทืœื™ืกื™ืก ืคื•ืŸ ืœืึธื•ื“ื™ื ื’ ืขืก ืฆื• ื“ื•ืจื›ืคื™ืจืŸ ืึทื ืึทืœื™ืกื™ืก ืคึฟืขื ืฆื˜ืขืจ ืคืึทื ื’ืงืฉืึทื ื– ื ื™ืฆืŸ Python ืื•ืŸ R.

ืฆื•ืคืจื™ื“ืŸ

ื“ืขืจ ืึทืจื˜ื™ืงืœ ืงืขื ืขืŸ ื–ื™ื™ืŸ ื’ืขื•ื•ื™ื™ื ื˜ ื•ื•ื™ ืึท ืึธืคึผื ืึทืจืŸ ื‘ืœืึทื˜ ืื•ื™ื‘ ืื™ืจ ื”ืึธื˜ ืคืืจื’ืขืกืŸ ื•ื•ื™ ืฆื• ื“ื•ืจื›ืคื™ืจืŸ ืขื˜ืœืขื›ืข ื“ืึทื˜ืŸ ืคึผืจืึทืกืขืกื™ื ื’ ืึธืคึผืขืจืึทืฆื™ืข ืื™ืŸ ืื™ื™ื ืขืจ ืคื•ืŸ ื“ื™ ืคึผืึทืงื™ื“ื–ืฉื™ื– ืื•ื ื˜ืขืจ ื‘ืึทื˜ืจืึทื›ื˜ื•ื ื’.

ื•ื•ืึธืก ืฉืคึผืจืึทืš ืฆื• ืงืœื™ื™ึทื‘ืŸ ืคึฟืึทืจ ืืจื‘ืขื˜ืŸ ืžื™ื˜ ื“ืึทื˜ืŸ - ืจ ืึธื“ืขืจ ืคึผื™ื˜ื”ืึธืŸ? ื‘ื™ื™ื“ืข! ืžื™ื’ืจื™ื™ื˜ื™ื ื’ ืคื•ืŸ ืคึผืึทื ื“ืึทืก ืฆื• ื˜ื™ื™ื“ื•ื•ืขืจืกืข ืื•ืŸ ื“ืึทื˜ืŸ.ื˜ืึทื‘ืœืข ืื•ืŸ ืฆื•ืจื™ืง

  1. ื”ื•ื™ืคึผื˜ ืกื™ื ื˜ืึทืงืก ื“ื™ืคืขืจืึทื ืกื™ื– ืฆื•ื•ื™ืฉืŸ ืจ ืื•ืŸ ืคึผื™ื˜ื”ืึธืŸ
    ืงืกื ื•ืžืงืก. ืึทืงืกืขืก ืคึผืึทืงืงืึทื’ืข ืคืึทื ื’ืงืฉืึทื ื–
    ืงืกื ื•ืžืงืก. ืึทืกื™ื™ื ืžืึทื ื˜
    ืงืกื ื•ืžืงืก. ื™ื ื“ืขืงืกื™ื ื’
    ืงืกื ื•ืžืงืก. ืžืขื˜ื”ืึธื“ืก ืื•ืŸ OOP
    ืงืกื ื•ืžืงืก. ืคึผื™ื™ืคึผืœื™ื™ื ื–
    ืงืกื ื•ืžืงืก. ื“ืึทื˜ืึท ืกื˜ืจืึทืงื˜ืฉืขืจื–
  2. ืขื˜ืœืขื›ืข ื•ื•ืขืจื˜ืขืจ ื•ื•ืขื’ืŸ ื“ื™ ืคึผืึทืงืึทื“ื–ืฉืึทื– ืžื™ืจ ื•ื•ืขืœืŸ ื ื•ืฆืŸ
    ืงืกื ื•ืžืงืก. ืฆื™ื›ื˜ื™ืง
    ืงืกื ื•ืžืงืก. ื“ืึทื˜ืึท.ื˜ืึทื‘ืœืข
    ืงืกื ื•ืžืงืก. pandas
  3. ื™ื ืกื˜ืึธืœื™ื ื’ ืคึผืึทืงืึทื“ื–ืฉืึทื–
  4. ืœืึธื•ื“ื™ื ื’ ื“ืึทื˜ืึท
  5. ืฉืืคืŸ ื“ืึทื˜ืึทืคืจืึทืžืขืก
  6. ืกืขืœืขืงื˜ื™ื ื’ ื“ื™ ืฉืคืืœื˜ืŸ ืื™ืจ ื“ืึทืจืคึฟืŸ
  7. ืคื™ืœื˜ืขืจื™ื ื’ ืจืึธื•ื–
  8. ื’ืจื•ืคึผื™ื ื’ ืื•ืŸ ืึทื’ื’ืจืขื’ืึทื˜ื™ืึธืŸ
  9. ื•ื•ืขืจื˜ื™ืงืึทืœ ืคืึทืจื‘ืึทื ื“ ืคื•ืŸ ื˜ื™ืฉืŸ (UNION)
  10. ื”ืึธืจื™ื–ืึธื ื˜ืึทืœ ืคืึทืจื‘ื™ื ื“ืŸ ืคื•ืŸ ื˜ื™ืฉืŸ (JOIN)
  11. ื™ืงืขืจื“ื™ืง ืคึฟืขื ืฆื˜ืขืจ ืคืึทื ื’ืงืฉืึทื ื– ืื•ืŸ ืงืึทืœืงื™ืึทืœื™ื™ื˜ื™ื“ ืฉืคืืœื˜ืŸ
  12. ืงืึธืจืขืกืคึผืึธื ื“ืขื ืฅ ื˜ื™ืฉ ืฆื•ื•ื™ืฉืŸ ื“ืึทื˜ืŸ ืคึผืจืึทืกืขืกื™ื ื’ ืžืขื˜ื”ืึธื“ืก ืื™ืŸ ืจ ืื•ืŸ ืคึผื™ื˜ื”ืึธืŸ
  13. ืกืึธืฃ
  14. ื ืงื•ืจืฅ ื™ื‘ืขืจื‘ืœื™ืง ื•ื•ืขื’ืŸ ื•ื•ืึธืก ืคึผืขืงืœ ืื™ืจ ื ื•ืฆืŸ

ืื•ื™ื‘ ืื™ืจ ื–ืขื ื˜ ืื™ื ื˜ืขืจืขืกื™ืจื˜ ืื™ืŸ ื“ืึทื˜ืŸ ืึทื ืึทืœื™ืกื™ืก, ืื™ืจ ืงืขืŸ ื’ืขืคึฟื™ื ืขืŸ ืžื™ื™ืŸ telegram ะธ ื™ืึธื•ื˜ื•ื‘ืข ื˜ืฉืึทื ืึทืœื–. ืจื•ื‘ึฟ ืคื•ืŸ ื“ื™ ืื™ื ื”ืึทืœื˜ ืื™ื– ื“ืขื“ืึทืงื™ื™ื˜ืึทื“ ืฆื• ื“ื™ R ืฉืคึผืจืึทืš.

ื”ื•ื™ืคึผื˜ ืกื™ื ื˜ืึทืงืก ื“ื™ืคืขืจืึทื ืกื™ื– ืฆื•ื•ื™ืฉืŸ ืจ ืื•ืŸ ืคึผื™ื˜ื”ืึธืŸ

ืฆื• ืžืึทื›ืŸ ืขืก ื’ืจื™ื ื’ืขืจ ืคึฟืึทืจ ืื™ืจ ืฆื• ื‘ืึทืฉื˜ื™ืžืขืŸ ืคื•ืŸ Python ืฆื• R, ืึธื“ืขืจ ื•ื•ื™ืฆืข ื•ื•ืขืจืกืึท, ืื™ืš ื•ื•ืขืœ ื’ืขื‘ืŸ ืึท ื‘ื™ืกืœ ื”ื•ื™ืคึผื˜ ืคื•ื ืงื˜ืŸ ื•ื•ืึธืก ืื™ืจ ื“ืึทืจืคึฟืŸ ืฆื• ื‘ืึทืฆืึธืœืŸ ื•ืคืžืขืจืงื–ืึทืžืงื™ื™ึทื˜.

ืึทืงืกืขืก ืคึผืึทืงืงืึทื’ืข ืคืึทื ื’ืงืฉืึทื ื–

ืึทืžืึธืœ ืึท ืคึผืขืงืœ ืื™ื– ืœืึธื•ื“ื™ื“ ืื™ืŸ R, ืื™ืจ ื˜ืึธืŸ ื ื™ื˜ ื“ืึทืจืคึฟืŸ ืฆื• ืกืคึผืขืฆื™ืคื™ืฆื™ืจืŸ ื“ื™ ืคึผืขืงืœ ื ืึธืžืขืŸ ืฆื• ืึทืงืกืขืก ื“ื™ ืคืึทื ื’ืงืฉืึทื ื–. ืื™ืŸ ืจื•ื‘ึฟ ืงืึทืกืขืก ื“ืึธืก ืื™ื– ื ื™ืฉื˜ ืคึผืจืึธืกื˜ ืื™ืŸ ืจ, ืึธื‘ืขืจ ืขืก ืื™ื– ืคึผืึทืกื™ืง. ืื™ืจ ื˜ืึธืŸ ื ื™ื˜ ื”ืึธื‘ืŸ ืฆื• ืึทืจื™ื™ึทื ืคื™ืจ ืึท ืคึผืขืงืœ ืื•ื™ื‘ ืื™ืจ ื“ืึทืจืคึฟืŸ ืื™ื™ื ืขืจ ืคื•ืŸ ื“ื™ ืคืึทื ื’ืงืฉืึทื ื– ืื™ืŸ ื“ื™ื™ืŸ ืงืึธื“, ืึธื‘ืขืจ ื ืึธืจ ืจื•ืคืŸ ืขืก ื“ื•ืจืš ืกืคึผืขืฆื™ืคื™ืฆื™ืจืŸ ื“ื™ ื ืึธืžืขืŸ ืคื•ืŸ ื“ืขื ืคึผืขืงืœ ืื•ืŸ ื“ื™ ื ืึธืžืขืŸ ืคื•ืŸ ื“ื™ ืคื•ื ืงืฆื™ืข. ื“ืขืจ ืกืขืคึผืึทืจืึทื˜ืึธืจ ืฆื•ื•ื™ืฉืŸ ืคึผืขืงืœ ืื•ืŸ ืคึฟื•ื ืงืฆื™ืข ื ืขืžืขืŸ ืื™ืŸ ืจ ืื™ื– ืึท ื˜ืึธืคึผืœ ืฆื•ื•ื™ื™ืคึผื™ื ื˜ืœ. package_name::function_name().

ืื™ืŸ Python, ืื•ื™ืฃ ื“ื™ ืคืึทืจืงืขืจื˜, ืขืก ืื™ื– ื’ืขื”ืืœื˜ืŸ ืงืœืึทืกื™ืฉ ืฆื• ืจื•ืคืŸ ื“ื™ ืคืึทื ื’ืงืฉืึทื ื– ืคื•ืŸ ืึท ืคึผืขืงืœ ื“ื•ืจืš ื‘ืคื™ืจื•ืฉ ืกืคึผืขืฆื™ืคื™ืฆื™ืจืŸ ื–ื™ื™ึทืŸ ื ืึธืžืขืŸ. ื•ื•ืขืŸ ืึท ืคึผืขืงืœ ืื™ื– ื“ืึทื•ื ืœืึธื•ื“ื™ื“, ืขืก ื™ื•ื–ืฉืึทื•ื•ืึทืœื™ ื’ืขื’ืขื‘ืŸ ืึท ืคืึทืจืงื™ืจืฆื˜ ื ืึธืžืขืŸ, ืœืžืฉืœ. pandas ื™ื•ื–ืฉืึทื•ื•ืึทืœื™ ืึท ืคึผืกืขื•ื•ื“ืึธื ื™ื ืื™ื– ื’ืขื ื™ืฆื˜ pd. ื ืคึผืขืงืœ ืคึฟื•ื ืงืฆื™ืข ืื™ื– ืึทืงืกืขืกื˜ ื“ื•ืจืš ืึท ืคึผื•ื ืงื˜ package_name.function_name().

ืึทืกื™ื™ื ืžืึทื ื˜

ืื™ืŸ R, ืขืก ืื™ื– ืคึผืจืึธืกื˜ ืฆื• ื ื•ืฆืŸ ืึท ืคื™ื™ึทืœ ืฆื• ื‘ืึทืฉื˜ื™ืžืขืŸ ืึท ื•ื•ืขืจื˜ ืฆื• ืึท ื›ื™ื™ืคืขืฅ. obj_name <- value, ื›ืึธื˜ืฉ ืึท ืื™ื™ืŸ ื™ืงื•ื•ืึทืœื– ืฆื™ื™ื›ืŸ ืื™ื– ืขืจืœื•ื™ื‘ื˜, ื“ื™ ืื™ื™ืŸ ื™ืงื•ื•ืึทืœื– ืฆื™ื™ื›ืŸ ืื™ืŸ ืจ ืื™ื– ื’ืขื ื™ืฆื˜ ื‘ืคึฟืจื˜ ืฆื• ืคืึธืจืŸ ื•ื•ืึทืœื•ืขืก ืฆื• ืคื•ื ืงืฆื™ืึธื ื™ืจืŸ ืึทืจื’ื•ืžืขื ื˜ืŸ.

ืื™ืŸ Python, ื“ื™ ืึทืกื™ื™ื ืžืึทื ื˜ ืื™ื– ืขืงืกืงืœื•ืกื™ื•ื•ืœื™ ืžื™ื˜ ืึท ืื™ื™ืŸ ื™ืงื•ื•ืึทืœื– ืฆื™ื™ื›ืŸ obj_name = value.

ื™ื ื“ืขืงืกื™ื ื’

ืขืก ื–ืขื ืขืŸ ืื•ื™ืš ื’ืึทื ืฅ ื‘ืึทื˜ื™ื™ึทื˜ื™ืง ื“ื™ืคืขืจืึทื ืกื™ื– ื“ืึธ. ืื™ืŸ R, ื™ื ื“ืขืงืกื™ื ื’ ืกื˜ืึทืจืฅ ืื™ืŸ ืื™ื™ืŸ ืื•ืŸ ื›ื•ืœืœ ืึทืœืข ืกืคึผืขืกื™ืคื™ืขื“ ืขืœืขืžืขื ื˜ืŸ ืื™ืŸ ื“ื™ ืจื™ื–ืึทืœื˜ื™ื ื’ ืงื™ื™ื˜,

ืื™ืŸ ืคึผื™ื˜ื”ืึธืŸ, ื™ื ื“ืขืงืกื™ื ื’ ืกื˜ืึทืจืฅ ืคื•ืŸ ื ื•ืœ ืื•ืŸ ื“ื™ ืื•ื™ืกื’ืขืงืœื™ื‘ืŸ ืงื™ื™ื˜ ื˜ื•ื˜ ื ื™ืฉื˜ ืึทืจื™ื™ึทื ื ืขืžืขืŸ ื“ื™ ืœืขืฆื˜ืข ืขืœืขืžืขื ื˜ ืกืคึผืขืกื™ืคื™ืขื“ ืื™ืŸ ื“ื™ ืื™ื ื“ืขืงืก. ืึทื–ื•ื™ ืคึผืœืึทืŸ x[i:j] ืื™ืŸ ืคึผื™ื˜ื”ืึธืŸ ื•ื•ืขื˜ ื ื™ืฉื˜ ืึทืจื™ื™ึทื ื ืขืžืขืŸ ื“ื™ j ืขืœืขืžืขื ื˜.

ืขืก ื–ืขื ืขืŸ ืื•ื™ืš ื“ื™ืคืขืจืึทื ืกื™ื– ืื™ืŸ ื ืขื’ืึทื˜ื™ื•ื• ื™ื ื“ืขืงืกื™ื ื’, ืื™ืŸ ืจ ื ืึธื•ื˜ื™ื™ืฉืึทืŸ x[-1] ื•ื•ืขื˜ ืฆื•ืจื™ืงืงื•ืžืขืŸ ืึทืœืข ืขืœืขืžืขื ื˜ืŸ ืคื•ืŸ ื“ื™ ื•ื•ืขืงื˜ืึธืจ ืึทื—ื•ืฅ ื“ื™ ืœืขืฆื˜ืข. ืื™ืŸ ืคึผื™ื˜ื”ืึธืŸ, ืึท ืขื ืœืขืš ื ืึธื•ื˜ื™ื™ืฉืึทืŸ ื•ื•ืขื˜ ืฆื•ืจื™ืงืงื•ืžืขืŸ ื‘ืœื•ื™ื– ื“ื™ ืœืขืฆื˜ืข ืขืœืขืžืขื ื˜.

ืžืขื˜ื”ืึธื“ืก ืื•ืŸ OOP

R ื™ืžืคึผืœืึทืžืึทื ืฅ OOP ืื™ืŸ ื–ื™ื™ืŸ ืื™ื™ื’ืขื ืข ื•ื•ืขื’, ืื™ืš ื’ืขืฉืจื™ื‘ืŸ ื•ื•ืขื’ืŸ ื“ืขื ืื™ืŸ ื“ืขื ืึทืจื˜ื™ืงืœ "ืึธืึธืคึผ ืื™ืŸ ื“ื™ R ืฉืคึผืจืึทืš (ื˜ื™ื™ืœ 1): S3 ืงืœืืกืŸ". ืื™ืŸ ืึทืœื’ืขืžื™ื™ืŸ, ืจ ืื™ื– ืึท ืคืึทื ื’ืงืฉืึทื ืึทืœ ืฉืคึผืจืึทืš, ืื•ืŸ ืึทืœืฅ ืื™ืŸ ืขืก ืื™ื– ื’ืขื‘ื•ื™ื˜ ืื•ื™ืฃ ืคืึทื ื’ืงืฉืึทื ื–. ื“ืขืจื™ื‘ืขืจ, ืคึฟืึทืจ ื‘ื™ื™ึทืฉืคึผื™ืœ, ืคึฟืึทืจ ืขืงืกืกืขืœ ื ื™ืฆืขืจืก, ื’ื™ื™ืŸ ืฆื• tydiverse ืขืก ื•ื•ืขื˜ ื–ื™ื™ืŸ ื’ืจื™ื ื’ืขืจ ื•ื•ื™ pandas. ื›ืึธื˜ืฉ ื“ืึธืก ืงืขืŸ ื–ื™ื™ืŸ ืžื™ื™ืŸ ืกืึทื‘ื“ื–ืฉืขืงื˜ื™ื•ื• ืžื™ื™ื ื•ื ื’.

ืื™ืŸ ืงื•ืจืฅ, ืึทื‘ื“ื–ืฉืขืงืฅ ืื™ืŸ ืจ ื˜ืึธืŸ ื ื™ื˜ ื”ืึธื‘ืŸ ืžืขื˜ื”ืึธื“ืก (ืื•ื™ื‘ ืžื™ืจ ืจืขื“ืŸ ื•ื•ืขื’ืŸ S3 ืงืœืืกืŸ, ืึธื‘ืขืจ ืขืก ื–ืขื ืขืŸ ืื ื“ืขืจืข OOP ื™ืžืคึผืœืึทืžืึทื ืฅ ื•ื•ืึธืก ื–ืขื ืขืŸ ืคื™ืœ ื•ื•ื™ื™ื ื™ืงืขืจ ืคึผืจืึธืกื˜). ืขืก ื–ืขื ืขืŸ ื‘ืœื•ื™ื– ื’ืขื ืขืจืึทืœื™ื–ืขื“ ืคืึทื ื’ืงืฉืึทื ื– ื•ื•ืึธืก ืคึผืจืึธืฆืขืก ื–ื™ื™ ื“ื™ืคืขืจืขื ื˜ืœื™ ื“ื™ืคึผืขื ื“ื™ื ื’ ืื•ื™ืฃ ื“ื™ ืงืœืึทืก ืคื•ืŸ ื“ื™ ื›ื™ื™ืคืขืฅ.

ืคึผื™ื™ืคึผืœื™ื™ื ื–

ื˜ืึธืžืขืจ ื“ืึธืก ืื™ื– ื“ืขืจ ื ืึธืžืขืŸ ืคึฟืึทืจ pandas ืขืก ื•ื•ืขื˜ ื ื™ืฉื˜ ื–ื™ื™ืŸ ื’ืึธืจ ืจื™ื›ื˜ื™ืง, ืึธื‘ืขืจ ืื™ืš ื•ื•ืขืœ ืคึผืจื•ื‘ื™ืจืŸ ืฆื• ื“ืขืจืงืœืขืจืŸ ื“ื™ ื˜ื™ื™ึทื˜ืฉ.

ืื™ืŸ ืกื“ืจ ื ื™ืฉื˜ ืฆื• ืจืึทื˜ืขื•ื•ืขืŸ ื™ื ื˜ืขืจืžื™ื“ื™ื™ื˜ ื—ืฉื‘ื•ื ื•ืช ืื•ืŸ ื ื™ืฉื˜ ืคึผืจืึธื“ื•ืฆื™ืจืŸ ื•ืžื ื™ื™ื˜ื™ืง ืึทื‘ื“ื–ืฉืขืงืฅ ืื™ืŸ ื“ื™ ืึทืจื‘ืขื˜ ืกื•ื•ื™ื•ื•ืข, ืื™ืจ ืงืขื ืขืŸ ื ื•ืฆืŸ ืึท ืžื™ืŸ ืคื•ืŸ ืจืขืจื  - ืœื™ื ื™ืข. ื™ืขื ืข. ืคืึธืจืŸ ื“ื™ ืจืขื–ื•ืœื˜ืึทื˜ ืคื•ืŸ ืึท ื›ืขื–ืฉื‘ืŸ ืคื•ืŸ ืื™ื™ืŸ ืคึฟื•ื ืงืฆื™ืข ืฆื• ื“ืขืจ ื•ื•ื™ื™ึทื˜ืขืจ, ืื•ืŸ ื˜ืึธืŸ ื ื™ื˜ ืจืึทื˜ืขื•ื•ืขืŸ ื™ื ื˜ืขืจืžื™ื“ื™ื™ื˜ ืจืขื–ื•ืœื˜ืึทื˜ืŸ.

ืœืึธืžื™ืจ ื ืขืžืขืŸ ื“ื™ ืคืืœื’ืขื ื“ืข ืงืึธื“ ื‘ื™ื™ืฉืคึผื™ืœ, ื•ื•ื• ืžื™ืจ ืงืจืึธื ื™ื ื˜ืขืจืžื™ื“ื™ื™ื˜ ื—ืฉื‘ื•ื ื•ืช ืื™ืŸ ื‘ืึทื–ื•ื ื“ืขืจ ืึทื‘ื“ื–ืฉืขืงืฅ:

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

ืžื™ืจ ื”ืึธื‘ืŸ ื“ื•ืจื›ื’ืขืงืึธื›ื˜ 3 ืึทืคึผืขืจื™ื™ืฉืึทื ื– ืกืึทืงื•ื•ืขื ื˜ืฉืึทืœื™, ืื•ืŸ ื“ืขืจ ืจืขื–ื•ืœื˜ืึทื˜ ืคื•ืŸ ื™ืขื“ืขืจ ืื™ื– ื’ืขืจืื˜ืขื•ื•ืขื˜ ืื™ืŸ ืึท ื‘ืึทื–ื•ื ื“ืขืจ ื›ื™ื™ืคืขืฅ. ืื‘ืขืจ ืื™ืŸ ืคืึทืงื˜, ืžื™ืจ ื˜ืึธืŸ ื ื™ื˜ ื“ืึทืจืคึฟืŸ ื“ื™ ื™ื ื˜ืขืจืžื™ื“ื™ื™ื˜ ืึทื‘ื“ื–ืฉืขืงืก.

ืึธื“ืขืจ ืืคื™ืœื• ืขืจื’ืขืจ, ืึธื‘ืขืจ ืžืขืจ ื‘ืึทืงืึทื ื˜ ืฆื• ืขืงืกืกืขืœ ื™ื•ื–ืขืจื–.

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

ืื™ืŸ ื“ืขื ืคืึทืœ, ืžื™ืจ ื”ืึธื‘ืŸ ื ื™ืฉื˜ ืจืึทื˜ืขื•ื•ืขืŸ ื™ื ื˜ืขืจืžื™ื“ื™ื™ื˜ ื›ืขื–ืฉื‘ืŸ ืจืขื–ื•ืœื˜ืึทื˜ืŸ, ืึธื‘ืขืจ ืœื™ื™ืขื ืขืŸ ืงืึธื“ ืžื™ื˜ ื ืขืกื˜ืขื“ ืคืึทื ื’ืงืฉืึทื ื– ืื™ื– ื’ืึธืจ ื•ืžื‘ืึทืงื•ื•ืขื.

ืžื™ืจ ื•ื•ืขืœืŸ ืงื•ืงืŸ ืื™ืŸ ืขื˜ืœืขื›ืข ืึทืคึผืจืึธื•ื˜ืฉื™ื– ืฆื• ื“ืึทื˜ืŸ ืคึผืจืึทืกืขืกื™ื ื’ ืื™ืŸ R, ืื•ืŸ ื–ื™ื™ ื“ื•ืจื›ืคื™ืจืŸ ืขื ืœืขืš ืึทืคึผืขืจื™ื™ืฉืึทื ื– ืื™ืŸ ืคืึทืจืฉื™ื“ืขื ืข ื•ื•ืขื’ืŸ.

ืคึผื™ื™ืคึผืœื™ื™ื ื– ืื™ืŸ ื“ืขืจ ื‘ื™ื‘ืœื™ืึธื˜ืขืง 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(). ื“ื™ ืจื™ื–ืึทืœื˜ื™ื ื’ ืจืขื–ื•ืœื˜ืึทื˜ ืื™ื– ื’ืขืจืื˜ืขื•ื•ืขื˜ ืื™ืŸ ืึท ื›ื™ื™ืคืขืฅ ืึธื‘ื“ื–ืฉ .

ื“ืึทื˜ืึท ืกื˜ืจืึทืงื˜ืฉืขืจื–

ื“ืึทื˜ืึท ืกื˜ืจืึทืงื˜ืฉืขืจื– ืื™ืŸ ืจ ืื•ืŸ ืคึผื™ื˜ื”ืึธืŸ ื–ืขื ืขืŸ ืขื ืœืขืš, ืึธื‘ืขืจ ื”ืึธื‘ืŸ ืคืึทืจืฉื™ื“ืขื ืข ื ืขืžืขืŸ.

ื‘ืึทืฉืจื™ื™ึทื‘ื•ื ื’
ื ืึธืžืขืŸ ืื™ืŸ ืจ
ื ืึธืžืขืŸ ืื™ืŸ ืคึผื™ื˜ื”ืึธืŸ / ืคึผืึทื ื“ืึทืก

ื˜ื™ืฉ ืกื˜ืจื•ืงื˜ื•ืจ
ื“ืึทื˜ืึท.ืคืจืึทืžืข, ื“ืึทื˜ืึท.ื˜ื™ืฉ, ื˜ืึทื‘ืœืข
ื“ืึทื˜ืึทืคืจืึทืžืข

ืื™ื™ืŸ-ื“ื™ืžืขื ืฉืึทื ืึทืœ ืจืฉื™ืžื” ืคื•ืŸ ื•ื•ืึทืœื•ืขืก
ื•ื•ืขืงื˜ืึธืจ
ืกืขืจื™ืข ืื™ืŸ ืคึผืึทื ื“ืึทืก ืึธื“ืขืจ ืจืฉื™ืžื” ืื™ืŸ ืจื™ื™ืŸ ืคึผื™ื˜ื”ืึธืŸ

ืžื•ืœื˜ื™-ืžื“ืจื’ื” ื ื™ื˜-ื˜ืึทื‘ื•ืœืึทืจ ืกื˜ืจื•ืงื˜ื•ืจ
ืจืฉื™ืžื”
ื•ื•ืขืจื˜ืขืจื‘ื•ืš (ื“ื™ืงื˜)

ืžื™ืจ ื•ื•ืขืœืŸ ืงื•ืงืŸ ืื™ืŸ ืขื˜ืœืขื›ืข ืื ื“ืขืจืข ืคึฟืขื™ึดืงื™ื™ื˜ืŸ ืื•ืŸ ื“ื™ืคืขืจืึทื ืกื™ื– ืื™ืŸ ืกื™ื ื˜ืึทืงืก ืื•ื ื˜ืŸ.

ืขื˜ืœืขื›ืข ื•ื•ืขืจื˜ืขืจ ื•ื•ืขื’ืŸ ื“ื™ ืคึผืึทืงืึทื“ื–ืฉืึทื– ืžื™ืจ ื•ื•ืขืœืŸ ื ื•ืฆืŸ

ืขืจืฉื˜ืขืจ, ืื™ืš ื•ื•ืขื˜ ื–ืึธื’ืŸ ืื™ืจ ืึท ื‘ื™ืกืœ ื•ื•ืขื’ืŸ ื“ื™ ืคึผืึทืงืึทื“ื–ืฉืึทื– ื•ื•ืึธืก ืื™ืจ ื•ื•ืขื˜ ื–ื™ื™ืŸ ื‘ืึทืงืึทื ื˜ ืžื™ื˜ ืื™ืŸ ื“ืขื ืึทืจื˜ื™ืงืœ.

ืฆื™ื›ื˜ื™ืง

ื‘ืึทืึทืžื˜ืขืจ ื•ื•ืขื‘ื–ื™ื™ึทื˜ืœ: tidyverse.org
ื•ื•ืึธืก ืฉืคึผืจืึทืš ืฆื• ืงืœื™ื™ึทื‘ืŸ ืคึฟืึทืจ ืืจื‘ืขื˜ืŸ ืžื™ื˜ ื“ืึทื˜ืŸ - ืจ ืึธื“ืขืจ ืคึผื™ื˜ื”ืึธืŸ? ื‘ื™ื™ื“ืข! ืžื™ื’ืจื™ื™ื˜ื™ื ื’ ืคื•ืŸ ืคึผืึทื ื“ืึทืก ืฆื• ื˜ื™ื™ื“ื•ื•ืขืจืกืข ืื•ืŸ ื“ืึทื˜ืŸ.ื˜ืึทื‘ืœืข ืื•ืŸ ืฆื•ืจื™ืง
ื‘ื™ื‘ืœื™ืึธื˜ืขืง tidyverse ื’ืขืฉืจื™ื‘ืŸ ื“ื•ืจืš Hedley Wickham, ืขืœื˜ืขืจ ืคืึธืจืฉื•ื ื’ ืกืกื™ืขื ื˜ื™ืกื˜ ื‘ื™ื™ RStudio. tidyverse ื‘ืืฉื˜ื™ื™ื˜ ืคื•ืŸ ืึทืŸ ื™ืžืคึผืจืขืกื™ื•ื• ื’ืึทื ื’ ืคื•ืŸ ืคึผืึทืงืึทื“ื–ืฉืึทื– ื•ื•ืึธืก ืคืึทืจืคึผืึธืฉืขื˜ืขืจืŸ ื“ืึทื˜ืŸ ืคึผืจืึทืกืขืกื™ื ื’, 5 ืคื•ืŸ ื•ื•ืึธืก ื–ืขื ืขืŸ ืึทืจื™ื™ึทื ื’ืขืจืขื›ื ื˜ ืื™ืŸ ื“ื™ ืฉืคึผื™ืฅ 10 ื“ืึทื•ื ืœืึธื•ื“ื– ืคื•ืŸ ื“ื™ CRAN ืจื™ืคึผืึทื–ืึทื˜ืึธืจื™.

ื“ื™ ื”ืึทืจืฅ ืคื•ืŸ ื“ืขืจ ื‘ื™ื‘ืœื™ืึธื˜ืขืง ื‘ืืฉื˜ื™ื™ื˜ ืคื•ืŸ ื“ื™ ืคืืœื’ืขื ื“ืข ืคึผืึทืงืึทื“ื–ืฉืึทื–: 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 ]

ื“ื™ ืฉื˜ืึทืจืงื™ื™ื˜ ืคื•ืŸ ื“ืขื ืคึผืขืงืœ ืื™ื– ื“ื™ ื’ื™ื›ืงื™ื™ึทื˜ ืคื•ืŸ ืคึผืจืึทืกืขืกื™ื ื’ ื’ืจื•ื™ืก ืึทืžืึทื•ื ืฅ ืคื•ืŸ ื“ืึทื˜ืŸ.

pandas

ื‘ืึทืึทืžื˜ืขืจ ื•ื•ืขื‘ื–ื™ื™ึทื˜ืœ: pandas.pydata.org ื•ื•ืึธืก ืฉืคึผืจืึทืš ืฆื• ืงืœื™ื™ึทื‘ืŸ ืคึฟืึทืจ ืืจื‘ืขื˜ืŸ ืžื™ื˜ ื“ืึทื˜ืŸ - ืจ ืึธื“ืขืจ ืคึผื™ื˜ื”ืึธืŸ? ื‘ื™ื™ื“ืข! ืžื™ื’ืจื™ื™ื˜ื™ื ื’ ืคื•ืŸ ืคึผืึทื ื“ืึทืก ืฆื• ื˜ื™ื™ื“ื•ื•ืขืจืกืข ืื•ืŸ ื“ืึทื˜ืŸ.ื˜ืึทื‘ืœืข ืื•ืŸ ืฆื•ืจื™ืง

ื“ืขืจ ื ืึธืžืขืŸ ืคื•ืŸ ื“ืขืจ ื‘ื™ื‘ืœื™ืึธื˜ืขืง ืงื•ืžื˜ ืคื•ืŸ ื“ื™ ืขืงืึธื ืึธืžืขื˜ืจื™ืง ื˜ืขืจืžื™ืŸ "ื˜ืึทืคืœื™ืข ื“ืึทื˜ืŸ", ื’ืขื ื™ืฆื˜ ืฆื• ื‘ืึทืฉืจื™ื™ึทื‘ืŸ ืžื•ืœื˜ื™ื“ื™ืžืขื ืกื™ืึธื ืึทืœ ืกื˜ืจืึทืงื˜ืฉืขืจื“ ืื™ื ืคึฟืึธืจืžืึทืฆื™ืข ืกืขืฅ.

ืžื—ื‘ืจ pandas ืื™ื– ืืžืขืจื™ืงืื ืขืจ Wes McKinney.

ื•ื•ืขืŸ ืขืก ืงื•ืžื˜ ืฆื• ื“ืึทื˜ืŸ ืึทื ืึทืœื™ืกื™ืก ืื™ืŸ ืคึผื™ื˜ื”ืึธืŸ, ื’ืœื™ื™ึทืš pandas ื ื™ื™ืŸ. ื ื–ื™ื™ืขืจ ืžื•ืœื˜ื™ืคื•ื ืงื˜ื™ืึธื ืึทืœ, ื”ื•ื™ืš-ืžื“ืจื’ื” ืคึผืขืงืœ ื•ื•ืึธืก ืึทืœืึทื•ื– ืื™ืจ ืฆื• ื“ื•ืจื›ืคื™ืจืŸ ืงื™ื™ืŸ ืžืึทื ื™ืคึผื™ืึทืœื™ื™ืฉืึทืŸ ืžื™ื˜ ื“ืึทื˜ืŸ, ืคึฟื•ืŸ ืœืึธื•ื“ื™ื ื’ ื“ืึทื˜ืŸ ืคึฟื•ืŸ ืงื™ื™ืŸ ืงื•ื•ืืœืŸ ืฆื• ื•ื•ื™ื–ืฉื•ื•ืึทืœื™ื™ื–ื™ื ื’ ืขืก.

ื™ื ืกื˜ืึธืœื™ื ื’ ื ืึธืš ืคึผืึทืงืึทื“ื–ืฉืึทื–

ื“ื™ ืคึผืึทืงืึทื“ื–ืฉืึทื– ื“ื™ืกืงืึทืกื˜ ืื™ืŸ ื“ืขื ืึทืจื˜ื™ืงืœ ื–ืขื ืขืŸ ื ื™ืฉื˜ ืึทืจื™ื™ึทื ื’ืขืจืขื›ื ื˜ ืื™ืŸ ื“ื™ ื™ืงืขืจื“ื™ืง R ืื•ืŸ Python ื“ื™ืกื˜ืจื™ื‘ื™ื•ืฉืึทื ื–. ื›ืึธื˜ืฉ ืขืก ืื™ื– ืึท ืงืœื™ื™ืŸ ืงื™ื™ื•ื•ื™ืึทื˜, ืื•ื™ื‘ ืื™ืจ ืื™ื ืกื˜ืึทืœื™ืจืŸ ื“ื™ ืึทื ืึทืงืึธื ื“ืึท ืคืึทืจืฉืคึผืจื™ื™ื˜ื•ื ื’, ื“ืขืžืึธืœื˜ ื™ื ืกื˜ืึทืœื™ืจืŸ ืึทื“ื™ืฉื ืึทืœื™ pandas ื ื™ื˜ ืคืืจืœืื ื’ื˜.

ื™ื ืกื˜ืึธืœื™ื ื’ ืคึผืึทืงืึทื“ื–ืฉืึทื– ืื™ืŸ R

ืื•ื™ื‘ ืื™ืจ ื”ืึธื˜ ื’ืขืขืคื ื˜ ื“ื™ 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

ื“ืขืจื ืึธืš ืžื™ืจ ืฆื•ืจื™ืงืงื•ืžืขืŸ ืฆื• Python ืื•ืŸ ืึทืจื™ื™ึทื ืคื™ืจ ื“ื™ ืื™ื ืกื˜ืึทืœื™ืจืŸ ืคึผืขืงืœ ืžื™ื˜ ื“ื™ ื‘ืึทืคึฟืขืœ import.

import pandas as pd

ืœืึธื•ื“ื™ื ื’ ื“ืึทื˜ืึท

ื“ืึทื˜ืึท ืžื™ื™ื ื™ื ื’ ืื™ื– ืื™ื™ื ืขืจ ืคื•ืŸ ื“ื™ ืžืขืจืกื˜ ื•ื•ื™ื›ื˜ื™ืง ืกื˜ืขืคึผืก ืื™ืŸ ื“ืึทื˜ืŸ ืึทื ืึทืœื™ืกื™ืก. ื‘ื™ื™ื“ืข Python ืื•ืŸ R, ืื•ื™ื‘ ืื™ืจ ื•ื•ื™ืœื˜, ืฆื•ืฉื˜ืขืœืŸ ื‘ืจื™ื™ื˜ ืึทืคึผืขืจื˜ื•ื ืึทื˜ื™ื– ืฆื• ืงืจื™ื’ืŸ ื“ืึทื˜ืŸ ืคึฟื•ืŸ ืงื™ื™ืŸ ืงื•ื•ืืœืŸ: ื”ื™ื’ืข ื˜ืขืงืขืก, ื˜ืขืงืขืก ืคึฟื•ืŸ ื“ืขืจ ืื™ื ื˜ืขืจื ืขืฅ, ื•ื•ืขื‘ืกื™ื˜ืขืก, ืึทืœืข ืžื™ื ื™ื ืคื•ืŸ ื“ืึทื˜ืึทื‘ื™ื™ืกื™ื–.

ื•ื•ืึธืก ืฉืคึผืจืึทืš ืฆื• ืงืœื™ื™ึทื‘ืŸ ืคึฟืึทืจ ืืจื‘ืขื˜ืŸ ืžื™ื˜ ื“ืึทื˜ืŸ - ืจ ืึธื“ืขืจ ืคึผื™ื˜ื”ืึธืŸ? ื‘ื™ื™ื“ืข! ืžื™ื’ืจื™ื™ื˜ื™ื ื’ ืคื•ืŸ ืคึผืึทื ื“ืึทืก ืฆื• ื˜ื™ื™ื“ื•ื•ืขืจืกืข ืื•ืŸ ื“ืึทื˜ืŸ.ื˜ืึทื‘ืœืข ืื•ืŸ ืฆื•ืจื™ืง

ืื™ื‘ืขืจ ื“ืขื ืึทืจื˜ื™ืงืœ ืžื™ืจ ื•ื•ืขืœืŸ ื ื•ืฆืŸ ืขื˜ืœืขื›ืข ื“ืึทื˜ืึทืกืขืฅ:

  1. ืฆื•ื•ื™ื™ ื“ืึทื•ื ืœืึธื•ื“ื– ืคื•ืŸ Google Analytics.
  2. ื˜ื™ื˜ืึทื ื™ืง ืคึผืึทืกืึทื–ืฉื™ืจ ื“ืึทื˜ืึทืกืขื˜.

ืึทืœืข ื“ื™ ื“ืึทื˜ืŸ ื–ืขื ืขืŸ ืื•ื™ืฃ ืžื™ื™ืŸ ื’ื™ื˜ื”ื•ื‘ ืื™ืŸ ื“ื™ ืคืึธืจืขื ืคื•ืŸ csv ืื•ืŸ tsv ื˜ืขืงืขืก. ืคึฟื•ืŸ ื•ื•ืึทื ืขืŸ ื•ื•ืขืœืŸ ืžื™ืจ ื–ื™ื™ ื‘ืขื˜ืŸ?

ืœืึธื•ื“ื™ื ื’ ื“ืึทื˜ืŸ ืื™ืŸ ืจ: ื˜ื™ื™ื“ื™ื•ื•ืขืจืกืข, vroom, readr

ืฆื• ืœืึธื“ืŸ ื“ืึทื˜ืŸ ืื™ืŸ ืึท ื‘ื™ื‘ืœื™ืึธื˜ืขืง tidyverse ืขืก ื–ืขื ืขืŸ ืฆื•ื•ื™ื™ ืคึผืึทืงืึทื“ื–ืฉืึทื–: vroom, readr. vroom ืžืขืจ ืžืึธื“ืขืจืŸ, ืึธื‘ืขืจ ืื™ืŸ ื“ืขืจ ืฆื•ืงื•ื ืคึฟื˜ ื“ื™ ืคึผืึทืงืึทื“ื–ืฉืึทื– ืงืขื ืขืŸ ื–ื™ื™ืŸ ืงืึทืžื‘ื™ื™ื ื“.

ืฆื™ื˜ื™ืจืŸ ืคื•ืŸ ื‘ืึทืึทืžื˜ืขืจ ื“ืึทืงื™ื•ืžืขื ื˜ื™ื™ืฉืึทืŸ vroom.

vroom vs reader
ื•ื•ืึธืก ื˜ื•ื˜ ื“ืขืจ ืžืขืœื“ื•ื ื’ ืคื•ืŸ vroom ืžื™ื™ื ืขืŸ ืคึฟืึทืจ readr? ืื™ืฆื˜ ืžื™ืจ ืคึผืœืึทืŸ ืฆื• ืœืึธื–ืŸ ื“ื™ ืฆื•ื•ื™ื™ ืคึผืึทืงืึทื“ื–ืฉืึทื– ื™ื•ื•ืึทืœื•ื• ืกืขืคึผืขืจืึทื˜ืœื™, ืึธื‘ืขืจ ืžืกืชึผืžื ืžื™ืจ ื•ื•ืขืœืŸ ืคืึทืจื™ื™ื ื™ืงืŸ ื“ื™ ืคึผืึทืงืึทื“ื–ืฉืึทื– ืื™ืŸ ื“ืขืจ ืฆื•ืงื•ื ืคึฟื˜. ืื™ื™ืŸ ื›ื™ืกืึธืจืŸ ืฆื• Vroom ืก ืคื•ื™ืœ ืœื™ื™ืขื ืขืŸ ืื™ื– ื–ื™ื›ืขืจ ื“ืึทื˜ืŸ ืคึผืจืึธื‘ืœืขืžืก ืงืขื ืขืŸ ื ื™ื˜ ื–ื™ื™ืŸ ืจืขืคึผืึธืจื˜ืขื“ ืื™ืŸ ืคืจืึธื ื˜, ืึทื–ื•ื™ ื•ื•ื™ ื‘ืขืกื˜ืขืจ ืฆื• ืคืึทืจื™ื™ื ื™ืงืŸ ื–ื™ื™ ืจื™ืงื•ื•ื™ื™ืขืจื– ืขื˜ืœืขื›ืข ื’ืขื“ืึทื ืง.

vroom vs 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: readr

# 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, ืจืึทื’ืึทืจื“ืœืึทืก ืคื•ืŸ ื“ื™ Csv / tsv ื“ืึทื˜ืŸ ืคึฟืึธืจืžืึทื˜, ืœืึธื•ื“ื™ื ื’ ืื™ื– ื“ื•ืจื›ื’ืขืงืึธื›ื˜ ื“ื•ืจืš ื“ื™ ืคื•ื ืงืฆื™ืข ืคื•ืŸ โ€‹โ€‹โ€‹โ€‹ื“ื™ ื–ืขืœื‘ืข ื ืึธืžืขืŸ vroom(), ืื™ืŸ ื“ืขื ืคึผืขืงืœ readr ืžื™ืจ ื ื•ืฆืŸ ืึท ืึทื ื“ืขืจืฉ ืคึฟื•ื ืงืฆื™ืข ืคึฟืึทืจ ื™ืขื“ืขืจ ืคึฟืึธืจืžืึทื˜ read_tsv() ะธ read_csv().

ืœืึธื•ื“ื™ื ื’ ื“ืึทื˜ืŸ ืื™ืŸ ืจ: data.table

ะ’ data.table ืขืก ืื™ื– ืึท ืคึฟื•ื ืงืฆื™ืข ืคึฟืึทืจ ืœืึธื•ื“ื™ื ื’ ื“ืึทื˜ืŸ fread().

ืœืึธื•ื“ื™ื ื’ ื“ืึทื˜ืŸ ืื™ืŸ ืจ: 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: tidyverse, dplyr

ืื™ืŸ ื“ื™ ืงืึธื“ ื‘ื™ื™ืฉืคึผื™ืœ ืื•ื ื˜ืŸ, ืžื™ืจ ืžืึทื›ืŸ ื“ื™ ื’ืขื‘ืขื˜ืŸ ื“ืึทื˜ืึทืคืจืึทืžืข ื ื™ืฆืŸ ื“ื™ ืคึฟื•ื ืงืฆื™ืข tibble() .

ืงืจื™ื™ื™ื˜ื™ื ื’ ืึท ื“ืึทื˜ืึทืคืจืึทืžืข ืื™ืŸ R: dplyr

## dplyr
### ัะพะทะดะฐั‘ะผ ัะฟั€ะฐะฒะพั‡ะฝะธะบ
gender <- tibble(id = c(1, 2),
                 gender = c("female", "male"))

ืงืจื™ื™ื™ื˜ื™ื ื’ ืึท ื“ืึทื˜ืึทืคืจืึทืžืข ืื™ืŸ ืจ: data.table

ืงืจื™ื™ื™ื˜ื™ื ื’ ืึท ื“ืึทื˜ืึทืคืจืึทืžืข ืื™ืŸ ืจ: 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)

ืกืขืœืขืงื˜ื™ื ื’ ืฉืคืืœื˜ืŸ

ื“ื™ ื˜ื™ืฉืŸ ืžื™ื˜ ื•ื•ืึธืก ืื™ืจ ืึทืจื‘ืขื˜ ืงืขืŸ ืึทื ื˜ื”ืึทืœื˜ืŸ ื“ืึทื–ืึทื ื– ืึธื“ืขืจ ืืคื™ืœื• ื”ื•ื ื“ืขืจื˜ืขืจ ืคื•ืŸ ืฉืคืืœื˜ืŸ ืคื•ืŸ ื“ืึทื˜ืŸ. ืื‘ืขืจ ืฆื• ื“ื•ืจื›ืคื™ืจืŸ ืึทื ืึทืœื™ืกื™ืก, ื•ื•ื™ ืึท ื”ืขืจืฉืŸ, ืื™ืจ ื˜ืึธืŸ ื ื™ื˜ ื“ืึทืจืคึฟืŸ ืึทืœืข ื“ื™ ืฉืคืืœื˜ืŸ ื•ื•ืึธืก ื–ืขื ืขืŸ ื‘ื ื™ืžืฆื ืื™ืŸ ื“ื™ ืžืงื•ืจ ื˜ื™ืฉ.

ื•ื•ืึธืก ืฉืคึผืจืึทืš ืฆื• ืงืœื™ื™ึทื‘ืŸ ืคึฟืึทืจ ืืจื‘ืขื˜ืŸ ืžื™ื˜ ื“ืึทื˜ืŸ - ืจ ืึธื“ืขืจ ืคึผื™ื˜ื”ืึธืŸ? ื‘ื™ื™ื“ืข! ืžื™ื’ืจื™ื™ื˜ื™ื ื’ ืคื•ืŸ ืคึผืึทื ื“ืึทืก ืฆื• ื˜ื™ื™ื“ื•ื•ืขืจืกืข ืื•ืŸ ื“ืึทื˜ืŸ.ื˜ืึทื‘ืœืข ืื•ืŸ ืฆื•ืจื™ืง

ื“ืขืจื™ื‘ืขืจ, ืื™ื™ื ืขืจ ืคื•ืŸ ื“ื™ ืขืจืฉื˜ืขืจ ืึทืคึผืขืจื™ื™ืฉืึทื ื– ื•ื•ืึธืก ืื™ืจ ื•ื•ืขื˜ ื“ื•ืจื›ืคื™ืจืŸ ืžื™ื˜ ื“ื™ ืžืงื•ืจ ื˜ื™ืฉ ืื™ื– ืฆื• ื•ื™ืกืžืขืงืŸ ืขืก ืคื•ืŸ ื•ืžื ื™ื™ื˜ื™ืง ืื™ื ืคึฟืึธืจืžืึทืฆื™ืข ืื•ืŸ ื‘ืึทืคืจื™ื™ึทืขืŸ ื“ื™ ื–ื›ึผืจื•ืŸ ื•ื•ืึธืก ื“ื™ ืื™ื ืคึฟืึธืจืžืึทืฆื™ืข ืึทืงื™ืึทืคึผื™ื™ื–.

ืกืขืœืขืงื˜ื™ื ื’ ืฉืคืืœื˜ืŸ ืื™ืŸ ืจ: ื˜ื™ื“ื•ื•ืขืจืกืข, ื“ืคึผืœื™ืจ

ืกื™ื ื˜ืึทืงืก dplyr ืื™ื– ื–ื™ื™ืขืจ ืขื ืœืขืš ืฆื• ื“ื™ SQL ืึธื ืคึฟืจืขื’ ืฉืคึผืจืึทืš, ืื•ื™ื‘ ืื™ืจ ื–ืขื ื˜ ื‘ืึทืงืึทื ื˜ ืžื™ื˜ ืขืก, ืื™ืจ ื•ื•ืขื˜ ื’ืขืฉื•ื•ื™ื ื“ ื‘ืขืœ ื“ืขื ืคึผืขืงืœ.

ืฆื• ืื•ื™ืกืงืœื™ื™ึทื‘ืŸ ืฉืคืืœื˜ืŸ, ื ื•ืฆืŸ ื“ื™ ืคึฟื•ื ืงืฆื™ืข select().

ื•ื ื˜ืขืจ ื–ืขื ืขืŸ ื‘ื™ื™ืฉืคื™ืœืŸ ืคื•ืŸ ืงืึธื“ ืžื™ื˜ ื•ื•ืึธืก ืื™ืจ ืงืขื ืขืŸ ืื•ื™ืกืงืœื™ื™ึทื‘ืŸ ืฉืคืืœื˜ืŸ ืื™ืŸ ื“ื™ ืคืืœื’ืขื ื“ืข ื•ื•ืขื’ืŸ:

  • ืœื™ืกื˜ื™ื ื’ ื“ื™ ื ืขืžืขืŸ ืคื•ืŸ ื“ื™ ืคืืจืœืื ื’ื˜ ืฉืคืืœื˜ืŸ
  • ืึธืคึผืฉื™ืงืŸ ืฆื• ื–ื™ื™ึทืœ ื ืขืžืขืŸ ื ื™ืฆืŸ ืจืขื’ื•ืœืขืจ ืื•ื™ืกื“ืจื•ืงืŸ
  • ืœื•ื™ื˜ ื“ืึทื˜ืŸ ื˜ื™ืคึผ ืึธื“ืขืจ ืงื™ื™ืŸ ืื ื“ืขืจืข ืคืึทืจืžืึธื’ ืคื•ืŸ ื“ื™ ื“ืึทื˜ืŸ ืงืึทื ื˜ื™ื™ื ื“ ืื™ืŸ ื“ื™ ื–ื™ื™ึทืœ

ืื•ื™ืกืงืœื™ื™ึทื‘ืŸ ืฉืคืืœื˜ืŸ ืื™ืŸ ืจ: ื“ืคึผืœื™ืจ

# ะ’ั‹ะฑะพั€ ะฝัƒะถะฝั‹ั… ัั‚ะพะปะฑั†ะพะฒ
## dplyr
### ะฒั‹ะฑั€ะฐั‚ัŒ ะฟะพ ะฝะฐะทะฒะฐะฝะธัŽ ัั‚ะพะปะฑั†ะพะฒ
select(ga_nov, date, source, sessions)
### ะธัะบะปัŽั‡ัŒ ะฟะพ ะฝะฐะทะฒะฐะฝะธัŽ ัั‚ะพะปะฑั†ะพะฒ
select(ga_nov, -medium, -bounces)
### ะฒั‹ะฑั€ะฐั‚ัŒ ะฟะพ ั€ะตะณัƒะปัั€ะฝะพะผัƒ ะฒั‹ั€ะฐะถะตะฝะธัŽ, ัั‚ะพะฑั†ั‹ ะธะผะตะฝะฐ ะบะพั‚ะพั€ั‹ั… ะทะฐะบะฐะฝั‡ะธะฒะฐัŽั‚ัั ะฝะฐ s
select(ga_nov, matches("s$"))
### ะฒั‹ะฑั€ะฐั‚ัŒ ะฟะพ ัƒัะปะพะฒะธัŽ, ะฒั‹ะฑะธั€ะฐะตะผ ั‚ะพะปัŒะบะพ ั†ะตะปะพั‡ะธัะปะตะฝะฝั‹ะต ัั‚ะพะปะฑั†ั‹
select_if(ga_nov, is.integer)

ืกืขืœืขืงื˜ื™ื ื’ ืฉืคืืœื˜ืŸ ืื™ืŸ ืจ: data.table

ื“ื™ ื–ืขืœื‘ืข ืึทืคึผืขืจื™ื™ืฉืึทื ื– ืื™ืŸ data.table ื–ืขื ืขืŸ ื“ื•ืจื›ื’ืขืงืึธื›ื˜ ืึท ื‘ื™ืกืœ ืึทื ื“ืขืจืฉ, ืื™ืŸ ื“ื™ ืึธื ื”ื™ื™ื‘ ืคื•ืŸ ื“ืขื ืึทืจื˜ื™ืงืœ ืื™ืš ืฆื•ื’ืขืฉื˜ืขืœื˜ ืึท ื‘ืึทืฉืจื™ื™ึทื‘ื•ื ื’ ืคื•ืŸ ื•ื•ืึธืก ืึทืจื’ื•ืžืขื ื˜ืŸ ื–ืขื ืขืŸ ื™ืŸ ืงื•ื•ืึทื“ืจืึทื˜ ื‘ืจืึทืงืึทืฅ ืื™ืŸ data.table.

DT[i,j,by]

ื•ื•ื•:
ืื™ืš - ื•ื•ืื•, ื“.ื”. ืคึฟื™ืœื˜ืจื™ืจื•ื ื’ ื“ื•ืจืš ืจืึธื•ื–
j - ืื•ื™ืกืงืœื™ื™ึทื‘ืŸ|ื“ืขืจื”ื™ื™ึทื ื˜ื™ืงืŸ|ื˜ืึธืŸ, ื“.ื”. ืกืึทืœืขืงื˜ื™ื ื’ ืฉืคืืœื˜ืŸ ืื•ืŸ ืงืึทื ื•ื•ืขืจื˜ื™ื ื’ ื–ื™ื™
ื“ื•ืจืš - ื“ืึทื˜ืŸ ื’ืจื•ืคึผื™ื ื’

ืกืขืœืขืงื˜ื™ื ื’ ืฉืคืืœื˜ืŸ ืื™ืŸ ืจ: 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(). ืขืก ื ืขืžื˜ ืึท ื“ืึทื˜ืึทืคืจืึทืžืข ื•ื•ื™ ื“ืขืจ ืขืจืฉื˜ืขืจ ืึทืจื’ื•ืžืขื ื˜, ืื•ืŸ ืื™ืจ ืจืฉื™ืžื” ื“ื™ ืคึฟื™ืœื˜ืจื™ืจื•ื ื’ ื˜ื ืึธื™ื.

ื•ื•ืขืŸ ืฉืจื™ื™ื‘ืŸ ืœืึทื“ื–ืฉื™ืงืึทืœ ืื•ื™ืกื“ืจื•ืงืŸ ืฆื• ืคื™ืœื˜ืขืจ ืึท ื˜ื™ืฉ, ืื™ืŸ ื“ืขื ืคืึทืœ, ืกืคึผืขืฆื™ืคื™ืฆื™ืจืŸ ื“ื™ ื–ื™ื™ึทืœ ื ืขืžืขืŸ ืึธืŸ ืงื•ื•ืึธื˜ืขืก ืื•ืŸ ืึธืŸ ื“ืขืจืงืœืขืจืŸ ื“ื™ ื˜ื™ืฉ ื ืึธืžืขืŸ.

ื•ื•ืขืŸ ื ื™ืฆืŸ ืงื™ื™ืคืœ ืœืึทื“ื–ืฉื™ืงืึทืœ ืื•ื™ืกื“ืจื•ืงืŸ ืฆื• ืคื™ืœื˜ืขืจ, ื ื•ืฆืŸ ื“ื™ ืคืืœื’ืขื ื“ืข ืึธืคึผืขืจื™ื™ื˜ืขืจื–:

  • & ืึธื“ืขืจ ืงืึธืžืข - ืœืึทื“ื–ืฉื™ืงืึทืœ AND
  • | - ืœืึทื“ื–ืฉื™ืงืึทืœ ืึธื“ืขืจ

ืคื™ืœื˜ืขืจื™ื ื’ ืฉื•ืจื•ืช ืื™ืŸ ืจ: ื“ืคึผืœื™ืจ

# ั„ะธะปัŒั‚ั€ะฐั†ะธั ัั‚ั€ะพะบ
## dplyr
### ั„ะธะปัŒั‚ั€ะฐั†ะธั ัั‚ั€ะพะบ ะฟะพ ะพะดะฝะพะผัƒ ัƒัะปะพะฒะธัŽ
filter(ga_nov, source == "google")
### ั„ะธะปัŒั‚ั€ ะฟะพ ะดะฒัƒะผ ัƒัะปะพะฒะธัะผ ัะพะตะดะธะฝั‘ะฝะฝั‹ะผ ะปะพะณะธั‡ะตัะบะธะผ ะธ
filter(ga_nov, source == "google" & sessions >= 10)
### ั„ะธะปัŒั‚ั€ ะฟะพ ะดะฒัƒะผ ัƒัะปะพะฒะธัะผ ัะพะตะดะธะฝั‘ะฝะฝั‹ะผ ะปะพะณะธั‡ะตัะบะธะผ ะธะปะธ
filter(ga_nov, source == "google" | sessions >= 10)

ืคื™ืœื˜ืขืจื™ื ื’ ืจืึธื•ื– ืื™ืŸ ืจ: data.table

ื•ื•ื™ ืื™ืš ื”ืื‘ ืฉื•ื™ืŸ ื’ืขืฉืจื™ื‘ืŸ ืื•ื™ื‘ืŸ, ืื™ืŸ data.table ื“ืึทื˜ืŸ ืงืึทื ื•ื•ืขืจื–ืฉืึทืŸ ืกื™ื ื˜ืึทืงืก ืื™ื– ืขื ืงืœืึธื•ื–ื“ ืื™ืŸ ืงื•ื•ืึทื“ืจืึทื˜ ื‘ืจืึทืงืึทืฅ.

DT[i,j,by]

ื•ื•ื•:
ืื™ืš - ื•ื•ืื•, ื“.ื”. ืคึฟื™ืœื˜ืจื™ืจื•ื ื’ ื“ื•ืจืš ืจืึธื•ื–
j - ืื•ื™ืกืงืœื™ื™ึทื‘ืŸ|ื“ืขืจื”ื™ื™ึทื ื˜ื™ืงืŸ|ื˜ืึธืŸ, ื“.ื”. ืกืึทืœืขืงื˜ื™ื ื’ ืฉืคืืœื˜ืŸ ืื•ืŸ ืงืึทื ื•ื•ืขืจื˜ื™ื ื’ ื–ื™ื™
ื“ื•ืจืš - ื“ืึทื˜ืŸ ื’ืจื•ืคึผื™ื ื’

ื“ืขืจ ืึทืจื’ื•ืžืขื ื˜ ืื™ื– ื’ืขื ื™ืฆื˜ ืฆื• ืคื™ืœื˜ืขืจ ืจืึธื•ื– i, ื•ื•ืึธืก ื”ืื˜ ื“ืขืจ ืขืจืฉื˜ืขืจ ืฉื˜ืขืœืข ืื™ืŸ ืงื•ื•ืึทื“ืจืึทื˜ ื‘ืจืึทืงืึทืฅ.

ืฉืคืืœื˜ืŸ ื–ืขื ืขืŸ ืึทืงืกืขืกื˜ ืื™ืŸ ืœืึทื“ื–ืฉื™ืงืึทืœ ืื•ื™ืกื“ืจื•ืงืŸ ืึธืŸ ืฆื™ื˜ืึทื˜ ืžืึทืจืงืก ืื•ืŸ ืึธืŸ ืกืคึผืขืฆื™ืคื™ืฆื™ืจืŸ ื“ื™ ื˜ื™ืฉ ื ืึธืžืขืŸ.

ืœืึทื“ื–ืฉื™ืงืึทืœ ืื•ื™ืกื“ืจื•ืงืŸ ื–ืขื ืขืŸ ืคืืจื‘ื•ื ื“ืŸ ืฆื• ื™ืขื“ืขืจ ืื ื“ืขืจืขืจ ืื™ืŸ ื“ื™ ื–ืขืœื‘ืข ื•ื•ืขื’ ื•ื•ื™ ืื™ืŸ dplyr ื“ื•ืจืš ื“ื™ & ืื•ืŸ | ืึธืคึผืขืจื™ื™ื˜ืขืจื–.

ืคื™ืœื˜ืขืจื™ื ื’ ืจืึธื•ื– ืื™ืŸ ืจ: 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() - ืงื•ื•ืึทื ื˜ื™ื˜ื™

ื’ืจื•ืคึผื™ื ื’ ืื•ืŸ ืึทื’ื’ืจืขื’ืึทื˜ื™ืึธืŸ ืื™ืŸ ืจ: ื“ืคึผืœื™ืจ

## dplyr
### ะณั€ัƒะฟะฟะธั€ะพะฒะบะฐ ะธ ะฐะณั€ะตะณะฐั†ะธั ัั‚ั€ะพะบ
group_by(titanic, Pclass) %>%
  summarise(passangers = length(PassengerId),
            avg_price  = mean(Fare))

ืฆื• ืคื•ื ืงืฆื™ืึธื ื™ืจืŸ group_by() ืžื™ืจ ื”ืึธื‘ืŸ ื“ื•ืจื›ื’ืขื’ืื ื’ืขืŸ ื“ืขื ื˜ื™ืฉ ื•ื•ื™ ื“ืขืจ ืขืจืฉื˜ืขืจ ืึทืจื’ื•ืžืขื ื˜ ื˜ื™ื˜ืึทื ื™ืง, ืื•ืŸ ื“ืขืžืึธืœื˜ ืื ื’ืขื•ื•ื™ื–ืŸ ื“ื™ ืคืขืœื“ Pclass, ืžื™ื˜ ื•ื•ืขืœื›ืŸ ืžื™ืจ ื•ื•ืขืœืŸ ื’ืจื•ืคืขืก ืื•ื ื“ื–ืขืจ ื˜ื™ืฉ. ื“ืขืจ ืจืขื–ื•ืœื˜ืึทื˜ ืคื•ืŸ ื“ืขื ืึธืคึผืขืจืึทืฆื™ืข ื ื™ืฆืŸ ื“ื™ ืึธืคึผืขืจืึทื˜ืึธืจ %>% ื“ื•ืจื›ื’ืขื’ืื ื’ืขืŸ ื•ื•ื™ ื“ืขืจ ืขืจืฉื˜ืขืจ ืึทืจื’ื•ืžืขื ื˜ ืฆื• ื“ื™ ืคึฟื•ื ืงืฆื™ืข summarise(), ืื•ืŸ ืฆื•ื’ืขื’ืขื‘ืŸ 2 ืžืขืจ ืคืขืœื“ืขืจ: ืคึผืึทืกืึทื–ืฉื™ืจืŸ ะธ avg_price. ืื™ืŸ ื“ืขืจ ืขืจืฉื˜ืขืจ, ื ื™ืฆืŸ ื“ื™ ืคึฟื•ื ืงืฆื™ืข length() ืงืึทืœืงื™ืึทืœื™ื™ื˜ื™ื“ ื“ื™ ื ื•ืžืขืจ ืคื•ืŸ ื˜ื™ืงื™ืฅ, ืื•ืŸ ืื™ืŸ ื“ื™ ืจื’ืข ื ื™ืฆืŸ ื“ื™ ืคึฟื•ื ืงืฆื™ืข mean() ื‘ืืงื•ืžืขืŸ ื“ื™ ื“ื•ืจื›ืฉื ื™ื˜ืœืขืš ื‘ื™ืœืขื˜ ืคึผืจื™ื™ึทื–.

ื’ืจื•ืคึผื™ื ื’ ืื•ืŸ ืึทื’ื’ืจืขื’ืึทื˜ื™ืึธืŸ ืคื•ืŸ ื“ืึทื˜ืŸ ืื™ืŸ ืจ: data.table

ะ’ data.table ื“ืขืจ ืึทืจื’ื•ืžืขื ื˜ ืื™ื– ื’ืขื ื™ืฆื˜ ืคึฟืึทืจ ืึทื’ื’ืจืขื’ืึทื˜ื™ืึธืŸ j ื•ื•ืึธืก ื”ืื˜ ืึท ืฆื•ื•ื™ื™ื˜ ืฉื˜ืขืœืข ืื™ืŸ ืงื•ื•ืึทื“ืจืึทื˜ ื‘ืจืึทืงืึทืฅ, ืื•ืŸ ืคึฟืึทืจ ื’ืจื•ืคึผื™ื ื’ by ืึธื“ืขืจ keyby, ื•ื•ืึธืก ื”ืึธื‘ืŸ ื“ื™ ื“ืจื™ื˜ ืฉื˜ืขืœืข.

ื“ื™ ืจืฉื™ืžื” ืคื•ืŸ ืึทื’ื’ืจืขื’ืึทื˜ื™ืึธืŸ ืคืึทื ื’ืงืฉืึทื ื– ืื™ืŸ ื“ืขื ืคืึทืœ ืื™ื– ื™ื™ื“ืขื ื™ืงืึทืœ ืฆื• ื“ื™ ื“ื™ืกืงืจื™ื™ื‘ื“ ืื™ืŸ dplyr, ื•ื•ื™ื™ึทืœ ื“ืึธืก ื–ืขื ืขืŸ ืคืึทื ื’ืงืฉืึทื ื– ืคื•ืŸ ื“ื™ ื™ืงืขืจื“ื™ืง R ืกื™ื ื˜ืึทืงืก.

ื’ืจื•ืคึผื™ื ื’ ืื•ืŸ ืึทื’ื’ืจืขื’ืึทื˜ื™ืึธืŸ ืื™ืŸ ืจ: data.table

## 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_dec. ื“ื™ ื˜ื™ืฉืŸ ื–ืขื ืขืŸ ื™ื™ื“ืขื ื™ืงืึทืœ ืื™ืŸ ืกื˜ืจื•ืงื˜ื•ืจ, ื“.ื”. ื”ืึธื‘ืŸ ื“ื™ ื–ืขืœื‘ืข ืฉืคืืœื˜ืŸ, ืื•ืŸ ื“ื™ ื“ืึทื˜ืŸ ื˜ื™ื™ืคึผืก ืื™ืŸ ื“ื™ ืฉืคืืœื˜ืŸ.

ื•ื•ืึธืก ืฉืคึผืจืึทืš ืฆื• ืงืœื™ื™ึทื‘ืŸ ืคึฟืึทืจ ืืจื‘ืขื˜ืŸ ืžื™ื˜ ื“ืึทื˜ืŸ - ืจ ืึธื“ืขืจ ืคึผื™ื˜ื”ืึธืŸ? ื‘ื™ื™ื“ืข! ืžื™ื’ืจื™ื™ื˜ื™ื ื’ ืคื•ืŸ ืคึผืึทื ื“ืึทืก ืฆื• ื˜ื™ื™ื“ื•ื•ืขืจืกืข ืื•ืŸ ื“ืึทื˜ืŸ.ื˜ืึทื‘ืœืข ืื•ืŸ ืฆื•ืจื™ืง

ื“ืึธืก ืื™ื– ืึท ื•ืคึผืœืึธืึทื“ ืคื•ืŸ Google Analytics ืคึฟืึทืจ ื“ื™ ื—ื•ื“ืฉ ืคื•ืŸ ื ืื•ื•ืขืžื‘ืขืจ ืื•ืŸ ื“ืขืฆืขืžื‘ืขืจ, ืื™ืŸ ื“ืขื ืึธืคึผื˜ื™ื™ืœื•ื ื’ ืžื™ืจ ื•ื•ืขืœืŸ ืคืึทืจื‘ื™ื ื“ืŸ ื“ื™ ื“ืึทื˜ืŸ ืื™ืŸ ืื™ื™ืŸ ื˜ื™ืฉ.

ื•ื•ืขืจื˜ื™ืงืœื™ ืฆื•ื˜ืฉืขืคึผืขืŸ ื˜ื™ืฉืŸ ืื™ืŸ ืจ: ื˜ื™ื“ื™ื•ื•ืขืจืกืข, ื“ืคึผืœื™ืจ

ะ’ dplyr ืื™ืจ ืงืขื ืขืŸ ืคืึทืจื‘ื™ื ื“ืŸ 2 ื˜ื™ืฉืŸ ืื™ืŸ ืื™ื™ืŸ ืžื™ื˜ ื“ื™ ืคึฟื•ื ืงืฆื™ืข bind_rows(), ืคืืจื‘ื™ื™ ื˜ื™ืฉืŸ ื•ื•ื™ ื–ื™ื™ึทืŸ ื˜ืขื ื•ืช.

ืคื™ืœื˜ืขืจื™ื ื’ ืฉื•ืจื•ืช ืื™ืŸ ืจ: ื“ืคึผืœื™ืจ

# ะ’ะตั€ั‚ะธะบะฐะปัŒะฝะพะต ะพะฑัŠะตะดะธะฝะตะฝะธะต ั‚ะฐะฑะปะธั†
## dplyr
bind_rows(ga_nov, ga_dec)

ื•ื•ืขืจื˜ื™ืงืœื™ ื“ื–ืฉื•ื™ื ื™ื ื’ ื˜ื™ืฉืŸ ืื™ืŸ ืจ: data.table

ืขืก ืื™ื– ืื•ื™ืš ื’ืึธืจื ื™ืฉื˜ ืงืึธืžืคึผืœื™ืฆื™ืจื˜, ืœืึธื–ืŸ ืื•ื ื“ื– ื ื•ืฆืŸ rbind().

ืคื™ืœื˜ืขืจื™ื ื’ ืจืึธื•ื– ืื™ืŸ ืจ: 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 ืื™ืจ ืžื•ื–ืŸ ืกืคึผืขืฆื™ืคื™ืฆื™ืจืŸ ื“ื™ ืฉืคืืœื˜ืŸ ืฆื• ืคืึทืจื‘ื™ื ื“ืŸ.

ื”ืึธืจื™ื–ืึธื ื˜ืึทืœ ื˜ื™ืฉ ืคืึทืจื‘ื™ื ื“ืŸ ืื™ืŸ ืจ: ื“ืคึผืœื™ืจ

# ะพะฑัŠะตะดะธะฝัะตะผ ั‚ะฐะฑะปะธั†ั‹
left_join(titanic, gender,
          by = c("Sex" = "id"))

ื”ืึธืจื™ื–ืึธื ื˜ืึทืœ ืคืึทืจื‘ื™ื ื“ืŸ ืคื•ืŸ ื˜ื™ืฉืŸ ืื™ืŸ ืจ: data.table

ะ’ data.table ืื™ืจ ื“ืึทืจืคึฟืŸ ืฆื• ืคืึทืจื‘ื™ื ื“ืŸ ื˜ื™ืฉืŸ ื“ื•ืจืš ืฉืœื™ืกืœ ื ื™ืฆืŸ ื“ื™ ืคึฟื•ื ืงืฆื™ืข merge().

ืึทืจื’ื•ืžืขื ื˜ืŸ ืฆื• ืฆื•ื ื•ื™ืคื’ื™ืกืŸ () ืคึฟื•ื ืงืฆื™ืข ืื™ืŸ data.table

  • ืจืขื ื˜ื’ืขื , ื™ - ื˜ืึทื‘ืœืขืก ืคึฟืึทืจ ื“ื–ืฉื•ื™ื ื™ื ื’
  • ื“ื•ืจืš - ื–ื™ื™ึทืœ ื•ื•ืึธืก ืื™ื– ื“ืขืจ ืฉืœื™ืกืœ ืฆื• ืคืึทืจื‘ื™ื ื“ืŸ ืื•ื™ื‘ ืขืก ื”ืื˜ ื“ื™ ื–ืขืœื‘ืข ื ืึธืžืขืŸ ืื™ืŸ ื‘ื™ื™ื“ืข ื˜ื™ืฉืŸ
  • by.x, by.y - ื ืขืžืขืŸ ืคื•ืŸ ื“ื™ ืฉืคืืœื˜ืŸ ืฆื• ื–ื™ื™ืŸ ืžืขืจื“ื–ืฉื“, ืื•ื™ื‘ ื–ื™ื™ ื”ืึธื‘ืŸ ืคืึทืจืฉื™ื“ืขื ืข ื ืขืžืขืŸ ืื™ืŸ ื“ื™ ื˜ื™ืฉืŸ
  • all, all.x, all.y - ืคืึทืจื‘ื™ื ื“ืŸ ื˜ื™ืคึผ, ืึทืœืข ื•ื•ืขื˜ ืฆื•ืจื™ืงืงื•ืžืขืŸ ืึทืœืข ืจืึธื•ื– ืคื•ืŸ ื‘ื™ื™ื“ืข ื˜ื™ืฉืŸ, all.x ืงืึธืจืึทืกืคึผืึทื ื“ื– ืฆื• ื“ื™ LEFT JOIN ืึธืคึผืขืจืึทืฆื™ืข (ื•ื•ืขื˜ ืœืึธื–ืŸ ืึทืœืข ื“ื™ ืจืึธื•ื– ืคื•ืŸ ื“ืขืจ ืขืจืฉื˜ืขืจ ื˜ื™ืฉ), all.y - ืงืึธืจืึทืกืคึผืึทื ื“ื– ืฆื• ื“ื™ RIGHT JOIN ืึธืคึผืขืจืึทืฆื™ืข (ื•ื•ืขื˜ ืœืึธื–ืŸ ืึทืœืข ื“ื™ ืจืึธื•ื– ืคื•ืŸ ื“ื™ ืจื’ืข ื˜ื™ืฉ).

ื”ืึธืจื™ื–ืึธื ื˜ืึทืœ ืคืึทืจื‘ื™ื ื“ืŸ ืคื•ืŸ ื˜ื™ืฉืŸ ืื™ืŸ ืจ: data.table

# ะพะฑัŠะตะดะธะฝัะตะผ ั‚ะฐะฑะปะธั†ั‹
merge(titanic, gender, by.x = "Sex", by.y = "id", all.x = T)

ื”ืึธืจื™ื–ืึธื ื˜ืึทืœ ื˜ื™ืฉ ืคืึทืจื‘ื™ื ื“ืŸ ืื™ืŸ ืคึผื™ื˜ื”ืึธืŸ: ืคึผืึทื ื“ืึทืก

ื•ื•ื™ ืื•ื™ืš ืื™ืŸ data.tableืื™ืŸ pandas ื“ื™ ืคึฟื•ื ืงืฆื™ืข ืื™ื– ื’ืขื ื™ืฆื˜ ืฆื• ืคืึทืจื‘ื™ื ื“ืŸ ื˜ื™ืฉืŸ merge().

ืึทืจื’ื•ืžืขื ื˜ืŸ ืคื•ืŸ ื“ื™ ืฆื•ื ื•ื™ืคื’ื™ืกืŸ () ืคึฟื•ื ืงืฆื™ืข ืื™ืŸ ืคึผืึทื ื“ืึทืก

  • ื•ื•ื™ - ืงืฉืจ ื˜ื™ืคึผ: ืœื™ื ืงืก, ืจืขื›ื˜, ื•ื™ืกื•ื•ื™ื™ื ื™ืงืกื˜, ื™ื ืขืจ
  • ืื•ื™ืฃ - ื–ื™ื™ึทืœ ื•ื•ืึธืก ืื™ื– ืึท ืฉืœื™ืกืœ ืื•ื™ื‘ ืขืก ื”ืื˜ ื“ื™ ื–ืขืœื‘ืข ื ืึธืžืขืŸ ืื™ืŸ ื‘ื™ื™ื“ืข ื˜ื™ืฉืŸ
  • left_on, right_on - ื ืขืžืขืŸ ืคื•ืŸ ืฉืœื™ืกืœ ืฉืคืืœื˜ืŸ, ืื•ื™ื‘ ื–ื™ื™ ื”ืึธื‘ืŸ ืคืึทืจืฉื™ื“ืขื ืข ื ืขืžืขืŸ ืื™ืŸ ื˜ื™ืฉืŸ

ื”ืึธืจื™ื–ืึธื ื˜ืึทืœ ื˜ื™ืฉ ืคืึทืจื‘ื™ื ื“ืŸ ืื™ืŸ ืคึผื™ื˜ื”ืึธืŸ: ืคึผืึทื ื“ืึทืก

# ะพะฑัŠะตะดะธะฝัะตะผ ะฟะพ ะบะปัŽั‡ัƒ
titanic.merge(gender, how = "left", left_on = "Sex", right_on = "id")

ื™ืงืขืจื“ื™ืง ืคึฟืขื ืฆื˜ืขืจ ืคืึทื ื’ืงืฉืึทื ื– ืื•ืŸ ืงืึทืœืงื™ืึทืœื™ื™ื˜ื™ื“ ืฉืคืืœื˜ืŸ

ืคึฟืขื ืฆื˜ืขืจ ืคืึทื ื’ืงืฉืึทื ื– ื–ืขื ืขืŸ ืขื ืœืขืš ืื™ืŸ ื˜ื™ื™ึทื˜ืฉ ืฆื• ืึทื’ื’ืจืขื’ืึทื˜ื™ืึธืŸ ืคืึทื ื’ืงืฉืึทื ื–, ืื•ืŸ ื–ืขื ืขืŸ ืื•ื™ืš ืึธืคื˜ ื’ืขื ื™ืฆื˜ ืื™ืŸ ื“ืึทื˜ืŸ ืึทื ืึทืœื™ืกื™ืก. ืึธื‘ืขืจ ื ื™ื˜ ืขื ืœืขืš ืึทื’ื’ืจืขื’ืึทื˜ื™ืึธืŸ ืคืึทื ื’ืงืฉืึทื ื–, ืคึฟืขื ืฆื˜ืขืจ ืคืึทื ื’ืงืฉืึทื ื– ื˜ืึธืŸ ื ื™ื˜ ื˜ื•ื™ืฉืŸ ื“ื™ ื ื•ืžืขืจ ืคื•ืŸ ืจืึธื•ื– ืคื•ืŸ ื“ื™ ืึทื•ื˜ื’ืึธื•ื™ื ื’ ื“ืึทื˜ืึทืคืจืึทืžืข.

ื•ื•ืึธืก ืฉืคึผืจืึทืš ืฆื• ืงืœื™ื™ึทื‘ืŸ ืคึฟืึทืจ ืืจื‘ืขื˜ืŸ ืžื™ื˜ ื“ืึทื˜ืŸ - ืจ ืึธื“ืขืจ ืคึผื™ื˜ื”ืึธืŸ? ื‘ื™ื™ื“ืข! ืžื™ื’ืจื™ื™ื˜ื™ื ื’ ืคื•ืŸ ืคึผืึทื ื“ืึทืก ืฆื• ื˜ื™ื™ื“ื•ื•ืขืจืกืข ืื•ืŸ ื“ืึทื˜ืŸ.ื˜ืึทื‘ืœืข ืื•ืŸ ืฆื•ืจื™ืง

ื™ืกืขื ืฉืึทืœื™, ื ื™ืฆืŸ ื“ื™ ืคึฟืขื ืฆื˜ืขืจ ืคึฟื•ื ืงืฆื™ืข, ืžื™ืจ ืฉืคึผืึทืœื˜ืŸ ื“ื™ ื™ื ืงืึทืžื™ื ื’ ื“ืึทื˜ืึทืคืจืึทืžืข ืื™ืŸ ืคึผืึทืจืฅ ืœื•ื™ื˜ ืขื˜ืœืขื›ืข ืงืจื™ื˜ืขืจื™ืึธืŸ, ื™.ืข. ืœื•ื™ื˜ ื“ื™ ื•ื•ืขืจื˜ ืคื•ืŸ ืึท ืคืขืœื“, ืึธื“ืขืจ ืขื˜ืœืขื›ืข ืคืขืœื“ืขืจ. ืื•ืŸ ืžื™ืจ ืคื™ืจืŸ ืื•ื™ืก ืึทืจื™ื˜ืžืขื˜ื™ืง ืึทืคึผืขืจื™ื™ืฉืึทื ื– ืื•ื™ืฃ ื™ืขื“ืขืจ ืคึฟืขื ืฆื˜ืขืจ. ื“ืขืจ ืจืขื–ื•ืœื˜ืึทื˜ ืคื•ืŸ ื“ื™ ืึทืคึผืขืจื™ื™ืฉืึทื ื– ื•ื•ืขื˜ ื–ื™ื™ืŸ ืื•ืžื’ืขืงืขืจื˜ ืื™ืŸ ื™ืขื“ืขืจ ืฉื•ืจื”, ื“.ื”. ืึธืŸ ื˜ืฉืึทื ื’ื™ื ื’ ื“ื™ ื’ืึทื ืฅ ื ื•ืžืขืจ ืคื•ืŸ ืจืึธื•ื– ืื™ืŸ ื“ื™ ื˜ื™ืฉ.

ืคึฟืึทืจ ื‘ื™ื™ึทืฉืคึผื™ืœ, ืœืึธืžื™ืจ ื ืขืžืขืŸ ื“ื™ ื˜ื™ืฉ ื˜ื™ื˜ืึทื ื™ืง. ืžื™ืจ ืงืขื ืขืŸ ืจืขื›ืขื ืขืŸ ื•ื•ืึธืก ืคึผืจืึธืฆืขื ื˜ ื“ื™ ืคึผืจื™ื™ึทื– ืคื•ืŸ ื™ืขื“ืขืจ ื‘ื™ืœืขื˜ ืื™ื– ื’ืขื•ื•ืขืŸ ืื™ืŸ ื–ื™ื™ืŸ ื›ืึทื˜ืข ืงืœืึทืก.

ืฆื• ื˜ืึธืŸ ื“ืึธืก, ืžื™ืจ ื“ืึทืจืคึฟืŸ ืฆื• ื‘ืึทืงื•ืžืขืŸ ืื™ืŸ ื™ืขื“ืขืจ ืฉื•ืจื” ื“ื™ ื’ืึทื ืฅ ืคึผืจื™ื™ึทื– ืคื•ืŸ ืึท ื‘ื™ืœืขื˜ ืคึฟืึทืจ ื“ื™ ืงืจืึทื ื˜ ืงืึทื‘ื™ื ืข ืงืœืึทืก ืฆื• ื•ื•ืึธืก ื“ื™ ื‘ื™ืœืขื˜ ืื™ืŸ ื“ื™ ืฉื•ืจื” ื’ืขื”ืขืจื˜, ืื•ืŸ ื˜ื™ื™ืœืŸ ื“ื™ ืคึผืจื™ื™ึทื– ืคื•ืŸ ื™ืขื“ืขืจ ื‘ื™ืœืขื˜ ื“ื•ืจืš ื“ื™ ื’ืึทื ืฅ ืงืึธืก ืคื•ืŸ ืึทืœืข ื˜ื™ืงื™ืฅ ืคื•ืŸ ื“ืขืจ ื–ืขืœื‘ื™ืงืขืจ ืงืึทื‘ื™ื ืข ืงืœืึทืก .

ืคึฟืขื ืฆื˜ืขืจ ืคืึทื ื’ืงืฉืึทื ื– ืื™ืŸ R: tidyverse, dplyr

ืฆื• ืœื™ื™ื’ืŸ ื ื™ื™ึทืข ืฉืคืืœื˜ืŸ ืึธืŸ ื ื™ืฆืŸ ืจื•ื“ืขืจืŸ ื’ืจื•ืคึผื™ื ื’, ืื™ืŸ dplyr ื‘ืื“ื™ื ื˜ ืคึฟื•ื ืงืฆื™ืข mutate().

ืื™ืจ ืงืขื ืขืŸ ืกืึธืœื•ื•ืข ื“ื™ ืคึผืจืึธื‘ืœืขื ื“ื™ืกืงืจื™ื™ื‘ื“ ืื•ื™ื‘ืŸ ื“ื•ืจืš ื’ืจื•ืคึผื™ื ื’ ื“ืึทื˜ืŸ ื“ื•ืจืš ืคืขืœื“ Pclass ืื•ืŸ ืกืึทืžื“ ื“ื™ ืคืขืœื“ ืื™ืŸ ืึท ื ื™ื™ึท ื–ื™ื™ึทืœ ืึธืคึผืฆืึธืœ. ื•ื•ื™ื™ึทื˜ืขืจ, ื•ื ื’ืจืึธื•ืคึผ ื“ื™ ื˜ื™ืฉ ืื•ืŸ ื˜ื™ื™ืœืŸ ื“ื™ ืคืขืœื“ ื•ื•ืึทืœื•ืขืก ืึธืคึผืฆืึธืœ ืฆื• ื•ื•ืึธืก ื’ืขื˜ืจืืคืŸ ืื™ืŸ ื“ื™ ืคืจื™ืขืจื“ื™ืงืข ืฉืจื™ื˜.

ืคึฟืขื ืฆื˜ืขืจ ืคืึทื ื’ืงืฉืึทื ื– ืื™ืŸ R: dplyr

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

ืคึฟืขื ืฆื˜ืขืจ ืคืึทื ื’ืงืฉืึทื ื– ืื™ืŸ ืจ: data.table

ื“ื™ ืœื™ื™ื–ื•ื ื’ ืึทืœื’ืขืจื™ื“ืึทื ื‘ืœื™ื™ื‘ื˜ ื“ื™ ื–ืขืœื‘ืข ื•ื•ื™ ืื™ืŸ dplyr, ืžื™ืจ ื“ืึทืจืคึฟืŸ ืฆื• ืฉืคึผืึทืœื˜ืŸ ื“ื™ ื˜ื™ืฉ ืื™ืŸ ืคึฟืขื ืฆื˜ืขืจ ื“ื•ืจืš ืคืขืœื“ Pclass. ืจืขื–ื•ืœื˜ืึทื˜ ืื™ืŸ ืึท ื ื™ื™ึท ื–ื™ื™ึทืœ ื“ื™ ืกื•ืžืข ืคึฟืึทืจ ื“ื™ ื’ืจื•ืคึผืข ืงืึธืจืึทืกืคึผืึทื ื“ื™ื ื’ ืฆื• ื™ืขื“ืขืจ ืจื•ื“ืขืจืŸ, ืื•ืŸ ืœื™ื™ื’ืŸ ืึท ื–ื™ื™ึทืœ ืื™ืŸ ื•ื•ืึธืก ืžื™ืจ ืจืขื›ืขื ืขืŸ ื“ื™ ื˜ื™ื™ืœืŸ ืคื•ืŸ ื“ื™ ืคึผืจื™ื™ึทื– ืคื•ืŸ ื™ืขื“ืขืจ ื‘ื™ืœืขื˜ ืื™ืŸ ื–ื™ื™ึทืŸ ื’ืจื•ืคึผืข.

ืฆื• ืœื™ื™ื’ืŸ ื ื™ื™ึทืข ืฉืคืืœื˜ืŸ ืฆื• data.table ืึธืคึผืขืจืึทื˜ืึธืจ ืคืึธืจืฉื˜ืขืœืŸ :=. ื•ื ื˜ืขืจ ืื™ื– ืึท ื‘ื™ื™ึทืฉืคึผื™ืœ ืคื•ืŸ ืกืึทืœื•ื•ื™ื ื’ ืึท ืคึผืจืึธื‘ืœืขื ื ื™ืฆืŸ ื“ืขื ืคึผืขืงืœ data.table

ืคึฟืขื ืฆื˜ืขืจ ืคืึทื ื’ืงืฉืึทื ื– ืื™ืŸ ืจ: data.table

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'])

ืคืึทื ื’ืงืฉืึทื ื– ืื•ืŸ ืžืขื˜ื”ืึธื“ืก ืงืึธืจืขืกืคึผืึธื ื“ืขื ืฅ ื˜ื™ืฉ

ื•ื ื˜ืขืจ ืื™ื– ืึท ื˜ื™ืฉ ืคื•ืŸ ืงืึธืจืขืกืคึผืึธื ื“ืขื ืฅ ืฆื•ื•ื™ืฉืŸ ืžืขื˜ื”ืึธื“ืก ืคึฟืึทืจ ืคึผืขืจืคืึธืจืžื™ื ื’ ืคืึทืจืฉื™ื“ืŸ ืึทืคึผืขืจื™ื™ืฉืึทื ื– ืžื™ื˜ ื“ืึทื˜ืŸ ืื™ืŸ ื“ื™ ืคึผืึทืงืึทื“ื–ืฉืึทื– ื•ื•ืึธืก ืžื™ืจ ื”ืึธื‘ืŸ ื‘ืึทื˜ืจืึทื›ื˜.

ื‘ืึทืฉืจื™ื™ึทื‘ื•ื ื’
ืฆื™ื›ื˜ื™ืง
ื“ืึทื˜ืึท.ื˜ืึทื‘ืœืข
pandas

ืœืึธื•ื“ื™ื ื’ ื“ืึทื˜ืึท
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()

ื•ื•ืขืจื˜ื™ืงืึทืœ ืคืึทืจื‘ืึทื ื“ ืคื•ืŸ ื˜ื™ืฉืŸ (UNION)
bind_rows()
rbind()
concat()

ื”ืึธืจื™ื–ืึธื ื˜ืึทืœ ืคืึทืจื‘ื™ื ื“ืŸ ืคื•ืŸ ื˜ื™ืฉืŸ (JOIN)
left_join() / *_join()
merge()
merge()

ื™ืงืขืจื“ื™ืง ืคึฟืขื ืฆื˜ืขืจ ืคืึทื ื’ืงืฉืึทื ื– ืื•ืŸ ืึทื“ื™ื ื’ ืงืึทืœืงื™ืึทืœื™ื™ื˜ื™ื“ ืฉืคืืœื˜ืŸ
group_by() + mutate()
ืึทืจื’ื•ืžืขื ื˜ j ื ื™ืฆืŸ ื“ื™ ืึธืคึผืขืจืึทื˜ืึธืจ := + ืึทืจื’ื•ืžืขื ื˜ by
transform() + assign()

ืกืึธืฃ

ื˜ืึธืžืขืจ ืื™ืŸ ื“ืขื ืึทืจื˜ื™ืงืœ ืื™ืš ื“ื™ืกืงืจื™ื™ื‘ื“ ื ื™ื˜ ื“ื™ ืžืขืจืกื˜ ืึธืคึผื˜ื™ืžืึทืœ ื™ืžืคึผืœืึทืžืขื ื˜ื™ื™ืฉืึทืŸ ืคื•ืŸ ื“ืึทื˜ืŸ ืคึผืจืึทืกืขืกื™ื ื’, ืึทื–ื•ื™ ืื™ืš ื•ื•ืขืœ ื–ื™ื™ืŸ ืฆื•ืคืจื™ื“ืŸ ืื•ื™ื‘ ืื™ืจ ืจื™ื›ื˜ื™ืง ืžื™ื™ืŸ ืžื™ืกื˜ื™ื™ืงืก ืื™ืŸ ื“ื™ ื‘ืึทืžืขืจืงื•ื ื’ืขืŸ, ืึธื“ืขืจ ื ืึธืจ ื”ืขืกืึธืคืข ื“ื™ ืื™ื ืคึฟืึธืจืžืึทืฆื™ืข ื’ืขื’ืขื‘ืŸ ืื™ืŸ ื“ืขื ืึทืจื˜ื™ืงืœ ืžื™ื˜ ืื ื“ืขืจืข ื˜ืขืงื ื™ืงืก ืคึฟืึทืจ ืืจื‘ืขื˜ืŸ ืžื™ื˜ ื“ืึทื˜ืŸ ืื™ืŸ ืจ / ืคึผื™ื˜ื”ืึธืŸ.

ื•ื•ื™ ืื™ืš ื”ืึธื‘ ื’ืขืฉืจื™ื‘ืŸ ืื•ื™ื‘ืŸ, ืื™ื– ื“ืขืจ ืฆื™ืœ ืคื•ืŸ ื“ืขื ืึทืจื˜ื™ืงืœ ื ื™ืฉื˜ ื’ืขื•ื•ืขืŸ ืฆื• ืึธื ื˜ืึธืŸ ืึท ืžื™ื™ื ื•ื ื’ ืื•ื™ืฃ ื•ื•ืึธืก ืฉืคึผืจืึทืš ืื™ื– ื‘ืขืกืขืจ, ื ืึธืจ ืฆื• ืคืึทืจืคึผืึธืฉืขื˜ืขืจืŸ ื“ื™ ื’ืขืœืขื’ื ื”ื™ื™ื˜ ื–ื™ืš ืื•ื™ืกืฆื•ืœืขืจื ืขืŸ ื‘ื™ื™ื“ืข ืฉืคึผืจืึทื›ืŸ, ืึธื“ืขืจ, ืื•ื™ื‘ ื ื•ื™ื˜ื™ืง, ืžื™ื’ืจื™ืจืŸ ืฆื•ื•ื™ืฉืŸ ื–ื™ื™.

ืื•ื™ื‘ ืื™ืจ ืœื™ื™ืงื˜ ื“ืขื ืึทืจื˜ื™ืงืœ, ืื™ืš ื•ื•ืขื˜ ื–ื™ื™ืŸ ืฆื•ืคืจื™ื“ืŸ ืฆื• ื”ืึธื‘ืŸ ื ื™ื™ึทืข ืื‘ืื ืขื ื˜ืŸ ืฆื• ืžื™ื™ืŸ ืึทืจื˜ื™ืงืœ ื™ืึธื•ื˜ื•ื‘ืข ะธ ื˜ืขืœืขื’ืจืึทื ื˜ืฉืึทื ืึทืœื–.

ะžะฟั€ะพั

ื•ื•ืึธืก ืคื•ืŸ ื“ื™ ืคืืœื’ืขื ื“ืข ืคึผืึทืงืึทื“ื–ืฉืึทื– ื˜ืึธืŸ ืื™ืจ ื ื•ืฆืŸ ืื™ืŸ ื“ื™ื™ืŸ ืึทืจื‘ืขื˜?

ืื™ืŸ ื“ื™ ื‘ืึทืžืขืจืงื•ื ื’ืขืŸ ืื™ืจ ืงืขื ืขืŸ ืฉืจื™ื™ึทื‘ืŸ ื“ื™ ืกื™ื‘ื” ืคึฟืึทืจ ื“ื™ื™ืŸ ื‘ืจื™ืจื”.

ื‘ืœื•ื™ื– ืจืขื’ื™ืกื˜ืจื™ืจื˜ ื ื™ืฆืขืจืก ืงืขื ืขืŸ ืึธื ื˜ื™ื™ืœ ื ืขืžืขืŸ ืื™ืŸ ื“ื™ ื™ื‘ืขืจื‘ืœื™ืง. ืกื™ื™ืŸ ืืจื™ื™ืŸื‘ื™ื˜ืข.

ื•ื•ืึธืก ื“ืึทื˜ืŸ ืคึผืจืึทืกืขืกื™ื ื’ ืคึผืขืงืœ ื˜ืึธืŸ ืื™ืจ ื ื•ืฆืŸ (ืื™ืจ ืงืขื ืขืŸ ืื•ื™ืกืงืœื™ื™ึทื‘ืŸ ืขื˜ืœืขื›ืข ืึธืคึผืฆื™ืขืก)

  • ืงืกื ื•ืžืงืก%tidyverse19

  • ืงืกื ื•ืžืงืก%data.table14

  • ืงืกื ื•ืžืงืก%pandas23

42 ื‘ืื ื•ืฆืขืจ ื”ืื‘ืŸ ื’ืขืฉื˜ื™ืžื˜. 9 ื‘ืื ื•ืฆืขืจ ื”ืื‘ืŸ ื–ื™ืš ืืคื’ืขื”ืืœื˜ืŸ.

ืžืงื•ืจ: www.habr.com

ืœื™ื™ื’ืŸ ืึท ื‘ืึทืžืขืจืงื•ื ื’