Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Python実践試験、 Pythonデータ分析実践試験に 合格できるひとのレベル紹介と学習法
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Manabu TERADA
December 18, 2024
Technology
6.7k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Python実践試験、 Pythonデータ分析実践試験に 合格できるひとのレベル紹介と学習法
「Python実践試験、Pythonデータ分析実践試験対策とデータ分析の技術解説セミナー」
2024年12月13 日
一般社団法人Pythonエンジニア育成推進協会
顧問理事 寺田 学
Manabu TERADA
December 18, 2024
More Decks by Manabu TERADA
See All by Manabu TERADA
SAENM ~Jupyterで残すPoCの試行錯誤、未来の自分と仲間を助ける記録!~
terapyon
0
79
VLMで2.3万枚のPyCon JP写真を検索!
terapyon
2
960
また来年も行きたくなったPyCon US
terapyon
0
36
baser_Meetup_キーノート_AI時代_CMSは何を管理するのか_.pdf
terapyon
0
110
Searching 23,000 Photos with Modern VLMs: From Text to Image
terapyon
0
94
PyCon JPに学ぶ『決め方の決め方』: TechLead Conference 2026
terapyon
1
890
World Plone Day 2026 AI時代のCMSを一緒に考える
terapyon
0
70
PythonのツールチェーンとOSS
terapyon
0
62
AI時代の罠:経験が浅いエンジニアを救うのは誰か?
terapyon
0
97
Other Decks in Technology
See All in Technology
FOSS4Gを活用した自治体業務DXの試み
470715
0
150
宣言型部分更新は何を解決しどこへ向かうのか
shuta13
1
320
Running Kotlin + Quarkus with Lambda
nealle
1
450
自主式軟體工廠
philipz
0
260
無理せず続ける、子育てエンジニアの学び
codmoninc
PRO
0
710
More Freedom on the Same Shared GPU Cluster: A Small Team’s Experience with vCluster
nttcom
0
160
転んだ話が背中を預ける理由になる / A_story_about_falling_down_gives_you_a_reason_to_watch_each_other_s_backs.pdf
pauli
3
360
LocalStack を使ったサーバーレスアプリケーション開発 / Serverless Development with LocalStack
kakakakakku
1
410
⾮構造化データを価値に変える AI エージェント基盤とその組織
ivry_presentationmaterials
0
140
hackers_champloo_2026_tidb
makocchi
0
140
契約書画像からの情報抽出に特化した視覚接地モデルを育てる話
sansantech
PRO
1
170
FactoryBotアンチパターン / factory_bot anti-patterns
toshimaru
0
150
Featured
See All Featured
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
38
3.1k
How to Talk to Developers About Accessibility
jct
2
570
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
35
2.9k
Stewardship and Sustainability of Urban and Community Forests
pwiseman
0
540
Fantastic passwords and where to find them - at NoRuKo
philnash
53
4k
Navigating the moral maze — ethical principles for Al-driven product design
skipperchong
2
620
Thoughts on Productivity
jonyablonski
76
5.4k
Design of three-dimensional binary manipulators for pick-and-place task avoiding obstacles (IECON2024)
konakalab
0
620
Lightning Talk: Beautiful Slides for Beginners
inesmontani
PRO
2
730
How to Think Like a Performance Engineer
csswizardry
28
2.9k
The Language of Interfaces
destraynor
162
27k
Information Architects: The Missing Link in Design Systems
soysaucechin
1
1.2k
Transcript
copyright © 2024 一般社団法人Pythonエンジニア育成推進協会 all rights reserved. Python実践試験、 Pythonデータ分析実践試験に 合格できるひとのレベル紹介と学習法
一般社団法人Pythonエンジニア育成推進協会 顧問理事 寺田 学 「Python実践試験、 Pythonデータ分析実践試験対策とデータ分析の技術解説セミナー」 2024年12月13 日
copyright © 2024 一般社団法人Pythonエンジニア育成推進協会 all rights reserved. 自己紹介 寺田 学
(Manabu TERADA) • Pythonエンジニア • Podcast 「terapyon channel」(https://podcast.terapyon.net) • 主な関連書籍(共著・監修・監訳) ◦ Pythonデータ分析 実践ハンドブック(2023年,インプレス,共著) ◦ Pythonによるあたらしいデータ分析の教科書 第2版 (2022年,翔泳社,共著) ◦ Python実践レシピ(2022年,技術評論社,共著) ◦ Python FlaskによるWebアプリ開発入門 物体検知アプリ&機械学習APIの作り方 (2022年,翔泳社, 監修)
copyright © 2024 一般社団法人Pythonエンジニア育成推進協会 all rights reserved. 所属組織 • 一般社団法人Pythonエンジニア育成推進協会顧問理事
• 一般社団法人PyCon JP Association理事 • Python Asia Organization Founder and Board member • 株式会社 CMSコミュニケーションズ 代表取締役 • Python Software Foundation Fellow • Plone Foundation Ambassador
copyright © 2024 一般社団法人Pythonエンジニア育成推進協会 all rights reserved. Python技術支援のコンサルサービス (株)CMSコミュニケーションズのサービス
copyright © 2024 一般社団法人Pythonエンジニア育成推進協会 all rights reserved. 講演の流れ • Pythonバージョンの現状
• バージョンアップで取り組んでいること • Python実践試験に向けて • Pythonデータ分析実践試験に向けて • Pythonの具体的な利用シーン • 初学者からアプリ実装ができるようになるには
copyright © 2024 一般社団法人Pythonエンジニア育成推進協会 all rights reserved. Pythonバージョンの現状
copyright © 2024 一般社団法人Pythonエンジニア育成推進協会 all rights reserved. Pythonバージョン (2024年12月) Python3.13
• Python 3.11以降を採用することが多い • 最新のPython3.13を使う場面もある
copyright © 2024 一般社団法人Pythonエンジニア育成推進協会 all rights reserved. Pythonのバージョンとサポート期間 年1回リリース& 5年サポート
https://devguide.python.org/versions/
copyright © 2024 一般社団法人Pythonエンジニア育成推進協会 all rights reserved. バージョン間の互換性 基本的な互換性はある •
互換性は基本的に保たれている • キーワード(予約語)追加もほぼ無い • 内部APIの変更はある • サードパーティ製パッケージの対応は別
copyright © 2024 一般社団法人Pythonエンジニア育成推進協会 all rights reserved. 環境構築とサードパーティ製パッケージ 方法はさまざまだが、公式をなるべく使う •
公式インストーラーがオススメ • venv + pip でほとんど可能 • 公式dockerを使うことも増えている • wheel化されたパッケージも多い
copyright © 2024 一般社団法人Pythonエンジニア育成推進協会 all rights reserved. 環境構築とサードパーティ製パッケージ 2024年は変化があった •
Rust製ツールの台頭 • パッケージマネージャーの乱立から集約? • uv + ruff というAstral社のツールが盛り上がる • uvで環境構築をすることが増えた
copyright © 2024 一般社団法人Pythonエンジニア育成推進協会 all rights reserved. バージョンアップで取り組んでいること
copyright © 2024 一般社団法人Pythonエンジニア育成推進協会 all rights reserved. バージョンアップで取り組んでいる (1) Python
3.13の主な変更点 • 対話モードの大幅に改善 • よりコーディングしやすく(型ヒント関係) • 速度アップへの試み・準備 ◦ GIL除去 ◦ JIT対応
copyright © 2024 一般社団法人Pythonエンジニア育成推進協会 all rights reserved. バージョンアップで取り組んでいる (2) •
スピードアップ • Python 3.11から取り組んでいる • 今後も内部実装を見直し、スピードアップに期待
copyright © 2024 一般社団法人Pythonエンジニア育成推進協会 all rights reserved. バージョンアップで取り組んでいる (3) •
よりコーディングしやすく • エラーメッセージが分かりやすくなっている • 型ヒントなどで安全なコーディングができるようになる
copyright © 2024 一般社団法人Pythonエンジニア育成推進協会 all rights reserved. Python実践試験に向けて
copyright © 2024 一般社団法人Pythonエンジニア育成推進協会 all rights reserved. スキルマップ表 (2024年度版) 試験グレード
難易度(職種: ITSSレベル) Pythonエンジニア AIエンジニア Pythonデータエンジニア データアナリスト 実践レベル エキスパート職種:ソフトウェアディベロップメント、 応用ソフトのレベル2(申請中) 実践試験 データ分析実践試験 基礎レベル エントリー職種:ソフトウェアディベロップメント、応 用ソフトのレベル1 基礎試験 データ分析試験 参考: ナレッジ レベル – Python Zen & PEP 8 検定 Python Zen & PEP 8検定
copyright © 2024 一般社団法人Pythonエンジニア育成推進協会 all rights reserved. 実践試験 • Pythonで実践的にプログラミングができる
• 例題 ◦ for文の処理をリスト内包表記にし正しいものを選択 ◦ datetime, zoneinfo を使ったコードでエラーを選択 ◦ class構文の継承コードで実行されるメソッドを選択
copyright © 2024 一般社団法人Pythonエンジニア育成推進協会 all rights reserved. 実践試験の合格者のレベル Pythonのことなおまかせと言える •
Pythonの言語仕様を概ね知っている ◦ 例外から内包表記やデコレーターなど ◦ classの仕様 • Pythonの標準ライブラリの幅広い知識 ◦ どんなものが存在するか? ◦ 基本的な使い方を知っている
copyright © 2024 一般社団法人Pythonエンジニア育成推進協会 all rights reserved. 実践試験の意図と意義 Python実践試験に合格した人の声として •
人事からのオススメ試験となっていたので勉強、数回で合格した人の声 • 他人のコードレビューに自身を持って答えることができるように なった • 初学者を教える時に、厳密なことを教えられるようになった • Pythonを深く知ることができ、自信になっている
copyright © 2024 一般社団法人Pythonエンジニア育成推進協会 all rights reserved. Pythonデータ分析実践試験に向けて
copyright © 2024 一般社団法人Pythonエンジニア育成推進協会 all rights reserved. スキルマップ表 (2024年度版) 試験グレード
難易度(職種: ITSSレベル) Pythonエンジニア AIエンジニア Pythonデータエンジニア データアナリスト 実践レベル エキスパート職種:ソフトウェアディベロップメント、 応用ソフトのレベル2(申請中) 実践試験 データ分析実践試験 基礎レベル エントリー職種:ソフトウェアディベロップメント、応 用ソフトのレベル1 基礎試験 データ分析試験 参考: ナレッジ レベル – Python Zen & PEP 8 検定 Python Zen & PEP 8検定
copyright © 2024 一般社団法人Pythonエンジニア育成推進協会 all rights reserved. データ分析実践試験 • Pythonでデータ分析を実践できるデータの扱いを問う
• 例題 ◦ pandas DataFrameの連結方法で正しい方法を選択 ◦ データの定量的評価の間違っている方法を選択 ◦ 時系列データを扱うための日付変換で正しいものを選択
copyright © 2024 一般社団法人Pythonエンジニア育成推進協会 all rights reserved. デー分析実践試験の意図と意義 (1) •
データ分析を実践していることが重要 • 特にpandasの使い方、NumPyの基本的な機能は把握している と考えられる • データ分析者として重要なデータの評価についても一定の理解 が必要 • ここは、現場で実践するうえで、重要な知識だと考えている
copyright © 2024 一般社団法人Pythonエンジニア育成推進協会 all rights reserved. デー分析実践試験の意図と意義 (2) •
後半パートで、さまざまなデータ形式の取り扱いを扱っている • 基本となる、「時系列」「テキスト」「画像」を扱えることは必須 • それ以外に、「グラフデータ」「地理空間データ」もデータ分析者と して扱えるかどうか • エンジニアとしての幅が違うと考えて、基本的な部分だけでも理 解をして欲しい
copyright © 2024 一般社団法人Pythonエンジニア育成推進協会 all rights reserved. Pythonの具体的な利用シーン
copyright © 2024 一般社団法人Pythonエンジニア育成推進協会 all rights reserved. 具体的な利用シーン ─ 1
ログの分析を Pythonで行う • ログファイルをPythonのopen関数で読み込む • 1行の中身を分割して、リストのリストを作る • pandasで読み込み • 必要な情報だけを抽出 • 可視化やExcelファイルに書き出し • 機械学習などを用いて、異常検知
copyright © 2024 一般社団法人Pythonエンジニア育成推進協会 all rights reserved. 具体的な利用シーン ─ 1
ログの分析で使うライブラリ • 日付操作 標準ライブラリ datetime • データ分析 pandas • データ出力 openpyxl • 可視化 Matplotlib • 機械学習 scikit-learn
copyright © 2024 一般社団法人Pythonエンジニア育成推進協会 all rights reserved. 具体的な利用シーン ─ 2
データ分析の PoCを試してみたい • JupyterLabで実験的に試行錯誤 • データ加工 • データの評価 • 各種Webサイトから情報取得 • 結果をWebページにする
copyright © 2024 一般社団法人Pythonエンジニア育成推進協会 all rights reserved. 具体的な利用シーン ─ 2
データ分析の PoCで使うライブラリ • JupyterLab • データ加工 pandas / NumPy • データの評価 NumPy / Matplotlib / Plotry • 各種Webサイトから情報取得 BeautifulSoup4 • Webページを作るなら Streamlit
copyright © 2024 一般社団法人Pythonエンジニア育成推進協会 all rights reserved. 具体的な利用シーン ─ 3
Streamlitを使ってChatGTP APIを利用 • StreamlitはPython Web UIフレームワーク • OpenAIのAPIを利用 • Web UIで、APIが利用できる
copyright © 2024 一般社団法人Pythonエンジニア育成推進協会 all rights reserved. 具体的な利用シーン ─ 3
(コードリポジトリ ) コードリポジトリ https://github.com/terapyon/st-demo-ai-form
copyright © 2024 一般社団法人Pythonエンジニア育成推進協会 all rights reserved. 具体的な利用シーン ─ 3
copyright © 2024 一般社団法人Pythonエンジニア育成推進協会 all rights reserved. 具体的な利用シーン ─ 3
copyright © 2024 一般社団法人Pythonエンジニア育成推進協会 all rights reserved. 初学者からアプリ実装ができるようになる には
copyright © 2024 一般社団法人Pythonエンジニア育成推進協会 all rights reserved. 機能分割 まずは、機能を分割していこう •
アプリが実現したいことを機能分割 • 例えば ◦ データを読み込む ◦ データを加工する ◦ 画面に表示する • なるべく細かく分割する
copyright © 2024 一般社団法人Pythonエンジニア育成推進協会 all rights reserved. 機能ごとに実装 分割された機能の役割を実装する •
機能ごとに「入力」と「出力」を決める • 入力に対して、処理をコーディングする • 出力をする or データ保存などを行う • 入力をパラメータで渡さなくても良い • まずは、一つずつ機能を作る
copyright © 2024 一般社団法人Pythonエンジニア育成推進協会 all rights reserved. 機能を繋げる 機能を繋げて、アプリとしての動きを実現 •
機能を繋げて、一連の動きにする • 何かしらのキッカケで動作するようにする • キッカケの例 ◦ クリックする ◦ スクリプトの手動起動 ◦ Webリクエスト
copyright © 2024 一般社団法人Pythonエンジニア育成推進協会 all rights reserved. 動作環境の整備 どこで、どのように動作させるかを決め、環境整備 •
動作環境を決める • 例 ◦ 独自サーバー ◦ 手元のPC ◦ サーバーレス環境 ◦ Webブラウザ • Pythonが動作する環境を作る
copyright © 2024 一般社団法人Pythonエンジニア育成推進協会 all rights reserved. アプリ実装のまとめ 一つずつ確実に !
• 機能分割 • 機能ごとに実装 • 機能を繋げる • 動作環境の整備
copyright © 2024 一般社団法人Pythonエンジニア育成推進協会 all rights reserved. ご清聴 ありがとうございました。
copyright © 2024 一般社団法人Pythonエンジニア育成推進協会 all rights reserved. 師匠 or 仲間を見つけよう
ひとりで勉強するには限界がある • 師匠を見つけよう • 仲間を見つけよう • 一緒に勉強し切磋琢磨できるとよい • 自分のやっていることに自信が持てる • カンファレンスや勉強会に積極的に参加
copyright © 2024 一般社団法人Pythonエンジニア育成推進協会 all rights reserved. Q&A