見出し画像

【第31回】Python3エンジニア認定データ分析試験の学習メモ①

こんにちは! shuhigashiです。
第31回目の投稿は「Python3エンジニア認定データ分析試験の学習メモ①」Pythonのライブラリの1つ「Pandas」についての記事です。

それでは、宜しくお願いします!

1.背景

以前の記事で「2021年6月までにPython3エンジニア認定データ分析試験を受験します!」と、わたくし、宣言しておりました😅

で、この宣言をして、試験主催元の期間限定キャンペーンに応募すると、この試験の認定教材(主教材)とされている「Pythonによるあたらしいデータ分析の教科書」という書籍を無料で貰えるということでしたので、応募し、実際に無料で貰えちゃいました。noteでの宣言で貰えちゃいました😊詳しくは以前の記事をご覧ください。

で、今、勉強している最中。という訳なのです。はい。

ちゃんと試験に向けて勉強しているのです👍
書籍の貰い逃げはしませんよ😀💦

2.本試験受験の目的(再確認)

私、データサイエンスについて昨年(2020年)から絡み始めまして、データ分析や機械学習にはPythonを使っていたのですが、基礎的な学習無しで、ググっちゃぁ、コピペ、変数とかイジイジ、ググっちゃぁ、コピペ、変数とかイジイジ、の繰り返しで、基礎がスカスカの状態でした。(これで一応やれてしまうというのは、少し怖いところではありますよね。例えば、自動車免許も取らずしても車が運転できてしまう状況や、フォークリフトの技能講習を修了せずに会社の倉庫でフォークリフトを使って荷物を移動させるとか・・・。そういうのと似たような状況ですよね。。。怖いよ~。※ちなみにこの例えの2つとも、わたくし、ちゃんと取得しているのでご安心を。笑)

また、Pythonという言語は”書き易い”と言われているようですが、やはり初めて書く言語です。慣れないと”書き易い”とは感じないのです。

ですから、この試験に出会い、受験する目的を次のように定めました。

Pythonを使って、軽やかにデータ分析をこなせるようになりたい

Pythonのある程度の基礎を固めることも含め、Pythonを軽やかに扱いたい。

SQLは新卒時から10数年来扱っているため、SQLでのデータ操作には慣れているため「軽やかに?」使えているのだと自負しています。ですから、PythonもSQLのように”軽やかに”使いこなしたいと思っているのです。

ちゃんと2021年6月までに受験はする予定ですが、ちゃんと「合格」できるのか否か・・・。私の行動に懸かっている訳です。

ではでは、学習メモに行ってみましょう!

3.学習メモ①「Pandas」について

3-1.「Pandas」とは?(名称の由来)

「Pandas」(読み:パンダス、パンダ)は、データ解析を支援する機能を提供するPythonのライブラリで、数表および時系列データを操作するためのデータ構造と演算を提供してくれます。(Wikipediaより一部引用)

Pythonを使い始めたときから馴染みのあったPandasですが、正直、詳しく調べたことがなかったので、調べたことで、この記事の載せる価値がありそうな内容を掻い摘んで書いておきますね。

まず、この意味不明な(失礼極まりない!)名称ですよね。(正直、名称なんてどうでもいいやん!?ってなりがちな部分。いや、私はこういう所、結構大事にしているので書かせていただきます。)

動物のパンダが複数🐼🐼?
それとも
食べ物のパンを見た方が言ったであろう「パンだ!(しかも複数)」的な🍞🍞?

いやいや、🍞(食べ物のパンだ!)とか舐めすぎですよね。笑

Pythonの由来が『空飛ぶモンティ・パイソン』で、単に英単語で「ニシキヘビ」であれば、Pandasも動物のパンダ🐼(複数)が有力なのでは?とか思ってました。事実、プレゼン資料でPandasのロゴを使いたかったので「Pandas ロゴ」でググってみたら、⇩のようなロゴが出てくるではありませんか。この木に寄りかかる動物っぽいヤツのシルエット、完全に動物のパンダでしょ。 いや、クマか!?笑 しかし1頭しかいないなぁ~

画像1

この疑問、調べました。(というか、認定教材に出てくるSeriesとDataFrameという単語の違いについて調べてて発覚したんです。)

Pandasの最も特徴的な機能の1つは、1次元、2次元、3次元のデータを扱うことが出来るというところです。

ここでいう
1次元は、Series
2次元は、DataFrame
3次元は、Panel
と呼ばれます。

通常(私の認識ではですが)、Pandasを利用する場合、2次元データであるDataFrame(dfとするやつです)をよく使うと思います。Excelのような表形式です。実務ではよく使うヤツですよね。

ところがどっこい、Pandasという名称の由来は、3次元「Panel」からきているそうなのです。(以下)

pan(el)-da(ta)-s

これが由来のようです。コチラの記事に書いてました。

まさかの、パネル💦💦

🐼🐼じゃないのかよ~!!!

まぁ、名前なんて、キャッチーだと覚えやすいし、ホントかどうかは別として、後付けとか結構多いし、そんなに気にすることではない・・・。

でも、「Pandas」って目に入った瞬間に、直感で「パネル」って認識することは今後も無いだろう。どうせ、ヤツ(🐼🐼)の顔が思い浮かんでくることだろう。笑


3-2.SQLとの比較

私は「軽やかに」Pythonを使いたいんです。そのためには少なくとも「軽やかにPandasを使えないといけない」のです。

元々、Pandasを使っていた時に常々思っていたことがあります。
Pandasって、要はPythonにおけるデータ操作のためのライブラリですよね。

SQLに比べて、なんて操作しずらいんだ。Pandasよっっ!!

でも、Pythonをマスターしたいから、SQLは卒業しなきゃ・・・
(いや、卒業まではせんでええよ!)

Pythonでデータ操作したいなら、Pandasを軽やかに使えないと話にならない。だから、やっぱりPandasを覚える必要があるんだよなぁ~
(メンドーーーー。←言っちゃダメなやつ)

認定教材の書籍では、順を追って説明されるだけ。
わかりやすいの、ないのかしら・・・

あるじゃないの。笑(しかもPandasの公式サイトに💦)

やっぱり、そういう声(思い)ってあるよね。って確認できたことが一番うれしかったですね。自分だけが迷子になっていた訳ではない。

迷子といえば、もしかしたら、ヘンゼルとグレーテルが言ったのかな?

🍞🍞パンだ!!!

「」


はい。

しかし、英語かー。
Google様に翻訳いただいてもカタコトにも程がある。読めるけども・・。

日本語で記事にしてくれているの、無いのかしら?
あるじゃないの。笑(2回目)

Qiitaで即刻、LGTMとストックしましたよ。

よしよし。これで「SQL問題」はほぼ解決したも同然だ。
あとは、”書きまくって覚える”のみだ。


3-3.100本ノックを受けてみる

認定教材の書籍には所定のサイトからダウンロードできる付属データがあり、Jupyter notebookで練習することができます。(便利な世の中だ)

ただ、、ホンっトに、基礎の部分だけなんですよね。

他にいいのないのかしら?
あるじゃないの。笑(3回目)

●●100本ノックって、巷では有名みたいですね。

野球経験者だから、100本ノックって言葉に惹かれました。早速挑戦。

画像2

いいね~いいね~
反復練習って、ホント身になりますよね。毎日コツコツ少しずつでもすると、覚えていくもんですね。だいぶPython(Pandas)に慣れてきましたよ~

Talk is cheap. Show me the code.

IT関連の名言と言われるヤツですね。ホントその通り。

いきなり話の対象が変わりますが「簿記」も同じ。口だけで言うなら簡単。とにかく「書け!」に尽きますね。これが”書くことにおける記憶の定着”の近道ですよね。さらに”反復練習”で尚、強化していく。

後は、実践あるのみって感じです。実務で使えるかが大切✨

4.最後に

いかがでしたでしょうか。

グダグダ言っている(書いている)のには、間違いないのですが、一応、試験に向けて試行錯誤をしながら訓練を重ねています。

Python3エンジニア認定データ分析試験の問題数は「40問」で、Pandasの出題数は「7問」です。問題割合にして「17.50%」です。(公式サイトより抜粋)

1章「データエンジニアの役割」(2問)、2章「Pythonと環境」(5問)は覚えるだけの問題なので、そこまで特訓が必要じゃないと思います。ですので、これらを含めても 2+5+7=14問 ということで「35.00%」の勉強が終わったことになります。

正答率は70%なので、これまで学習した分野から出題される問題数の、少なくとも倍は消化しないといけません。

文字通り、道半ば。

試験に向けて、しっかりと取り組んでいきたいと思います!


~行動は今日からはじめる!~
それでは頑張っていきましょう!

最後まで読んでいただき、ありがとうございました。
以上です。

Thank you!