【Python入門】コピペしてそのまま使えるPythonの自動化プログラムまとめ

Python・GAS
ワタシ

ども、らーにゃです。今回はPythonの活用についてまとめます。

身の回りのことをもっと自動化できないものか?

仕事でもプライベートでも忙しくなるほどに自動化の必要性・重要性は増していると思います。

「プログラミングど素人の自分がどうやりゃええんや…」

と頭を抱えることが多くありました。

そんな中、最近Pythonをかじって勉強している中で

『ど素人の自分でもコピペするだけである程度出来た!』

と思えるものが出来たので、今までやってきたことを余すことなく記載します。

自動化やPythonのプログラミングに興味があるけど、どんなことなら出来るのか…と思っている初心者の方のご参考なれば幸いです。(‘ω’)ノ

初心者がPythonから試すべき理由

通常業務をしているとまだまだエクセルの存在感が強く、どうしても効率化=VBAみたいな文脈が強かったりします。

ただ、最近はRPA(Robotic Prosess Automation)の文脈で自動化しよう!という機運が高まっており、その中でもっとも取っつきやすいとされるのがPythonだったりします。

しかも、Pythonは基本的に無料で使える、かつ、初心者でもとっつきやすいシンプルかつ使いやすい仕組なので手を出しやすいです。

さらに素晴らしい点としては、Python=データ分析に強いという側面は持ちつつも、他にも色々な用途に転用ができうるという拡張性の高さになります。

そのため、目的・用途を明確にした上で、まずはそれを達成するために自分で何かを作ってみるというところからスタートするのが良いです。

基本的にこの手の勉強はどんな形であれ自分で実行してやりたいことをやるのが一番のスキルアップの近道です。

そのため、下記に今まで実践しているものを公開していくので、これだ!と思うものがあればリンク先をたどってコピペで試してみてください。

大きく下記の3カテゴリーでまとめていきます。

実際に試してみたカテゴリ
  • 環境整備・自動化系
  • webサービス・データ連携系
  • AI・データ分析系

私自身、非エンジニアのど素人で、一から学んでいるので、恐らく初心者の人でも下記はサクッとできると思います。

【Python入門】WindowsとiPadの両方でPythonの環境を構築する

環境整備・ソフト利用のプログラム

まずは環境設定を行い、簡単なプログラムを動かします。

特に社会人であれば、使う機会の多い、ExcelやPDF化といったことや、PCで自動実行をして自動化したりできます。

さらにPCの前だけではなくiPad上でPythonを動かしたりと、どこでもPythonを使える環境を作ることも可能です。

下記に順に触れていきます。

PythonでExcelを操作する (openpyxlの活用)

プログラムの概要

▷Python上で、指定のExcelシートにアクセスして編集したり、保存したりが出来ます。
 定型化しているエクセル業務などがあれば、Pythonで自動化することも検討する余地があります。

プログラム評価
  • プログラムの難しさ ★★☆☆☆
  • プログラムの実用性 ★★★★☆
  • プログラムの拡張性 ★★★☆☆

【Python自動化】openpyxlで読み込んだデータを視覚化する方法

ワタシ

結局は現業はまだまだExcel中心なんですよね

PCで自動実行するプログラムを作る(タスクスケジューラの活用)

プログラムの概要

▷指定時間に指定のPythonファイルを定期実行する仕組を作れます。
 タスクスケジューラーやバッチファイルなど、普段見慣れないものが多いですが、とっても単純な仕組です。

プログラム評価
  • プログラムの難しさ ★★☆☆☆
  • プログラムの実用性 ★★★★★
  • プログラムの拡張性 ★★★★☆

【Python自動化】タスクスケジューラで定時にPythonファイルを自動実行する方法

ツマ

Windowsのパソコンなら誰でも色々なものに転用できるのがいいね

iPad上でPythonを使う (Google Colaboratory活用)

プログラムの概要

▷Google Colaboratoryを利用してiPadのブラウザ上でPythonコードを編集できるようにします。
 Googleシリーズなので当然無料で、ネット環境があれば出先であってもどこでもOKです。

プログラム評価
  • プログラムの難しさ ★☆☆☆☆
  • プログラムの実用性 ★★★★★
  • プログラムの拡張性 ★★★☆☆

【Python入門】iPad×Google Colabalatoryで手軽にTwitter分析

ワタシ

iPadでプログラミング環境出来ると、スマホのテザリングと併せて本当にどこでも出来るから便利です

Webデータ・サービスとの連携プログラム

次にWeb上のデータ連携についてです。

Web上のデータを抽出する仕組(Seleniumの活用)

プログラムの概要

▷指定のページから指定の値を引き抜くプログラムを作ります。
 ログインが必要なページであっても突破は可能で、タスクスケジューラーと組み合わせると大変効果的です。

プログラム評価
  • プログラムの難しさ ★★★☆☆
  • プログラムの実用性 ★★★★★
  • プログラムの拡張性 ★★★★☆

【Python自動化】Seleniumでスクレイピング | ログイン認証を突破しデータ取得する

ツマ

自動で欲しい情報を定期的に探しにいってくれると色々とリサーチが簡単にできるね

収集データのスプレッドシート化(Google APIの活用)

プログラムの概要

▷収集データ(データフレーム等)をスプレッドシートに移し替えるプログラムを作ります。
 これによって、Pythonで収集したデータを逐一蓄積する仕組が構築できます。

プログラム評価
  • プログラムの難しさ ★★★☆☆
  • プログラムの実用性 ★★★★☆
  • プログラムの拡張性 ★★★★☆

【Python自動化】GoogleスプレッドシートにPythonからデータを流し込む方法

ワタシ

Googleも当たり前のように使っていますがAPIの開放は本当に色々なものがあってビックリします。

Twitterデータを利用した分析(Twitter APIの活用)

プログラムの概要

▷Twitter上にあるデータにアクセスして必要なデータを抽出するプログラムを作ります。
 これによって、最新のトレンドなどを自分で抽出して分析することが可能です。

プログラム評価
  • プログラムの難しさ ★★★★☆
  • プログラムの実用性 ★★★★☆
  • プログラムの拡張性 ★★★★☆

【Python入門】Twitterデータでテキストマイニング(APIの利用)

ワタシ

ツイッターはAPIの設定だけがややめんどいけど、そこさえクリアすると色々できるんですよね。

文章データの傾向分析をする(janome, WordCloud活用)

プログラムの概要

▷web上のテキストデータを参照してテキストマイニングをプログラムを作ります。
上記のTwitterのデータの参照や自動スクレイピングのプログラムと組み合わせると威力大です。

プログラム評価
  • プログラムの難しさ ★★★☆☆
  • プログラムの実用性 ★★★★☆
  • プログラムの拡張性 ★★★★☆

【Python入門】WEB上のデータを抽出してテキストマイニング(スクレイピング)

ツマ

自分のツイッター情報とかビジュアライズさせるのも面白いね

データ分析・AI開発のプログラム

収集データのビジュアライズ(seabornの活用)

プログラムの概要

▷データ分析の可視化についてです。
映える見た目で考察しやすくするのは分析の肝になるわけですが、ここはまず抑えるべきポイントです。

プログラム評価
  • プログラムの難しさ ★☆☆☆☆
  • プログラムの実用性 ★★★☆☆
  • プログラムの拡張性 ★★★★★

【Python入門】seabornでグラフ化 | データをうまく魅せる”ビジュアル化”7選

ワタシ

まずはビジュアライズのスキルを身に着けるだけでも大分、実用性が上がりますね

収集データの分類分け (クラスタリングの実施)

プログラムの概要

▷データ分析の基礎ができたら、クラスタリングの手法を覚えると分析の幅が広がります。
具体的にはぐちゃっとしたデータから傾向をくみ取って分類分けする手法で使えるシーンが多いものです。

プログラム評価
  • プログラムの難しさ ★★★☆☆
  • プログラムの実用性 ★★★★☆
  • プログラムの拡張性 ★★☆☆☆

【Python入門】クラスタリングの実践 | 顧客データを読み込み・ペルソナ分析

ツマ

クラスタリングって聞きなれないけど、分類分けって使いどころ多いよね

AIによる画像データの解析 (ディープラーニングの実施)

プログラムの概要

▷画像処理の自動分類分けのアルゴリズムです。
AIといわれてイメージするのは恐らくこの領域のことが多いかと思います。

プログラム評価
  • プログラムの難しさ ★★★★☆
  • プログラムの実用性 ★★★☆☆
  • プログラムの拡張性 ★★★★☆

【Python入門】ディープラーニングの実践 | CNN等で画像の自動判別

ワタシ

ディープラーニング=ムズそうと、思考停止しがちだったのですが、イマは初心者でもサクッと使えるのですね

AIのモデル自体を自動選定する(Auto MLの活用)

▷機械学習のモデリング自体は自動化します。
上記のディープラーニングを含め、難しい機械学習のモデルで何がベストかをプログラムが選定してくれます。

プログラム評価
  • プログラムの難しさ ★★★★★
  • プログラムの実用性 ★★★★☆
  • プログラムの拡張性 ★★★★☆

【Python入門】機械に自動でモデル選定させる(AutoML活用)

ツマ

難しそうだけど、とりあえず全て自動でやってくれるならスキルとしては押さえておきたいね

データ分析力を高めるコンペの利用 (KaggleとSignateの活用)

プログラムの概要

▷最後に分析力を向上させるためのデータコンペサイトの活用です。
世界規模のものがKaggle、国内最適したものがSignateです。後者は日本語対応されていて初心者に優しいです。

プログラム評価
  • プログラムの難しさ ★★★☆☆
  • プログラムの実用性 ★★★★☆
  • プログラムの拡張性 ★★★★★

【Python入門】iPad×Kaggleで手軽な学習環境を創る

【SIGNATE】有料版のSIGNATE QuestをPCとiPadで実際にやって感じたこと

ワタシ

学んだものをアウトプットする場所はあった方がスキルが磨きやすいですね

BIツールを連携させたデータのビジュアル化

Google Data Portalでデータ連携・ビジュアル化

また、自動化の中でも特におすすめなのが、データの見える化・ビジュアル化です。

これはスプレッドシートへの移し替えと同じGoogleのBIツールのサービスであるGoogle Data Portalを使えば、簡単に映える形になってテンションが上がります。

下記の記事でまとめていますので、上記と併せて確認頂くと自動化の道が開けます。

例えば、web上の情報をCSV形式で落とし、それを加工(前処理)する工程でPythonを利用します。

その後に加工したデータをスプレッドシートを介してBIツールに流し込むことでビジュアル化が出来ます。

具体的には下記のリンクではiPadでZaimのデータやブクログのデータのビジュアライズをしています。

【Python自動化】Zaim × BIツール | iPadでお金のデータ管理

【Python自動化】ブクログ × BIツール | iPadで読書のデータ管理

ツマ

ビジュアル化って想像以上に受け手へのインパクトがつよいよね

Google Data Portalでイケてる見た目にする

上記の通りBIツールとのデータ連携のポイントが分かったらあとは、ビジュアル化を極めるのみです。

特にGoogle Data Portalはイケてるダッシュボードも無料でコピペして使える仕様になっているので、徹底的にパクることでスゲェ見た目が簡単に手に入ります。

しかも大盤振る舞いなのが、いつのまにやらData Portalもテンプレのコピペも全て無料になっているという点です。

下記の記事でやり方はまとめていますので、上記と併せて確認頂くと自動化の道が開けます。

【BIツール】Google Data Portalで簡単に本格的なダッシュボードを作る

ワタシ

予備知識なくともコピペでいいので簡単にできちゃいます。

自身でカスタマイズ・拡張する方法

ここからは自分で拡張する方法に関してです。

「もっと本当はこういった拡張をしたいんだけどな…」

という想いが芽生えた場合は、上記の構成を理解した上で、自分なりにアレンジする必要があります。

私のようなプログラミング初心者の人は下記3点を検討すると拡張が簡単にできます。

Pythonの参考書+αを活用する

Pythonをかじり始めて、複数の書籍に目を通しはじめていますが、

自動化の文脈で一番わかりやすく使いやすい!と思う参考書はズバリこれです。

タスクスケジューラーやバッチファイルの利用も含めて、単にPythonファイルを作るだけでなく自動化するためのポイントが網羅的に出ています。

created by Rinker
¥2,465 (2021/09/21 14:21:26時点 Amazon調べ-詳細)

また、ウェブデータの活用においては下記がオススメです。スクレイピングを行いつつもオープンデータの使い方やAPI周りの解説もしてくれます。

データ分析においては下記がオススメです。初心者でも色々なケースを見て具体的にやるべきことと分析のアプローチのイメージがわきます。

created by Rinker
¥2,138 (2021/09/22 07:19:43時点 Amazon調べ-詳細)

更に、その上でココナラなどの外部の力を借りることが出来ると更に学習効果とやりたいことの実現に向けて相乗効果があります。

■ご参考リンク(ココナラ)

【レビュー】実際に使って分かったココナラのメリット・デメリット

Pythonのプログラム作成でお願いなどもできるため、基本的なことを参考書で抑えつつ、作ってみたいコードを一度外注して作ってもらいそれを元に深めるなども効率が良いです。

ワタシ

良い人にあたるとその後もメッセージなどで軽い相談ができる場合もあります

動画教材(Udemy)の活用

個人的に一番コスパが高くオススメしたいのがコレ。

何かというとUdemyを活用した動画学習です。

分からないところがある時に、必要なところを本で読むのではなく、動画で解説してもらう方が理解のしやすさが段違いです。

また、講師の評価もついており、個人的な所感ですが、基本的に4.0以上の評価のコンテンツであればハズレはない印象です。

当然Pythonの動画も多く、日本語講師の解説動画も多数あるので、安心です。

個人的にオススメしたいのは下記の講座。

これで基本的な利活用から応用部分までも網羅的にマスターできます。

>>Pythonのおすすめコース(全般)

テキストマイニングやスクレイピングなどのWeb連携のプログラムは下記がオススメです。

>>Pythonのおすすめコース(Web連携)

データ分析系は下記がオススメです。

>>Pythonのおすすめコース(データ分析)

色々とPythonの講座動画があったのでつまみ食いしましたが、上記がわかりやすく、評価も高くて最初の第一歩にはオススメです。

何個の動画も見るのは時間もお金も勿体ないので、狙いを定めて買うのがオススメ。大幅ディスカウントされているときは特にねらい目です!

ツマ

割引はいつくるか分からないからタイミングは逃さないようにしないとね!

プログラミングスクールを利用する

実際に色々なプログラミングスクールが存在しますが、実際に短期間(1~3カ月程度)のものと、長期間(4~12カ月程度)のものを利用したので下記にレビュー含めまとめます。

Tech Academy (短期間のプログラム)

まずは恐らくトップシェアと思われるTechAcademy社のプログラムです。

特に、『初心者だけど時間がない!早く学びきりたい!』という人にオススメしたいのがこのプログラムです。

>>Tech Academy : Google Apps Scriptコース

多少費用がかさみますが学習効率が高いです。

実際にTechAcademyは利用してみましたが、初心者を想定したカリキュラムが設定されており初心者でも安心です。

個人的に、メンターに都度、相談をしながら学習リズムを作る事が一番のよいポイントです。

また、メンターによるかもしれませんが、私の場合は、カリキュラムに関連する内容であればカリキュラム外でも色々教えてもらえました。

実際に2カ月コースを試したことがあるので、気になる方は下記をご確認ください。

【給付金】50万円も得をした!”職業訓練給付金制度”の超オトクな内容と使い方

特にキャンペーンなどをやっているときは、オマケがとても豪華だったりするので、参照してタイミングを逃さないようにしましょう!

ワタシ

私もオマケ狙いのキャンペーン狙いでコスパよく学べて大満足でした

データミックス (長期間のプログラム)

そして次にデータ分析・データサイエンスに特化したプログラムを展開するデータミックス社のプログラムです。

実務でも使える実践力を付けたい・磨きたいという方には強くオススメできるプログラムです。

価格が結構はりますが、給付金制度を使うと7割還元ということも可能です。

【BIツール】Google Data Portalで簡単に本格的なダッシュボードを作る

実際に私もこれで50万円近くオトクに受講ができたので、この制度を使うと、最もコスパが良いプログラムとなります。

データ分析力を強めて、実務で活かしたり、市場価値を上げたいと思う人には強くお勧めしたいプログラムです。

下記に簡単にレビューしますので合わせてご確認頂けると幸いです。

【データミックス】話題のデータサイエンスを学べるスクールに6ヶ月通って感じたメリット・デメリット

ワタシ

価格も期間も大きいと絶対にやりきろう!という想いも強くなります

自主勉強をする際の考え方

最後に、上記でご紹介した自主勉強をする学習アプローチについて整理します。

大きく3つのアプローチをご紹介しましたが、まとめると以下の通りです。

学習アプローチの整理
  • 一人で進める自信がある!
    ▷書籍で勉強しつつ、気になる事はココナラで聞く・依頼する
  • 一人で進めたいが自信がない…!
    ▷Udemyの映像教材・解説で学習のハードルを下げる
  • なるべく早く効率的に実践力を付けたい!
    ▷スクーリングを利用して学びメンターに逐一相談する

以上、自分の今の状況に合わせて最も合う学習アプローチを見極めて次の行動につなげていきましょう。

ツマ

今の自分の状態に合わせてやり方は考えたいね

まとめ

今回ポイントしてまとめてきたのは以下の3点です。

抑えたいポイント
  • Pythonで出来ること
    ▷Googleサービスの他、Twitter, Toggl,FitbitなどAPIを経由して自動化が可能
  • Python×BIツールで連携・拡張できること
    ▷Google Data Portalを利用して自動的にイケてる見た目にすることが可能
  • 自作プログラムへの拡張
    ▷自分の状況に合わせた学習アプローチを検討して実践する

今回はポイントになることをまとめていきましたが、Pythonを扱うことが出来ると、効率化・自動化をさせることは無限大です。

そしてこのPythonの何と言っても素晴らしいのが用途の幅が広い!そしてしかもタダ!ということです。

仕事でつかえる部分があるのは勿論のこと、プライベートでも利活用できるオトク技がいっぱいなため、非エンジニアの人でもぜひトライしてみてください!

特に、自分でトライして頑張ってみるぞ!という人はまずは、動画学習でもスクール活用でも、自分に合うアクションで進めていきましょう。

自身の今のスキルや状況に応じて、次のステップアップに向けた動きを付けて一緒に自動化・効率化の技術を上げていきましょう!(‘ω’)ノ

ご精読頂きありがとうございました!
m(_ _)m

>>Pythonのおすすめコース