Slide 1

Slide 1 text

ʁʁʁʮ໺ٿσʔλ෼ੳ͚ͨ͠Ε͹PythonͳΜͰ͔͢ʁʯ …͍ͬͯ͏օ͞·ͷͨΊͷʮΠϚυΩͷεϙʔπΞφϦςΟΫεͷҝͷϓϩάϥϛϯάೖ໳ʯ Shinichi Nakagawa(@shinyorke) Sports Analyst Meetup #6 2020/02/16

Slide 2

Slide 2 text

ࠓ೔ͷ͓࿩͸ • ʮεϙʔπΞφϦςΟΫεͱϓϩάϥϛϯάʯ ͱ͍͏օ͞ΜҰ౓͸ߟ͑ͨࣄ͕͋ΔʢͰ͋Ζ͏ʣ࿩୊Ͱ͢ • طʹ΍ͬͯΔਓ΋, ͜Ε͔Β΍Ζ͏͔໎ͬͯΔਓʹ΋ • ໘ന͓͔͘͠θϩϕʔεͰ͓࿩Ͱ͖Ε͹ͱࢥͬͯ·͢

Slide 3

Slide 3 text

Who am I ?ʢ͓લ୭Αʣ • Shinichi Nakagawaʢத઒ɹ৳Ұʣ • JX Press Corporation/Senior Engineer • Python΋͘΋ࣗ͘शࣨΦʔΨφΠβʔ https://jisyupy.connpass.com/ • SNS౳͸@shinyorkeʢ͠ΜΑʔ͘ʣͱ͍͏໊લͰੜଉ • #Python #DataScience #Baseball⚾ #SABRmetrics #Agile

Slide 4

Slide 4 text

JX PressʢJX௨৴ࣾʣ #ͱ͸ ※ͪΐͬͱ͚ͩձࣾͷ࿩Λ :bow:

Slide 5

Slide 5 text

ςΫϊϩδʔͰʮࠓى͖͍ͯΔ͜ͱʯ Λ໌Β͔ʹ͢Δใಓػؔ • ্هͷϏδϣϯͰใಓͷະདྷΛม͍͑ͯ͘ใಓػ͔ؔͭ, ςΫϊϩδʔɾυϦϒϯͳूஂ, ͦΕ͕JX௨৴ࣾͰ͢. • BtoB SaaSͷʮFASTALERTʯ, ੈ࿦ௐࠪetc… • BtoCͷχϡʔε଎ใΞϓϦʮNewsDigestʯ ʮGoogle Play ϕετΦϒ2019ʯͰ෦໳৆Λड৆

Slide 6

Slide 6 text

ͪͳΈʹshinyorkeͷ࢓ࣄ͸ • σʔλͷ෼ੳͨ͠Γج൫࡞ͬͨΓͯ͠·͢ • ʲݱࡏʳϓϩμΫτͷσʔλ෼ੳͱݟ͑ΔԽ • ʲҎલʳσʔλج൫ߏஙͱӡ༻ • ৄࡉ͸ݴ͑·ͤΜ͕, ౰ࣾϓϩμΫτͷσʔλྔ͸Τά͍ • ͦΜͳฃಆྺ͸JX௨৴ࣾTechϒϩάͰಡΊ·͢ https://tech.jxpress.net/

Slide 7

Slide 7 text

ػցֶशΤϯδχΞ, Ͱ͍ͯ͜΍ʔ • ืूͯ͠·͢ʢ੾࣮ʣ • https://www.wantedly.com/projects/218780 • զͦ͜͸ʂͬͯํ͸ʢWantedlyಡΜͰ͔ΒʣͥͻͲ͏ͧ ஫ɿͪΐͬͱʢ͍΍, ͔ͳΓʣݫ͍͠ཁ݅Ͱ͔͋͢͠Βͣ :bow:

Slide 8

Slide 8 text

ʁʁʁʮத઒͞Μ, ໺ٿͷ࢓ࣄͯ͠·ͨ͠ΑͶʁʯ

Slide 9

Slide 9 text

ʲ౴ʳ͸͍. • ͸͍.ͦͷͱ͓ΓͰ͢. • લ৬Ͱ͋ΔωΫετϕʔεͰτϥοΩϯάσʔλͷղੳɾ෼ੳ …ʹඞཁͳγεςϜ։ൃͳͲ৭ΜͳࣄΛ͍ͯ͠·ͨ͠ • ʮԿͯͨ͠ͷ͔ʯʮͳͥస৬ʯͬͯ࿩୊͸ࠓ೔͸࿩͠·ͤΜ. ࣭໰ʹ΋͓౴͑Ͱ͖ͳ͍ɾ͠·ͤΜͷͰ͔͋͠Βͣ :bow: ͍΍, Ұ͚ͭͩ࿩͢ͱ͢ΔͳΒ͹…

Slide 10

Slide 10 text

ϓϨʔɾτϨʔχϯάͷཧ࿦͸ #baseballgeeks Ͱʂ ͍ΘΏΔ, Player’s Developmentͬͯ෼໺Ͱ͢Ͷ, ͦͬͪ͸Baseball GeeksͰʂ https://www.baseballgeeks.jp/

Slide 11

Slide 11 text

ຊ೔ͷ༧ࠂઌൃʢ͓͠ͳ͕͖ʣ • ʮ໺ੜͷ໺ٿΞφϦετʯͷ͸ͳ͠ • ʮϓϩάϥϛϯάʯͷ͸ͳ͠ • ʮηΠόʔϝτϦΫεʯͷ͸ͳ͠ ※Player’s Developmentͷ࿩͸ຊ೔΍Γ·ͤΜ, Baseball Geeksಡ΋͏ ʢଌఆɾτϨʔχϯάཧ࿦ɾτϥοΩϯάσʔλղੳͳͲʣ

Slide 12

Slide 12 text

ࣗ෼ͷ͸ͳ͠ - ໺ੜͷ໺ٿΞφϦετ׆ಈ ࣗ෼ͷ׆ಈͷ͍··ͰΛͬ͘͟Γͱ

Slide 13

Slide 13 text

ʁʁʁʮσϒαϛͱಉ͡࿩΍Ͱʢখ੠ʣʯ

Slide 14

Slide 14 text

໺ੜͷ໺ٿσʔλαΠΤϯςΟετ׆ಈ • FACTΛݩʹ໺ٿΛ΋ͬͱ໘നָ͘͠Ήɾ΍͍ͬͯ͘׆ಈ • ໺ٿʢʹݶΒͣେ఍ͷ෺ࣄʣ͸ҎԼͷҙݟʢOPINIONʣʹറΒΕ͕ͪ • ৗࣝ΍ओ؍తࢹ఺ʹجͮ͘ࢦಋͱ͔ڭҭʢ㲈͖ͨ͠Γɾ׳शʣ • ᐆດͳղऍ. ʮνϟϯεʹڧ͍ɾऑ͍ʯʮ౤͛ͬ΀Γ͕͍͍ʯˡʁʁʁ • ໺ٿɾεϙʔπͬͯՊֶతʹ٬؍తʹݟΔɾಈ͚Δͱ໘നָ͍͍ͥ͠͠ʂ ͱ͍͏ͷΛʮਅ໘໨ʯʹʮίϛΧϧʯʹ΍͍ͬͯ͘ʮ໺ੑຯ͋;ΕΔݚڀ⽁ʯ

Slide 15

Slide 15 text

ؾʹͳͬͨ͜ͱΛαΫοͱ΍Δ ྫ͑͹͜͏͍͏࿩⽁

Slide 16

Slide 16 text

ؾʹͳΔʮΞΠπʯͱࣅ͍ͯΔ໺ٿબखΛ୳ͤ ͍΍ϞϊϚω͡Όͳ͍Α, ͋͘·Ͱ਺ࣈతͳҙຯͰͶ.

Slide 17

Slide 17 text

ͪΌΜͱઆ໌͢Δͱ… • ݱ࣌఺ͷ௨ࢉ੒੷Λݩʹʮͱ͋Δ໺ٿબख͕୭ʹࣅ͍ͯΔʁʯ ͱ͍͏ͷΛ౷ܭతʹग़ͯ͠Έ·ͨ͠. • ʮྨࣅੑείΞʢSimilarity ScoreʣʯΛ࢖ͬͯࣅ͍ͯΔ͔Ͳ͏͔ΛݟΔ. 1,000఺ຬ఺ͰຊਓͱͲΕ͚ͩࣅͯΔ͔Λൺ΂Δͱ͍͏ࢦඪͰ͢. • Python΄͔ͰβΫοͱ΍Γ·ͨ͠. ৄࡉ͸ϒϩάॻ͖·ͨ͠. https://shinyorke.hatenablog.com/entry/similarity-score-python

Slide 18

Slide 18 text

ྨࣅੑείΞ #ͱ͸ • ຊਓΛ1000఺ͱ͠, ੒੷͓Αͼकඋϙδγϣϯ͔Βݮͯ͡ධՁ ݮ఺͕গͳ͚Ε͹গͳ͍΄Ͳࣅ͍ͯΔ͜ͱʹͳΔ • ܭࢉํ๏ https://www.baseball-reference.com/about/similarity.shtml • ηΠόʔϝτϦΫεͷੜΈͷ਌ϏϧɾδΣʔϜζࢯۘ͝੡ ͭ·Γྺ࢙͸ݹ͘, େੲ͔Βଘࡏ͢Δʢॳग़͸1994೥ʣ ͜Ε, ςετʹग़·͢Αʂ

Slide 19

Slide 19 text

ؾʹͳΔબखɹ˞ϝδϟʔϦʔΨʔݶఆ • Ichiro Suzuki • Yoshitomo Tsutsugo • Shohei Ohtani ※౵߳બखͷΈ, ೔ຊ࣌୅ͷ࠷ऴ੒੷ͱൺֱʢ͋͘·Ͱࢀߟ஋ʣ

Slide 20

Slide 20 text

Ichiro Suzuki & Yoshitomo Tsutsugo Ichiro͞Μ͸֎໺ख͔ͭ޼ଧͳબखʹࣅ͍ͯΔ, ͦͯ͠௨ࢉ੒੷͕ϨδΣϯυ͗͢. Tsutsugoબख͸ࣗ෼ͱࣅͨΑ͏ͳڧଧऀͰ֎໺ख΄͔ࡾྥखʹࣅͯΔͷ͕ڵຯਂ͍. Ichiro Suzuki Yoshitomo Tsutsugo

Slide 21

Slide 21 text

͜͏͍͏ͷΛμογϡϘʔυͰݟͤͯΈΔ. Nuxt.js + FastAPIͳͲͳͲͰ࡞ͬͯΈ·ͨ͠, ͜Ε΋ϒϩά͋Γ·͢. https://tech.jxpress.net/entry/devsumi2020-demo

Slide 22

Slide 22 text

Shohei Ohtaniͱࣅ͍ͯΔਓʢଧऀͱͯ͠ʣ ϠϯΩʔεͷҰྥखLuke Void͕ࣅͯΔͬΆ͍Ͱ͢. ੒੷ʢଧ཰ɾຊྥଧɾଧ఺ɾOPSʣͷงғؾ͕ࣅ͍ͯΔ.

Slide 23

Slide 23 text

ϓϨʔͷʮ࣭ʯΛग़ྥ཰ɾ௕ଧ཰ɾOPSͰൺֱ େ୩͸2೥, ϘΠυ͸3೥MLBͰϓϨʔ. ϘΠυ͸3೥໨Ͱଧ੮૿͑ͯ௿Լ? ͪͳΈʹ೥ྸ͸ϘΠυ্͕Ͱେ୩͸શવए͍ͷͰظ଴͠·ͬͯ͘ྑ͍͸ͣ.

Slide 24

Slide 24 text

ࣅ͍ͯΔબख͕είΞͱͯ͠Θ͔Δͱ… • બखͷະདྷ૾ɾ܏޲͕͔ͭΊΔ. ྫ͑͹͜Ε͔ΒϝδϟʔσϏϡʔ͢Δ౵߳બख͸୭ͬΆ͘ͳΔͱ͔. • Ԡ༻͢Δͱ, ͦͷ··બख੒੷༧ଌʹ΋࢖͑Δ ※ϝδϟʔͷ੒੷༧ଌϞσϧʮPECOTAʯ͸ྨࣅੑείΞΛ࢖༻ • ʮఆྔతʯ͔ͭʮܭଌՄೳʯͳείΞͳͷͰ୭͕ݟͯ΋ಉ͡ …͍ͬͯ͏෼ੳΛ͔Ε͜Ε5೥Ҏ্͍ͯ͠·͢ʢ͜Ε͸͋͘·ͰҰྫʣ

Slide 25

Slide 25 text

ʮLean Baseballʯͱ͍͏ϒϩάʹͨ͘͞Μॻ͍ͨΓ΋͍ͯ͠·͢. ʮNo Engineering, No Baseballʯͱ͍͏෭୊ͷ௨Γ, ʮΤϯδχΞʯʮ໺ٿʯΛத৺ʹࣥච͍ͯ͠·͢. https://shinyorke.hatenablog.com/

Slide 26

Slide 26 text

ϒϩάͷ୅දίϯςϯπ • ΤϯδχΞʢϓϩάϥϛϯάʣ • Pythonɾσʔλܥͷຊ঺հ https://shinyorke.hatenablog.com/entry/python2020 • Pandas, σʔλج൫, etc… https://shinyorke.hatenablog.com/entry/nyumon-pandas • ໺ٿʢσʔλ෼ੳɾηΠόʔϝτϦΫεʣ • ηΠόʔϝτϦΫε https://shinyorke.hatenablog.com/entry/sabr-metrics-2020 • ໺ٿ෼ੳωλʢ͍ͬͺ͍͋Δʣ

Slide 27

Slide 27 text

ଟ͘ͷํʹ͝Ѫ޷௖͍ͯ·͢ʢײँʣ ηΠόʔϝτϦΫεͰͷݕࡧ3Ґ, Pythonຊ͸1Ґ ※ࡢ೥౓ʢ2019ʣͷσʔλΑΓ, Google Analytics/Search ConsoleͰͷܭଌ

Slide 28

Slide 28 text

ʮεϙʔπΞφϦςΟΫεʯ ʮϓϩάϥϛϯάʯ ͷ࿩Λ͢Δͷʹ͏͚ͬͯͭͷܦݧऀ …ͱ఻ΘͬͨʢϋζʣͳͷͰຊ୊΁.

Slide 29

Slide 29 text

ϓϩάϥϛϯάͷ͸ͳ͠ - ͢Δɾ͠ͳ͍ɾͲΕ࢖͏ ͦ΋ͦ΋ϓϩάϥϛϯάͰԿ͕Ͱ͖Δͷ͔ʁ ͢Δʹͯ͠΋Կ͔Β΍Ε͹͍͍ͷ͔ʁʁ...͍ͬͯ͏࿩.

Slide 30

Slide 30 text

ʁʁʁʮ໺ٿσʔλ෼ੳ͚ͨ͠Ε͹PythonͳΜͰ͔͢ʁʯ ͪΐͬͱͨ͠ίϛϡχέʔγϣϯͱΓͳ͕Βߟ͑·͔͢

Slide 31

Slide 31 text

ձ৔ͷօ͞Μʹฉ͍ͯΈ͍ͨʂ Ξϯέʔτ&ΫΠζΛ߹ܭ5໰΄Ͳग़͠·͢, ௚ײͰ͓౴͍͑ͩ͘͞

Slide 32

Slide 32 text

ʲQ1ʳࢲ͸ϓϩάϥϛϯάΛ A. ࢓ࣄ΋͘͠͸झຯͰ΍͍ͬͯΔ B. Ͱ͖ͳ͍ͷͰɾ΍Γ͍ͨͷͰ֮͑Δ͓ؾ࣋ͪ͸͋Δ ʢ΋͘͠͸ษڧதͰ͋Δʣ C. ϓϩάϥϛϯάͬͯͳΜͰ͔͢ʁʢ΋͘͠͸ڵຯͳ͠ʣ

Slide 33

Slide 33 text

ʲQ2ʳࢲ͸σʔλαΠΤϯςΟετʹ A. ʮͳΓ͍ͨʯͱ͸ࢥΘͳ͍ B. ʮͳΓ͍ͨʯͷͰۦ͚ग़͠Ͱϓϩάϥϛϯάͱ਺ֶ΍ͬͯ·͢ C. ಌΕͯ৭ʑͱ͋ͬͯσʔλαΠΤϯςΟετʹͳΓ·ͨ͠ ※σʔλΞφϦετͰ΋͍͍Ͱ͢ʢࠓ೔ͷ৔߹વఔҧ͍͸ͳ͍ʣ

Slide 34

Slide 34 text

ʲQ3ʳࢲ͸εϙʔπΞφϦςΟΫεΛ A. ࢓ࣄʹ͍ͨ͠ͷͰ, ਺ֶͱϓϩάϥϛϯάΛ৸৯๨Εͯ΍ͬͯ·͢ B. ࢓ࣄʹ͍ͨ͠ͷͰ, ΋ͬͱεϙʔπʹৄ͘͠ͳΔͨΊ ਎ମΛಈ͔ͨ͠ΓελδΞϜͰԠԉͨ͠Γ͍ͯ͠·͢ C. ঎ചͱ͍ͯ͠ΔͷͰ͕͢, ࠓͷ࢓ࣄΛϓϩάϥϛϯάͰ Ͳ͏ʹ͔͍ͨ͠ͷͰษڧΛ͍ͯ͠·͢ D. ಛʹ࢓ࣄʹ͍ͨ͠ͱࢥΘͳ͍ͷͰ, झຯͰ΢ΣΠ΢ΣΠ΍Γ·͢

Slide 35

Slide 35 text

ʲQ4ʳઌ΄ͲͷʮྨࣅੑείΞʯͰ͕͢ A. ϓϩάϥϛϯά͠ͳ͍ͱͰ͖ͳ͍͠೉͍͠ B. ࣮͸ϓϩάϥϛϯάͳΜ͍ͯΒͳ͍આ ςετʹͰ·͢Αʂͬͯݴͬͨ΍Ζʁͦ͏͍͏͜ͱ΍Ͱ.

Slide 36

Slide 36 text

ʲQ5ʳεϙʔπΞφϦςΟΫεʹPython A. ඞཁͩͱࢥ͍·͢, ແ͍ͱ࿩ʹͳΒͳ͍. B. ผʹExcelͰ΋RͰ΋SQLͰ΋ԿͰ΋ྑ͍ͱࢥ͍·͢. C. ಓ۩ͷ࿩Λ͢ΔͳΜͯφϯηϯε͡ΌͶʁ

Slide 37

Slide 37 text

ࢲʢshinyorkeʣͷճ౴ͱࢥ͍. Q4ͱQ5͸໌֬ͳਖ਼ղ͕͋Γ·͢.

Slide 38

Slide 38 text

ʲQ1ʳࢲ͸ϓϩάϥϛϯάΛ ʲAʳ࢓ࣄ΋͘͠͸झຯͰ΍͍ͬͯΔ ͔Ε͜Ε20೥ۙ͘͜ͷ঎ചͯ͠·͢Ͷʢখ੠ʣ

Slide 39

Slide 39 text

ʲQ2ʳࢲ͸σʔλαΠΤϯςΟετʹ ʲAʳʮͳΓ͍ͨʯͱ͸ࢥΘͳ͍ • ࢓ࣄͱͯ͠σʔλؔ܎ͷࣄΛ͍ͯ͠·͕͢ਖ਼֬ʹݴ͏ͱ, ʮͳΓ͍ͨͱࢥͬͯͳ͔͚ͬͨͲ݁ՌͦΕͬΆ͘ͳͬͨʯ • ͲͪΒ͔ͱ͍͑͹σʔλूΊͨΓ੔උͨ͠Γ࢖͑Δܗʹ͢Δ ʮσʔλج൫ΤϯδχΞʯ͕ਖ਼͍͔͠΋͠Εͳ͍ • ෼ੳͦͷ΋ͷͱલॲཧ͕ΊͪΌͪ͘Ό޷͖Ͱ͢ࢲ͸

Slide 40

Slide 40 text

ʲQ3ʳࢲ͸εϙʔπΞφϦςΟΫεΛ ʲAʳ࢓ࣄʹ͍ͨ͠ͷͰ, ਺ֶͱϓϩάϥϛϯάΛ৸৯๨Εͯ΍ͬͯ·͢ ʲDʳಛʹ࢓ࣄʹ͍ͨ͠ͱࢥΘͳ͍ͷͰ, झຯͰ΢ΣΠ΢ΣΠ΍Γ·͢ • ਖ਼֬ʹݴ͏ͱ • ʲAʳલ৬ʹब͘·Ͱ͕໌Β͔ʹͦ͏ͩͬͨ • ʲDʳ࠷ॳ͸झຯͰ΍ͬͯ·ͨ͠&ݱ৬ʹ͍͔ͭͯΒ͸࠶ͼझຯʹ • ʮΤϯδχΞϦϯά͕େ޷͖Ͱ໺ٿ͸σʔλαΠΤϯεͷର৅ʯͳͷ͸͔֬

Slide 41

Slide 41 text

εϙʔπΞφϦςΟΫεΛΨνͰ΍Δਓ΁ • ৸৯๨ΕΔ·Ͱ຅಄͢Δ • υϝΠϯ஌ࣝʢͱѪ৘ʣʹภΔͳ ໺ٿσʔλαΠΤϯεྺ7೥?8೥??બख͔ΒͷΞυόΠεͰ͢

Slide 42

Slide 42 text

৸৯๨ΕΔఔ౓ʹϓϩάϥϛϯάͱ਺ֶΛ • ϚδͰεϙʔπΞφϦςΟΫεΛ࢓ࣄʹ͍ͨ͠ਓ͸, ʮ৸৯Λ๨ΕΔʢ͙Β͍ͷ֮ޛʣͰϓϩάϥϛϯάͱ਺ֶʹ޲͖߹͏ʯ ֮ޛ͸͍ͯͩ͘͠͞ʢܦݧऀޠΔʣ • ࣮ࡍʹࢲ͸໺ٿͷγʔζϯத΋ฏ೔໷ͱ͔ि຤͸໺ٿϓϩάϥϛϯάʹ ຅಄ͯͨ͠ʢ࢓ࣄʹ͔ͨͬͨ͠ͷͱ޷͖͔ͩͬͨΒʣ • ϓϩάϥϛϯά͕ॳΊͯͩͬͨΓ, ࢓ࣄͱҧ͏ݴޠͳΒͳ͓ͷ͜ͱ. • ͪͳΈʹϓϨʔ͸ωοτ΍TVͰ؍ઓ, ٿ৔ߦ͘ͷ͸೥ʹ1, 2ճʢࠓݱࡏ΋ʣ

Slide 43

Slide 43 text

υϝΠϯ஌ࣝʢͱѪ৘ʣʹภΔͳ • ʮυϝΠϯ஌ࣝ = ର৅ڝٕ΁ͷ஌ࣝʯ, Ѫ৘͸ݴΘͣ΋͕ͳ ͻͬ͘ΔΊͯ, ʮϑΝϯʢΦλΫʣతͳࢥߟɾߦಈʯͷ͜ͱ. • ϑΝϯ໨ઢɾࢥߟ͔Β͘Δภͬͨݟղɾ஌͕͍ࣝͭͯ͘Δͱ Ͳ͏ͯ͠΋ओ؍తͳΞΫγϣϯʹͳͬͯ͠·͏. • ཁ͢Δʹ, ʮϑΝϯͳ͚ͩͰ͸࢓ࣄʹͰ͖·ͤΜΑʂʯ ϏδωεϚϯͱͯ͠࢓ࣄΛ͢Δೳྗͷํ͕େࣄʢ࢓ࣄʹ͢ΔͳΒʣ

Slide 44

Slide 44 text

ελϯεΛม͍֮͑ͯ͘ޛ, ͋Γ·͔͢ʁ ࢲ͸ݩʑTVɾωοτ؍ઓ&਺ࣈ͋Ε͹ָ͍͠೿ͩͬͨͷͰͬ͘͠Γ͖·ͨ͠ Έͳ͞Μ͸Ͳ͏͔ͳʁ͍ͣΕʹͯ͠΋εϙʔπΞφϦςΟΫε΍ΔͳΒ຅಄͠·͠ΐ͏ ->

Slide 45

Slide 45 text

ʲQ4ʳઌ΄ͲͷʮྨࣅੑείΞʯͰ͕͢ ʲBʳ࣮͸ϓϩάϥϛϯάͳΜ͍ͯΒͳ͍આ • ࣮ଶ͸࢛ଇԋࢉͳͷͰExcelͷηϧूܭͰͰ͖ͪΌ͍·͢ ϏϧɾδΣʔϜζ͸ϓϩάϥϚʔͰ͸ͳ͍ʢ͸ͣʣ • ͪͳΈʹࠓ೔ͷσϞ͸PythonͰ͕͢, ݩωλ͸RͰͨ͠

Slide 46

Slide 46 text

ʁʁʁʮ͡Ό͋ԿނR͔ΒPythonʹͨ͠ϯΰʁʯ ͖ͬͱͦ͏͍͏ٙ໰΋͋ΔͰ͠ΐ͏, ҆৺͍ͯͩͪ͘͠͞ΌΜͱ౴͑·͢

Slide 47

Slide 47 text

ࢲ͕໺ٿσʔλαΠΤϯεͰΑ͘࢖͏ಓ۩ • Pythonʢݸਓతʹແ͍ͱࠔΔʣ • DatabaseʢSQLͱKVS, ࣌ં࢖͏ʣ • Rʢઌਓͷ͓஌ܙΛआΓΔͱ͖ʹ࢖͏ʣ

Slide 48

Slide 48 text

Python • σʔλαΠΤϯεʹWebΞϓϦ, IoTσόΠεͷதͰ࢖ͬͨΓ, ୀ۶ͳ࢓ࣄʢࣄ຿࡞ۀʣΛ΍ΒͤͨΓͱԿͰ΋࢖͑Δݴޠʢ͔֮ͭ͑΍͍͢ʣ. • ʮAIͷݴޠ΍ʂʯʮML/DL΍ΔͳΒඞਢʂʯͱ͔ͱ͔ݴΘΕ·͕͢, ผʹσʔλαΠΤϯεઐ໳ͷݴޠͰ͸͋Γ·ͤΜʂ • ਖ਼௚, Ruby΍JavaScript, JavaͰ΋ಉ͜͡ͱ͕Ͱ͖Δ͕, σʔλαΠΤϯεʹภΔͱΉͪΌͪ͘Όڧ͍ͷ͸ࣄ࣮. ※MLɿMaschine Learningʢػցֶशʣ, DLɿDeep Learningʢਂ૚ֶशʣ

Slide 49

Slide 49 text

Database • σʔλΛӬଓతʹอଘ͠, ࢖͏ͨΊʹඞཁͳιϑτ΢ΣΞ • Ұ࣌తͳσʔλͳΒCSV΍JSON౳ͷϑΝΠϧͰྑ͍͕ γεςϜԽ͢ΔͳͲ͢Δ৔߹͸ແ͍ͱࠔΔ • MySQL΍SQLiteͱ͍ͬͨʮSQLʯͰૢ࡞͢Δ΋ͷ redisͳͲͷʮKey Value Store(KVS)ʯͱ͍ͬͨछྨ͕͋Δ ※ϗϯτ͸΋ͬͱࡉ͔͍ҧ͍͋Δ&આ໌ඞཁͦ͏Ͱ͕͢୺ંΓ·͢ :bow:

Slide 50

Slide 50 text

R • ओʹ౷ܭΛͨ͠ΓΞφϦετͳ࢓ࣄΛ͢Δਓ͕࢖͏πʔϧ • ౷ܭϥΠϒϥϦ΍άϥϑඳը͕ΊͪΌͪ͘Όڧྗ ౷ܭͱՄࢹԽʹಛԽ͢ΔͷͰ͋Ε͹PythonΑΓΠέͯΔ ͳ͓, Web΍IoT, γεςϜ։ൃ༻్ʹ͸޲͍͍ͯͳ͍ • ໺ٿք۾͸σʔλ෼ੳͷࣄྫ͕RͰ࣮૷͞Ε͍ͯΔྫ͕ଟ͘ ݸਓతʹ͸PythonʹҠ২͢Δ໨తͰ֮͑࢝Ίͨ

Slide 51

Slide 51 text

ͪͳΈʹઌ΄ͲͷσϞͰ͓ݟͤͨ͠΋ͷ ྨࣅੑείΞΛදࣔ͢ΔWebΞϓϦͷߏ੒.

Slide 52

Slide 52 text

ͪͳΈʹઌ΄ͲͷσϞͰ͓ݟͤͨ͠΋ͷ ྨࣅੑείΞΛදࣔ͢ΔWebΞϓϦͷߏ੒.

Slide 53

Slide 53 text

γεςϜͱͯ͠ѻ͏ͨΊPythonʹॻ͖׵͑ • ྨࣅੑείΞΛͪΐ͍ݟ͙ͤΒ͍ͳΒ, Rͷ··΋͘͠͸Excel΍ SpreadsheetͰશવྑ͍ • ͕, σϞͷΞϓϦʹ૊ΈࠐΉ౳ͷγεςϜతͳཁ͕݅͋ͬͨ ͷͰPythonʹͨ͠ʢ։ൃऀͰ͋Δshinyorkeͷ౎߹Ͱʣ • ݸਓతʹ͸ʮPython 33 - 4 Rʯ͙Β͍ͷཧղ౓ͷ͕ࠩ R͕ਏ͍Pythonͷ΄͏͕΍Γ͍ͨͱ͍͏ཧ༝΋͋Δ #NHK

Slide 54

Slide 54 text

ʲQ5ʳεϙʔπΞφϦςΟΫεʹPython ʲCʳಓ۩ͷ࿩Λ͢ΔͳΜͯφϯηϯε͡ΌͶʁ • ΍Δ͜ͱͷϨϕϧײʹΑͬͯಓ۩͸ม͑Δ΂͖Ͱ͢ • ྫ͑͹ଧ཰, OPSͷܭࢉ͙Β͍ͩͬͨΒ҉ࢉͰ΋͍͚ΔͰ͠ΐʁ WARͱ͔wRAAͷܭࢉͰRͳΓPython͋ͬͨΒศརͰ͠ΐʁʁͱ͔ • Ϩϕϧײ͸ʮ3ͭͷࢥߟ, 2ͭͷελϯεʯΛݩʹߟ͑Δ

Slide 55

Slide 55 text

ʮ3ͭͷࢥߟ, 2ͭͷελϯεʯ ࠓ೔ͷେ੾ͳΦνͳͷͰ ͬ͘͡Γ࿩͠·͢ͶʢχοίϦʣ

Slide 56

Slide 56 text

ηΠόʔϝτϦΫεͷ͸ͳ͠ - σʔλ԰͞Μͷ৺ߏ͑Λఴ͑ͯ ࠓ೔ͷ͓࿩ͷΦνͰ͢, ΋͏͙͢ऴΘΔ΍Ͱ

Slide 57

Slide 57 text

ࡢ೥ॻ͍ͨϒϩάͷ࿩Λݩʹ΍Γ·͢. 30෼Ͱཧղ͢ΔηΠόʔϝτϦΫεͷڭՊॻ - ໺ٿΛ౷ܭతʹָ͠΋͏ https://shinyorke.hatenablog.com/entry/sabr-metrics-2020

Slide 58

Slide 58 text

ηΠόʔϝτϦΫε͔ΒֶͿ • εϙʔπΞφϦςΟΫεʹ͓͚Δʮϗϯτʹେ੾ͳ͜ͱʯ • ΑΓ۩ମతʹ͸ • 3ͭͷࢥߟ • 2ͭͷελϯε

Slide 59

Slide 59 text

ʲ͓͞Β͍ʳηΠόʔϝτϦΫε #ͱ͸

Slide 60

Slide 60 text

ηΠόʔϝτϦΫε͸໺ٿʹ͓͍ͯ ൃੜ͢ΔσʔλΛ౷ܭֶతͳ ΞϓϩʔνͰ෼ੳΛߦ͍ɺ બखͷೳྗɾνʔϜͷڧ͞ͳͲͱ͍ͬͨࣄ ΛఆྔతʹࢦඪԽɾݴޠԽ͠ɺ νʔϜɾબखʹ໾ཱͯΔͨΊͷ ख๏ɾߟ͑ํͰ͋Δ.

Slide 61

Slide 61 text

βΫοͱཁ໿͢Δͱ • ʮݴޠԽʢԾઆԽʣʯ্ͨ͠ͰʮܭଌՄೳʯͳࢦඪԽ͢Δͷ͕ ηΠόʔϝτϦΫε͓ΑͼεϙʔπΞφϦςΟΫεͷେݪଇ • ྫ͑͹͜͏͍͏ײ͡ • ڧଧऀ͔൱͔ɿOPS, RC, wRAA, etc… • ޷౤ख͔൱͔ɿxFIP, K/9, BB/9, etc… • ޷क͔੿क͔ɿRF, DRS, UZR, etc…

Slide 62

Slide 62 text

ηΠόʔϝτϦΫεʹ͔ܽͤͳ͍ ʮ3ͭͷࢥߟ, 2ͭͷελϯεʯ

Slide 63

Slide 63 text

3ͭͷࢥߟ • ৗࣝʹറΒΕͳ͍ • ٬؍తͳࣄ࣮Λॏࢹ͢Δ • ఆྔతʹߟ͑Δ ໊ஶʮηΠόʔϝτϦΫεೖ໳ʯʹͯݴٴ͞Ε͍ͯ·͢. https://amzn.to/37gRKSI

Slide 64

Slide 64 text

ৗࣝʹറΒΕͳ͍ ʮैདྷͷৗࣝ΍ܦݧଇʹറΒΕͣʹࠜຊతʹ෺ࣄͷ࢓૊ΈΛଊ͑௚͢ʯ by ηΠόʔϝτϦΫεೖ໳ • ྫ͑͹, ϝσΟΞɾϑΝϯɾී௨ͷਓ͸༏लͳଧऀΛʮଧ཰ɾଧ఺ɾຊྥଧʯͰݟ·͢ • ͕ϗϯτʹͦΕͰ͍͍ͷͩΖ͏͔ʁ • ૬खͷकඋ͕Լख͔ͦͩ͘ΒώοτՔ͛Δ͔΋ʢ૬खνʔϜͷ͓͔͛ʣ • ͦ΋ͦ΋ϥϯφʔ͕ͨ͘͞Μग़ΔνʔϜ͔ͩΒଧ఺ޤ৯ʹʢࣗνʔϜͷ͓͔͛ʣ • ʁʁʁʮϗʔϜϥϯςϥε࠷ߴ΍ʂʯʢٿ৔ͷ͓͔͛ʣ • ࠓ·Ͱʮৗࣝʯͱݺ͹Ε͖ͯͨ΋ͷΛ·ͣߟ͑௚͢ͱ͜Ζ͔Β͸͡ΊΔ

Slide 65

Slide 65 text

٬؍తͳࣄ࣮Λॏࢹ͢Δ ʮओ؍ʹཔΒͣʹ٬؍తͳࣄ࣮ʹ΋ͱ͍ͮͯߟ͑Δ͜ͱʯ by ηΠόʔϝτϦΫεೖ໳ • ໺ٿ͸ָ͍͠ɾੌ͍ͷͰओ؍ʢओޠʣ͕େ͖͘ͳΓ͕ͪ • γϡΞͳόοςΟϯά͕΢Ϧͳ૸߈कࡾഥࢠἧͬͨ֎໺ख • ౤͛ͬ΀Γ͕͍͍ϑΥʔϜ͔Β܁Γग़͞ΕΔΩϨ͕ൈ܈ͷετϨʔτ • …ͳͲͳͲ, ΈΜͳ޷͖ʢὃ͞ΕΔʣ͡ΌΜʁࢲ΋ͩΑʢ͔ͩΒ٬؍తʹݟΔʣ • ָ͍͠ؾ࣋ͪΛ཈͑ͯ, ʮ٬؍తʯͳࣄ࣮ʹண໨ͯ͠ಡΉɾޠΔ ʮϦʔάฏۉΑΓٿ଎͕ग़ΔετϨʔτʯʮଧٿ଎౓͕଎͍ϥΠφʔ͕ଟ͍ʯͱ͔

Slide 66

Slide 66 text

ఆྔతʹߟ͑Δ ʮ٬؍తͳࣄ࣮ΛධՁ͢ΔࡍʹॏཁͱͳΔͷ͕ఆྔతʹߟ͑Δͱ͍͏͜ͱͰ͢ʯ by ηΠόʔϝτϦΫεೖ໳ • ٬؍తʹߟ͑Δ = Կ͔͠Βͷํ๏Ͱܭଌ͕Ͱ͖Δ, ͜ͱ. • ʮྔʢউར਺ɾಘ఺ɾείΞͳͲʣʯʮ཰ʯͱ͍ͬͨ΋ͷʹ׵ࢉͯ͠ఆྔԽ͍ͯ͘͠ • ྔɿWARʢউར਺ʣ, wRAAʢಘ఺ʣ, ྨࣅੑείΞʢείΞʣͳͲ • ཰ɿFIPʢxFIPʣ, K/BB, wOBA, OPSͳͲ • ྔ͸࣮ࡍͷߩݙ౓, ࣭͸ϓϨʔ΍Πϕϯτͷਫ਼౓ɾ੒ޭ཰ʹد༩͢Δࢦඪ͕ଟ͍

Slide 67

Slide 67 text

ʮఆྔతʯʹଊ͑Δͷʹʮఔ౓ʯ͕େ੾ • ղ͖͍ͨ՝୊ʢISSUEʣʹ߹ΘͤͯʮఆྔԽʯ͸ఔʑʹ • ʮݱ໾ͰҰ൪͜Θ͍ଧऀ͸୭͔ʁʯΛఆྔԽ͢Δͱͯ͠ • ʮಘ఺ʯʹεέʔϧ͢ΔRC΍wRAA͕ྑͦ͞͏͕ͩܭࢉํ๏͸Ͳͬͪ΋ෳࡶ • ୯ʹڧ͍ଧऀΛฒ΂ΔͳΒOPSͰ΋ࣄ͕଍ΓΔʢग़ྥ཰ͱ௕ଧ཰Λ଍͚ͩ͢ʣ • RC΋wRAA΋OPS΋, ॏཁͳઆ໌ม਺͸ʮྥଧʯͳͷͰ݁Ռ͸વఔมΘΒͳ͍ ʢগͳ͘ͱ΋ଧܸͰڧ͍ଧऀΛ্͔Β3ਓग़͢෼ʹ͸ʣ • ʮఆྔԽʯͦͷ΋ͷΛ໨తʹͤͣ,ʮ٬؍ࢹʯ͢ΔͨΊʮఆྔԽʯΛ೗Կʹγϯϓϧʹ͢Δ͔Λ໨తʹ

Slide 68

Slide 68 text

2ͭͷελϯε • ৗʹISSUEʢղ͘΂͖՝୊ʣΛݴޠԽ͢Δ • ࠶ݱੑΛ୲อ͢Δ ͬͪ͜͸ࢲʢshinyorkeʣͷಠࣗղऍͰ͢.

Slide 69

Slide 69 text

ৗʹISSUEΛݴޠԽ͢Δ • ʮηΠόʔϝτϦΫε͕͍ͨ͠ʯ͡Όμϝ ʮηΠόʔϝτϦΫεͰ”ԿΛূ໌”͍͔ͨ͠ʯ͕ॏཁ • ղ͘΂͖՝୊ʢISSUEʣΛҰจʹ͠, ͜ΕΛͭ͘͜͠ূ໌͢Δ ؾ࣋ͪͱश׳Λ਎ʹ͚ͭΔ • 3ͭͷࢥߟͰݴ͑͹ʮৗࣝʹറΒΕͳ͍ʯʮ٬؍తʯʹ֘౰͢Δ

Slide 70

Slide 70 text

ے͕ྑ͍ISSUEɾྑ͘ͳ͍ISSUE • ے͕ྑ͍ʢఆྔతͳࢦඪΛ༻͍ͯূ໌Մೳʣ • νʔϜͰߩݙ͍ͯ͠Δʢ଍ΛҾͬு͍ͬͯΔʣଧऀΛ஌Γ, ΑΓΑ͍ى༻ํ๏Λ໛ࡧͯ͠ΈΔ • ळࢁᠳޗͷ୅ΘΓʹʓʓʢ୭͔֎໺खʣΛҰ೥ؒηϯλʔͰى༻ͨ͠Β੢෢ͷ੒੷͸্͕ΔʁԼ͕Δʁ • େ୩ᠳฏ͕౤खʹઐ೦ͨ͠৔߹ΤϯδΣϧεͷಘࣦ఺ࠩ͸Ͳ͏มԽ͢Δʁ • ے͕ྑ͘ͳ͍ʢझຯɾ༡ͼͱͯ͠͸ྑ͍͕σʔλ෼ੳͱͯ͠͸ʁʣ • ೥เ༧ଌʢ੒੷ͱ૊Έ߹ΘͤͯROIධՁͳΒΑ͍ISSUE, ༧ଌ”͚ͩ”ͩͱझຯωλͬΆ͍ʣ • ग़਎஍ผͰ੒੷ͷ܏޲ʢϝσΟΞاըͱͯ͠໘ന͍͕, ͜ΕͰͲ͏͍ͬͨISSUE͕ղ͚Δ͔ͳʁʣ

Slide 71

Slide 71 text

࠶ݱੑΛ୲อ͢Δ • ਺͓ࣜΑͼϓϩάϥϜͷίʔυ౳Ͱࢦඪ͕࠶ݱͰ͖Δ͜ͱ • ʮ͍͍ײ͡ʹఆྔԽͰ͖·ͨ͠ʂ਺ࣜΘ͔Μͳ͍ʂʂʯ ͸ҙຯ͕ͳ͍ʢଞऀ͕ධՁɾݕূͰ͖ͳ͍ʣ • ਺ࣜͱͯ͠ఏࣔ͢Δ, ϓϩάϥϜͷίʔυʢςετ͕͋Δͱ˕ʣ ͜ΕΒ͕ࠜڌʢ࿦จͳΓϒϩάͳΓʣͱҰॹʹ͋ͬͯ੒ཱ͢Δ

Slide 72

Slide 72 text

͍ͩͿԕճΓ͠·͕ͨ͠ ͦΖͦΖຊ୊ͷ౴͑Λ

Slide 73

Slide 73 text

ʁʁʁʮ໺ٿσʔλ෼ੳ͚ͨ͠Ε͹PythonͳΜͰ͔͢ʁʯ

Slide 74

Slide 74 text

ʲ౴ʳΩϛ͕Ͳ͏͍͔ͨ࣍͠ୈͰ͢Ͷ

Slide 75

Slide 75 text

ISSUEʹ߹ΘͤͯʮఔʑʯͳखஈΛબ΅͏ • ͪΐͬͱͨ͠໺ٿͷࢦඪܭࢉɾධՁͳΒి୎΍ExcelͰࡁΉ͜ͱଟ͍ ࣮ࡍʹࢲ΋ͪΐͬͱͨ͠ܭࢉ͸ి୎Ͱ΍͍ͬͯ·͢. • ౷ܭతɾ਺ֶతʹߴ౓ͳΞϓϩʔνΛ͠ͳ͍ͱղ͚ͳ͍, γεςϜԽ͕͋Δఔ౓લఏʹೖΔ৔߹͸ϓϩάϥϛϯά͠·͠ΐ͏. ͦͷࡍ͸ʮఔ౓ʯͱʮ࠶ݱੑʯΛ๨Εͣʹ. • ϓϩάϥϛϯάݴޠ͸PythonͰ΋RͰ΋JavaͰ΋ԿͰ΋͍͍Ͱ͕͢ Ұ൪ΠέͯΔͷ͸,ʮϓϩάϥϛϯάΛ͠ͳͯ͘΋ղ͚Δʯ͜ͱ

Slide 76

Slide 76 text

εϙʔπΞφϦςΟΫεʹಌΕ͍ͯΔਓ΁ • ࢓ࣄʹ͍ͨ͠ਓ΁ • झຯͰ͸͡ΊΔɾଓ͚Δํ΁

Slide 77

Slide 77 text

࢓ࣄʹ͍ͨ͠ਓͨͪ΁ • ·ͣ͸࢓ࣄΛ௨ͯ͡ܦݧͨ͘͞ΜੵΈ·͠ΐ͏ • ϓϩάϥϛϯάɾ౷ܭతͳ΋ͷ • ՝୊ɾISSUEۦಈͰͷσʔλ෼ੳ • ϑΝϯ΍झຯతͳߦಈɾؾ࣋ͪ΋େࣄͰ͕͢, ࢓ࣄ͕ग़དྷͳ͍ͱͲ͏ʹ΋͜͏ʹ΋ཱͪճΒͳ͍ͷͰ, ৸৯๨ΕΔఔ౓ʹษڧͱ͔Ξ΢τϓοτ͍͖ͯ͠·͠ΐ͏

Slide 78

Slide 78 text

झຯͰ΢ΣΠ΢ΣΠ΍Γ͍ͨਓ΁ • ޷͖ͳςʔϚɾϓϩάϥϛϯάݴޠͳΜͰ΋͍͍ͷͰ ࣌ؒΛͱͬͯ޷͖উख৭ʑ΍Δͱྑ͍Ͱ͠ΐ͏ • ෼ੳͨ͠΋ͷ΍Θ͔ͬͨ͜ͱΛϒϩάͰॻ͍ͨΓ, #spoana ͱ͔Baseball Play StudyͰ൸࿐ͯ͠ΈΑ͏ • εϙʔπΞφϦςΟΫεΛ࢓ࣄʹͯ͠΋͠ͳͯ͘΋ ͜ΕΒͷܦݧ͕͖ͬͱ࢓ࣄͱ͔৭Μͳ͜ͱʹ׆͖Δ͸ͣ #΍ͬͯ͜

Slide 79

Slide 79 text

΋ͬͱ஌Γ͍ͨਓ͸ͪ͜Β΋ʢએ఻ʣ ੜ֔ΠνɾΤϯδχΞ #ͱ͸ - ਖ਼ເʹͨ͋͠ͱͷଓ͖ͷ͸ͳ͠ https://speakerdeck.com/shinyorke/i-want-to-be-part-of-the-senior-engineer

Slide 80

Slide 80 text

ήʔϜηοτ ͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠ Shinichi Nakagawa(Twitter/Facebook/etc… @shinyorke)