Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
相談LT #PyNyumon / 20170710
Search
yuzutas0
PRO
July 11, 2017
Technology
1
1.5k
相談LT #PyNyumon / 20170710
"Python入門者の集い" のLT資料となります。
http://yuzutas0.hatenablog.com/entry/2017/07/11/110000
に補足を掲載しています。
yuzutas0
PRO
July 11, 2017
Tweet
Share
More Decks by yuzutas0
See All by yuzutas0
OLSにおける推定量β1=共分散÷分散の導出 / 20230517
yuzutas0
PRO
2
650
民間企業におけるデータ整備の課題と工夫 / 20220305
yuzutas0
PRO
15
7.9k
累計参加者8,500名! #DataEngineeringStudy の43スライドから学ぶ、データエンジニアリングの羅針盤 / 20220224
yuzutas0
PRO
15
5.3k
あの人の自分戦略を聞きたい!2022 #devsumi / 20220218
yuzutas0
PRO
4
4.2k
データ基盤による利益最大化と初期構築プロセス / 20220209
yuzutas0
PRO
10
6.7k
Engineer Career Lounge#1「エンジニアの成長戦略を考える」 #ECLounge カンニングペーパー / 20211217
yuzutas0
PRO
3
1.5k
Data Management Guide - 事業成長を支えるデータ基盤のDev&Ops #TechMar / 20211210
yuzutas0
PRO
19
25k
[投影資料]『実践的データ基盤への処方箋』の刊行にあたって #TechMar / 20210210-2
yuzutas0
PRO
1
3.7k
DXを妨げる要因と実現へのアプローチ by @yuzutas0 / 20211022
yuzutas0
PRO
55
46k
Other Decks in Technology
See All in Technology
All About Sansan – for New Global Engineers
sansan33
PRO
1
1.3k
使いにくいの壁を突破する
sansantech
PRO
1
120
GSIが複数キー対応したことで、俺達はいったい何が嬉しいのか?
smt7174
3
140
2026年、サーバーレスの現在地 -「制約と戦う技術」から「当たり前の実行基盤」へ- /serverless2026
slsops
2
210
Contract One Engineering Unit 紹介資料
sansan33
PRO
0
13k
SREじゃなかった僕らがenablingを通じて「SRE実践者」になるまでのリアル / SRE Kaigi 2026
aeonpeople
6
2.1k
変化するコーディングエージェントとの現実的な付き合い方 〜Cursor安定択説と、ツールに依存しない「資産」〜
empitsu
4
1.3k
日本の85%が使う公共SaaSは、どう育ったのか
taketakekaho
1
140
(金融庁共催)第4回金融データ活用チャレンジ勉強会資料
takumimukaiyama
0
130
Amazon S3 Vectorsを使って資格勉強用AIエージェントを構築してみた
usanchuu
3
440
2人で作ったAIダッシュボードが、開発組織の次の一手を照らした話― Cursor × SpecKit × 可視化の実践 ― Qiita AI Summit
noalisaai
1
370
Context Engineeringが企業で不可欠になる理由
hirosatogamo
PRO
3
420
Featured
See All Featured
Primal Persuasion: How to Engage the Brain for Learning That Lasts
tmiket
0
250
The Hidden Cost of Media on the Web [PixelPalooza 2025]
tammyeverts
2
170
Navigating Weather and Climate Data
rabernat
0
100
The #1 spot is gone: here's how to win anyway
tamaranovitovic
2
930
Stop Working from a Prison Cell
hatefulcrawdad
273
21k
For a Future-Friendly Web
brad_frost
182
10k
What Being in a Rock Band Can Teach Us About Real World SEO
427marketing
0
170
Mind Mapping
helmedeiros
PRO
0
78
Conquering PDFs: document understanding beyond plain text
inesmontani
PRO
4
2.3k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
196
71k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.4k
Building a Modern Day E-commerce SEO Strategy
aleyda
45
8.6k
Transcript
૬ஊLT Pythonॳ৺ऀ͕Jupyter+BigQueryͰσʔλੳج൫Λ࡞Γ࢝Ί͕ͨ ͦΖͦΖݶքͳͷͰॿ͚͍ͯͩ͘͞ 2017-07-10 Pythonೖऀͷू͍#5 presented by @yuzutas0
https://www.pexels.com/photo/reptile-snake-snape-36448/
Pythonॳ৺ऀ͕ ͦΖͦΖݶքͳͷͰ ॿ͚͍ͯͩ͘͞ Jupyter+BigQueryͰσʔλੳج൫Λ࡞Γ࢝Ί͕ͨ
Pythonॳ৺ऀ͕ ͦΖͦΖݶքͳͷͰ ॿ͚͍ͯͩ͘͞ Jupyter+BigQueryͰσʔλੳج൫Λ࡞Γ࢝Ί͕ͨ
ɹ@yuzutas0 ɹPythonॳ৺ऀ ɹ- ࣄSREͱ͔ ɹ- ୲γεςϜͷར༻ݴޠ ɹɹJava,
Node.js, Ruby, Golang, Objective-C
ɹڥߏஙແʹΫϦΞ
ɹ“Hello World” Ͱ·͔͞ͷΤϥʔʂ
ɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹ͜Ε ɹίϩϯ͕͍ΔΒ͍͠
ͱ͍͏ঢ়ଶ͔Βελʔτ
Pythonॳ৺ऀ͕ ͦΖͦΖݶքͳͷͰ ॿ͚͍ͯͩ͘͞ Jupyter+BigQueryͰσʔλੳج൫Λ࡞Γ࢝Ί͕ͨ
ɹɹ1. ࢪࡦੳ → Build/Measure/Learn ɹɹ2. ఆৗతͳKPIϞχλϦϯά ɹɹ3. ػցֶशͷσʔληοτ४උ ɹΈΜͳσʔλ͍͍ͨΑͶ
ɹΈΜͳ͕σʔλΛಠࣗʹͬͨ ݩσʔλ ऩू/Ճ දࣔ/ੳ ɹɹɹɹɹɹɹɹɹɹɹɹɹ෦ॺA
ɹɹɹɹɹɹɹɹɹɹɹɹɹ෦ॺB ɹɹɹɹɹɹɹɹɹɹɹɹɹ෦ॺC ϩάA DB ϩάB Excel Redash Tableau
ɹτϥϒϧଟൃ - πʔϧ͝ͱʹച্ͷ͕ҧ͏ʂ ݩσʔλ ऩू/Ճ දࣔ/ੳ
ɹɹɹɹɹɹɹɹɹɹɹɹɹ෦ॺA ɹɹɹɹɹɹɹɹɹɹɹɹɹ෦ॺB ɹɹɹɹɹɹɹɹɹɹɹɹɹ෦ॺC ϩάA DB ϩάB Excel Redash Tableau
ɹՃϩδοΫͷผཧ͕ ݩσʔλ ऩू/Ճ දࣔ/ੳ ɹɹɹɹɹɹɹɹɹɹɹɹɹ෦ॺA
ɹɹɹɹɹɹɹɹɹɹɹɹɹ෦ॺB ɹɹɹɹɹɹɹɹɹɹɹɹɹ෦ॺC ϩάA DB ϩάB Excel Redash Tableau
ɹͳͷͰBigQueryʹҰݩԽ ݩσʔλ ऩू/Ճ දࣔ/ੳ ɹɹɹɹɹɹɹ෦ॺA
ɹɹɹɹɹɹɹ෦ॺB ɹɹɹɹɹɹɹ෦ॺC ϩάA DB ϩάB Excel Redash Tableau BigQuery
ɹ֤෦ॺͷಘҙͳΓํɾπʔϧม͑ͳ͍ ݩσʔλ ऩू/Ճ දࣔ/ੳ ɹɹɹɹɹɹɹ෦ॺA
ɹɹɹɹɹɹɹ෦ॺB ɹɹɹɹɹɹɹ෦ॺC ϩάA DB ϩάB Excel Redash Tableau BigQuery
ɹॲཧεΫϦϓτͱͯ͠PythonΛ࠾ Jupyter Notebook ಈ࡞֬ೝ͍͢͠ ه/࠶ݱ͍͢͠ Pandas σʔλՃ͍͢͠
JupyterͰ֬ೝ͍͢͠
Pythonॳ৺ऀ͕ ͦΖͦΖݶքͳͷͰ ॿ͚͍ͯͩ͘͞ Jupyter+BigQueryͰσʔλੳج൫Λ࡞Γ࢝Ί͕ͨ
Ϟϊಈ͍͍ͯΔ ɹྗͷ݁থ
.envʹΑΔڥมͷಡΈࠐΈ → ςετڥΛ ɹྗͷ݁থ
unittest ͰطଘExcelγʔτͷܭࢉ݁Ռͱಉ͡ʹͳΔ͜ͱΛࣗಈݕূ ɹྗͷ݁থ
Python3.4ʙͷEnumΛ׆༻ ˠ DictionaryܕͰΛཧ ɹྗͷ݁থ
EnumͷࣙॻσʔλΛ ͍͘͢͢ΔϝιουΛ جఈΫϥεʹू ɹྗͷ݁থ
දࣔΫϥεͱModelΫϥεͷI/FΛ҆ఆͤ͞ΔͨΊʹ Python3.5ʙͷTypeHintsΛ׆༻ ɹྗͷ݁থ
ച্ͳͲͷࢦඪ BQ࿈ܞʹΑΔ Immutableͳ Ϟσϧʹఆٛ ɹྗͷ݁থ
BQ༻ΫΤϦPython3.6ʙͷf-stringsΛ׆༻ ϝιουΓग़͠ → Ҿ͖͠Ͱมείʔϓ੍ޚ ɹྗͷ݁থ
ɹ͜ͷΜʢʹฉ͘ͷ͕ૣͦ͏ʣ ෦༷ΛѲɺ ύϑΥʔϚϯεΛ࠷దԽͰ͖Δ ʢDocsɾॻ੶ɾίʔυΛಡΉϑΣʔζʣ ֎෦༷ΛѲɺอकੑΛ্Ͱ͖Δ ʢଞਓͷίʔυΛಡΉˍॻ͖͢ϑΣʔζʣ ɹݴޠͷֶशεςʔδͱͯ͠
ػೳཁ݅ΛຬͨͤΔ ʢͻͨ͢Βॻ͘ˍάάΔϑΣʔζʣ ڥߏங Hello World ͬ͘͟Γ σόοά ɾ݁߹ ϕλʔͳॻ͖ํ ศརͳϥΠϒϥϦ ϕϯνϚʔΫˍ νϡʔχϯά ෦मਖ਼ ͖ͪΜͱ σόοά
εϥεϥΘ͔Βͳ͍Python ɹཁ͢Δʹ
1. ͨͿΜ໊લۭؒܥ 2. JavaͩͱͰ͖ΔͷͰPythonͰ͖ͯ΄͍͠ܥ 3. IntelliJʢPythonϓϥάΠϯಋೖࡁΈʣܥ 4. ςετίʔυܥ
ɹಈ࡞͢Δ͚Ͳ͍ͨ͠Ϧετ
ϥΠτχϯάྻڍ͍ͯ͘͠ͷͰ ʮ͜͏͢Εղܾ͢ΔͷͰʁʯ ʮ͜͏͍͏࣭ͷํΛͯ͘͠Εʯ ͳͲͳͲɺޙͰڭ͍͑ͯͩ͘͞
__init__.py Ͱ import ͠·͘Δ༷͕͏͍͟ɻ ͳͯ͘ಈ͘ՕॴͱɺඞਢͷՕॴ͕͋Δʁ ɹ1. ͨͿΜ໊લۭؒܥ
ผϞδϡʔϧͷఆΛ͏ͱ͖ʹɺ Πϯϙʔτจ্͕ख͍͘͘έʔεͱ ͦ͏Ͱͳ͍έʔε͕͋Δ ɹ1. ͨͿΜ໊લۭؒܥ
Ϋϥεͷ getter/setter Λলུ͍ͨ͠ ʢ@Lombok.DataతͳϥΠϒϥϦ͕ཉ͍͠ʣ ɹ2. JavaͩͱͰ͖ΔͷͰPythonͰ͖ͯ΄͍͠ܥ
__init__() ʹશϑΟʔϧυΛ٧ΊΔॲཧΛॻ͘ͷ͕खؒ ʢ@AllArgsConstructerతͳϥΠϒϥϦ͕ཉ͍͠ʣ ɹ2. JavaͩͱͰ͖ΔͷͰPythonͰ͖ͯ΄͍͠ܥ
pandasͷdataframe['column']Λ PythonΦϒδΣΫτͷ column ϓϩύςΟʹίϐʔ͍ͨ͠ ʢModelMapper͕ཉ͍͠ʣ ɹ2. JavaͩͱͰ͖ΔͷͰPythonͰ͖ͯ΄͍͠ܥ
EnumͷvalueΛdictionaryܕͰ͍࣋ͬͯΔ͕ɺ ͬͱָʹΛऔಘ͍ͨ͘͢͠͠ ʢશEnumΛϧʔϓͤͯ֘͢͞ΔΛऔಘ͢ΔϝιουΛॻ͍͍ͯΔ͕ʣ ɹ2. JavaͩͱͰ͖ΔͷͰPythonͰ͖ͯ΄͍͠ܥ
IntelliJͰͷΠϯϙʔτ͕ઈରύεʹͳΔ͚Ͳɺ ࣮ߦ࣌ʹղܾͰ͖ͳ͍ͷͰɺ૬ରύεʹ͍ͨ͠ ɹ3. IntelliJʢPythonϓϥάΠϯಋೖࡁΈʣܥ
τοϓϨϕϧϞδϡʔϧͷΠϯϙʔτจΛ import .xxx.yyy.zzz Ͱͳ͘ import xxx.yyy.zzz ͱهड़ɻ IDEͩͱSyntaxErrorʹͳΔ͕࣮ߦ௨Δɻ ٯʹIDEʹ߹Θͤͯʮ.ʯͰ࢝ΊΔͱ͚͜Δɻ͜Ε໊લۭؒʁ
ɹ3. IntelliJʢPythonϓϥάΠϯಋೖࡁΈʣܥ
IntelliJͷRefactoringͰΫϥε໊Λม͑ͨͱ͖ʹ ϑΝΠϧ໊͕ࣗಈͰ࿈ಈͯ͠มΘͬͯ͘Εͳ͍ɻ ٯવΓɻຯʹ1൪ਏ͍ɻ ɹ3. IntelliJʢPythonϓϥάΠϯಋೖࡁΈʣܥ
testσΟϨΫτϦҎԼͷશεΫϦϓτΛҰׅͰ࣮ߦ͍ͨ͠ɻ ΦϓγϣϯΛ͚ͭͯσΟϨΫτϦ͕ωετ͢Δͱࣦഊͯ͠͠·͏ ͳͷͰݱࡏ֤σΟϨΫτϦΛݸผͰࢦఆ͍ͯ͠Δɻ ʢ֦ுੑ͕ͳ͍ʣ ɹ4. ςετίʔυܥ
ʢ͜ΕPythonͷ࣭Ͱͳ͍͚Ͳʣ Excelͷग़ྗ༰Λςετ͢Δͱ͖ɺϑΝΠϧ͕ग़Δͱअຐɻ ϞοΫΛ͏ʁ or ࣮ߦޙʹϑΝΠϧΛຖճআ͢Δʁ Ͳ͕͍͍ͬͪͰ͔͢Ͷʔʁ ɹ4. ςετίʔυܥ
Pythonॳ৺ऀ͕ ͦΖͦΖݶքͳͷͰ ॿ͚͍ͯͩ͘͞ Jupyter+BigQueryͰσʔλੳج൫Λ࡞Γ࢝Ί͕ͨ
ॿ͚͍ͯͩ͘͞
Q&AαʔϏεͰ ฉ͚ྑ͔ͬͨʢʁʣ ɹهɿձʹདྷͯؾ͍ͨ͜ͱ
ͨͱ͑ ɹهɿձʹདྷͯؾ͍ͨ͜ͱ
teratail ɹهɿձʹདྷͯؾ͍ͨ͜ͱ
͝ਗ਼ௌ ͋Γ͕ͱ͏͍͟͝·ͨ͠ presented by @yuzutas0 https://www.pexels.com/photo/reptile-snake-snape-36448/