投稿

Translate

#18 Section 16 seabornでグラフ描画(1)

イメージ
データサイエンス体験動画「データサイエンス チュートリアル 猫のタロー編」、第18回目、Section 16「seabornでグラフ描画(1)」始めます! 今回からは、時間の ドリルダウン とライブラリ「 seaborn 」を使ったグラフの描画です。 seabornは、 x、y軸 (場合によってはz軸も) が列 でないとグラフを描いてくれません。groupbyなどを使って年や年月ごとに売上の合計を出すと、年や年月がインデックスになっていますので、列にして直す必要があることに注意して下さい。 それらを実現するプログラムは下記の7つです。   ㉖’ データ名.groupby(“列名”).sum()  ㉝ import matplotlib.pyplot as plt  ㉞ import seaborn as sns  ㉟ %matplotlib inline  ㊱ sns.barplot(data=データ名, x=“列名1”, y=“列名2”)  ㊲ データ名.reset_index()  ㊳ データ名.groupby(“列名”, as_index=False).sum() ■ 概要を理解したい方は、下記の 動画 (8分59秒) をご覧ください。 ■ PowerPoint (パワポ) でじっくりと理解したい方は、右下のマーク「ページを新しいウインドウで開きます。」をクリックしてください。 Section 16 seabornでグラフ描画(1) by @Cat_Taro ■ 参考URL seaborn公式ドキュメントのGallery https://seaborn.pydata.org/examples/index.html

#17 Section 15 分析するための列の作成

イメージ
データサイエンス体験動画「データサイエンス チュートリアル 猫のタロー編」、通算第17回目、Section15「分析するための列の作成」を始めます。 今回は、 Section 13で解説したOLAPキューブの分析手法を実践していくために、その前段階であるデータ作成を行います。 「Quantity」(数量)と「UnitPrice」(単価)の積から 合計値の列を追加 、データ型 datetimeから文字列で年、年月を取り出した列の追加 を解説します。 今回の動画は、それらを実現する下記のプログラムを解説します。   ㉛ データ名[“新列名”] = データ名[“列名1”] * データ名[“列名2”]  ㉜ データ名[“新列名”] = データ名[“列名”].dt.strftime(“%Y%m”) また、復習になりますが、列の順序を変えるために、下記の⑫を使います。  ⑫ データ名[[“列名”]] (「 Section 6 列の参照 」を参照) ■ 概要を理解したい方は、下記の 動画 (8分42秒) をご覧ください。 ■ PowerPoin t (パワポ) でじっくりと理解したい方は、 下記のスライドを参照してください。    Section 15 分析するための列の作成 by @Cat_Taro

#16 Section 14 csvデータの読込

イメージ
データサイエンス体験動画「データサイエンス チュートリアル 猫のタロー編」、 通算第16回目、Section14「csvデータの読込」を始めます。 今回は、 1st STEPで作成したcsvデータ「id_pos4」を読み込みます。 その際、 データ型を指定して読み込ます 。 また、余分な列を削除して、集計や分析の際に分かりやすいきれいなデータにしましょう。 今回の動画は、それらを実現する下記のプログラムを解説します。   ㉙ pd.read_csv(“データのある場所”, parse_dates=[“列名"]     , dtype ={"列名1": データ型 , "列名2": データ型})  ㉚ データ名.drop("列名", axis=1) axis=0 と axis=1 の違いもよく理解しておきましょう。 ■ 概要を理解したい方は、下記の 動画 (8分42秒) をご覧ください。 ■ PowerPoin t (パワポ) でじっくりと理解したい方は、 下記のスライドを参照してください。 Section 14 csvデータの読込 by @Cat_Taro

#15 Section 13 どのような集計をして、グラフを描くのか?

イメージ
データサイエンス体験動画「データサイエンス チュートリアル 猫のタロー編」は、2nd STEPに進みます!今回は、 2nd STEP「集計とグラフ描画」 のオリエンテーションです。 2nd STEP「集計とグラフ描画」の最初は、通算第15回目、Section 13「どのような集計をして、グラフを描くのか?」です。 これから、1st STEPで作成した「id_pos4」、いわゆる「きれいなデータ」を用いて、データの見える化、および報告書・会議用資料などのレポーティング用の集計を行っていきます。 様々なグラフの描き方、集計表形式がありますが、ビッグデータが格納されている「 OLAP 」で用いられている標準的な分析法に沿って解説していきます。「OLAP」の解説は後程行います。これらは応用範囲が広いため、他のデータでも活用できます。 また、「 seaborn 」を用いて、インパクトのあるグラフを少ないコードで描いていきます。グラフによるデータの見える化で、より深い洞察が得られることと思います。 ■ 概要を理解したい方は、下記の 動画 (7分31秒) をご覧ください。 ■ PowerPoint (パワポ) でじっくりと理解したい方は、 下記のスライドを参照してください。 Section 13 どのような集計をして、グラフを描くのか? by @Cat_Taro ■ 参考資料は、下記のURLをクリック!株式会社アシストが運営している「WebFOCUS」からの引用です。 https://fobi.ashisuto.co.jp/tech/imasara/olap/

#14 Section 12 データの保存

イメージ
データサイエンス体験動画「データサイエンス チュートリアル 猫のタロー編」の第14回目は、Section 12「データの保存」です。 1st STEP「ビッグデータの読み込みとデータの確認」の最終回です! せっかくデータ型を変更したり、欠損値を削除してきれいなデータになったので、Googleドライブに保存しておきましょう。これは、「2nd STEP 集計とグラフ描画」で使います。 今回はExcelではなく、「 csv 」というビッグデータでよく用いられる形式で 保存 します。 解説するプログラムは、次の2つです。   ㉘ データ名.to_csv(‘保存するフォルダーのパス/新データ名.csv’) 「' '」を忘れないようにしてください! 「保存するフォルダーのパス」は、一番左に表示されているアイコン(フォルダー)をクリックして選択し、その後右クリックし、「 パスをコピー 」をクリックすればコピーできます。 復習したい方は、第4回 Section 2「ライブラリの選択とデータの読み込み」 → 「4.パスのコピー」(スライド7)を参照してください。 ■ 概要を理解したい方は、下記の 動画 (4分54秒)をご覧ください。 PC操作画面を確認できます! ■ PowerPoint(パワポ) でじっくりと理解したい方は、 下記のスライドを参照してください。 Section 12  データの保存 by @Cat_Taro

#13 Section 11 データのグループ化

イメージ
データサイエンス体験動画「データサイエンス チュートリアル 猫のタロー編」の第13回目は、Section 11「groupbyを使ったデータのグループ化」です。 特定の列の値ごとにグループを作成 する「 groupby() 」について解説します。 解説するプログラムは、次の2つです。   ㉖ データ名.groupby(“列名”).count()   ㉗ データ名.groupby(“列名1”)[“列名2”].max() 「groupby()」で作ったグループは、pandasの特殊なオブジェクトになっているので 中身を確認することができません 。しかし、関数と組み合わせることによって、グループごとの計算が一気にできます。 ここでは、 顧客ごとの購入期間を算出 する例を説明しています。よく使う例ですので、しっかりと身に付けていきましょう! ■ 概要を理解したい方は、下記の 動画 (6分16秒)をご覧ください。 PC操作画面を確認できます! ■ PowerPoint(パワポ) でじっくりと理解したい方は、 下記のスライドを参照してください。 Section 11 groupbyを使ったデータのグループ化 by @Cat_Taro

#12 Section 10 queryを使った複数条件での抽出

イメージ
データサイエンス体験動画「データサイエンス チュートリアル 猫のタロー編」の第12回目は、 Section 10「 queryを使った複数条件での抽出 」です。 #8 「列の参照」では、列名を指定して、比較演算子を書くことによって、その列の条件に当てはまる行のみを参照する方法を解説しましたが、今回は、複数条件の組み合わせが、簡潔に記述できる「query」について解説します。 解説するプログラムは、次の4つです。  ㉒ データ名.query(“数字1 <= 列名 <= 数字2”)  ㉓ データ名.query(“列名 ! == 列名”)  ㉔ データ名.query(“列名 == 列名”)  ㉕ データ名.query(“論理演算1" and "論理演算2") 「query」は、 複数の比較演算子を用いる場合 や「and」、「or」、「not」等の 論理演算子 を使う場合にも対応していますので、とっても便利なものです。 また、結果の確認のために、「len()」、「describe()」も使います。復習してみてください! ■ 概要を理解したい方は、下記の 動画 (8分44秒)をご覧ください。 PC操作画面を確認できます! ■ PowerPoint(パワポ) でじっくりと理解したい方は、 下記のスライドを参照してください。 Section 10 queryを使った複数条件での抽出 by @Cat_Taro

カスタマーサクセスとデータ分析について

みなさん、お正月休み、どのように過ごしていますか? 猫のタローは、チュートリアルの動画作成をちょっとお休みして、TVや Prime Videoの合間に、溜まってしまった Chrome「リーディングリスト」を読んでいます。 その中で、ちょっと古いですが、ITmedia マーケティングの「 カスタマーサクセスはマーケティングや営業をどう変えるのか Gainsight日本法人代表に聞く 」がありました。 ポイントは、下記の点です。 ********** これまで、カスタマーサクセス部門は 解約防止 のための専門組織という印象があった。つまり、いかにして顧客を辞めさせないかに重点をおいていたのである。 だが、解約を希望する顧客に対して、あの手この手で何とか顧客をつなぎ止めるだけでは「顧客の成功」とは正反対の活動だと言わざるを得ない。 もともとやめたかったサービスを 渋々継続してもらっても 、それで顧客が成果を出せなければ ますます離脱意向は強まる 。 結果、企業側も売り上げを落とすことになる。これは買う側にとっても売る側にとっても 不幸な結末 だ。 ********** 確かに、前世では、顧客の求めに応じて、 チャーンレート (churn rate/解約率)の推移等を算出していたのですが、それって、ビジネスにとって、あまり効果が無かったのですね。 データ分析をする場合は、ビジネス上の目的に沿うことが大切だという原点を思い出させてくれる文章でした。 ビジネスの目的を理解するために、どのようなビジネスで、どのようにデータサイエンスが使われているかを知ることが大切だと思いますので、今年は、このあたりの解説も増やしていきたいと思います。 あと2回ほどで、1st STEP「ビッグデータの読み込みとデータの確認」も終了する予定ですので、 2nd STEP「集計とグラフ描画」との間に、いくつかのエピソードを入れて行こうと思っています。応援、お願いします!

リスキリングの意味

イメージ
 「NPO法人しごとのみらい」の竹内さんの記事「 リスキリング?本当に大切なのって、そこでしたっけ? 」を読みました。 以下、主な個所を抜粋します。 ●企業の中でリスキリングというなら、社員が学んだスキルを存分に生かせるように、 組織文化も変えていく必要 があるのでしょう。 ●本当の意味で学んだスキルを仕事に生かすためには、「 仕事で生かす努力 」も必要ではないかと思います。 ●実績とか、人柄とか、頼まれたら逃げずにやり切るところとか、スキルと同時に、 スキル以外のところも高めていく必要 があるんじゃないかな、と思います。 猫のタローは、この記事に大いに 賛同 します。 このブログは、データサイエンティストが身に付けるべき最小限のPythonプログラムを解説していますが、それは、プログラミング・スキルを身に付けることが最終目的ではありません。 プログラミングを体験することによって「 データ思考 」を身に付け、 ビジネス力を向上させ 、 キャリアアップ して 様々な体験 をしていくことで、自分の 人生を充実 させることの手助けができればと考えて執筆しています。更新が滞ることもありますが、「1st STEP ビッグデータの読み込みとデータの確認」、「2nd STEP 集計とグラフ描画」を完成させたいと思いますので、これからもよろしくお願いします。 動画や資料を作ることで、猫のタロー自身も日々成長を感じています!

#11 Section 9 欠損値の見つけ方・削除方法

イメージ
データサイエンス体験動画「データサイエンス チュートリアル 猫のタロー編」の第11回目は、 Section 9「 欠損値の見つけ方・削除方法 」です。 データには、カラムに何も要素の無い「 欠損値 」が存在することがあります。欠損値があると、機械学習のプログラムがエラーになってしまうものがあるため、欠損値を見つけ、欠損値を含む行、列を除去する必要があります。  解説するプログラムは、次の4つです。  ⑰ データ名.sort_values(“列名”,ascending=False):前出  ⑲ データ名.iloc[行番号 :  ]  ⑳ データ名.isna().sum()  ㉑ データ名.dropna() ■ 概要を理解したい方は、下記の 動画 (11分12秒)をご覧ください。 PC操作画面を確認できます! ■ PowerPoint(パワポ) でじっくりと理解したい方は、 下記のスライドを参照してください。 Section 9 欠損値の見つけ方・削除方法 by @Cat_Taro

#10 Section 8 データ型の変更(キャスト)

イメージ
データサイエンス体験動画「データサイエンス チュートリアル 猫のタロー編」の第10回目は、Section 8「 データ型の変更(キャスト) 」です。 Section 5「データ型」の⑩では、データ型を指定して、Excelを読み込む方法を解説しましたが、今回は、 一度読み込んでしまったデータのデータ型を変更 する方法を解説します。 既に読み込んだデータのデータ型を変更するには、下記のプログラムを使います。  ⑱ データ名.astype({“列名”:データ型}) ■ 概要を理解したい方は、下記の 動画 (7分27秒)をご覧ください。 PC操作画面を確認できます! 同時に、データ構造(データの並び方)には、今回解説した「 辞書 」の他にも、「 リスト 」、「 タプル 」、「 セット 」等がありますので、下記の解説を読みながら、理解を深めていきましょう。 ■ PowerPoint(パワポ) でじっくりと理解したい方は、下記のスライドを参照してください。 Section 8 データ型の変更(キャスト) by @Cat_Taro 【参考】 詳細は、「pandasのデータ型dtype一覧とastypeによる変換(キャスト)」を参考にしてください! https://note.nkmk.me/python-pandas-dtype-astype/

#9 Section 7 最大値・要約統計量・ソート

イメージ
データサイエンス体験動画「データサイエンス チュートリアル 猫のタロー編」の第9回目は、「 数値の最大値の求め方 」を説明します。 以前のデータの確認では、データ数を確認するだけでしたが、最大値、最小値、平均などの 要約統計量 を確認することも重要です。 今回は、最大値を中心に、平均や標準偏差、最小値、中央値などの要約統計量を求める方法を解説します。具体的なプログラムは、次の4つです。  ⑭ データ名["列名"].max(axis=0)  ⑮ データ名.describe()  ⑯ print(データ名[“列名“])  ⑰ データ名.sort_values(“列名",ascending=False) ■ 概要を理解したい方は、下記の 動画 (9分30秒)をご覧ください。 PC操作画面を確認できます! ■ PowerPoint(パワポ) でじっくりと理解したい方は、下記のスライドを参照してください。 Section 7 数値の最大値の求め方 by @Cat_Taro

#8 Section 6 列の参照

イメージ
データサイエンス体験動画「データサイエンス チュートリアル 猫のタロー編」の第8回目は、「 列の参照 」を説明します。 Section 3と4では、データ全体を確認することを習得しましたが、ここでは、特定の列を選んで、確認する方法を解説します。  ⑪ データ名[“列名”]  ⑪' データ名.列名  ⑫ データ名[[“列名”]]  ⑫‘ データ名[[“列名1”], [“列名2”]]  ⑬ データ名[データ名[“列名”] > 数字]  ⑥’ len(データ名[データ名[“列名"] > 1000]) ⑬の 比較演算子 を使った方法は、データを確認するだけではなく、データの持つ数値の特徴をざっくりと見るうえで、重宝しますのでしっかりと身に付けましょう。 今回も、動画を見てから、 PowerPoint(パワポ)の資料を見た方がわかりやすいので、まずは動画から! ■ 動画で、PC操作画面を見ながら概要を理解したい方は、下記の 動画 (8分0秒)をご覧ください。 ■ PowerPoint(パワポ) の資料をじっくりと読み進めてください。 Section 6 列の参照 by @Cat_Taro

#7 Section 5 データ型

イメージ
データサイエンス体験動画「データサイエンス チュートリアル 猫のタロー編」の第7回目は、「 データ型 」を説明します。 Pandas では、各列ごとにそれぞれデータ型を保持していて、データ型それぞれに合った処理方法が決められています。このデータ型を確認する方法と、データを読み込む時にデータ型を修正する方法を解説します。  ⑨ 「データ名」.dtypes  ⑩ pd.read_excel("データのある場所",  dtype = {"カラム名": データ型}) 今回は、動画を見てから、 PowerPoint(パワポ)の資料を見た方がわかりやすいので、まずは動画から! ■ 動画で、PC操作画面を見ながら概要を理解したい方は、下記の 動画 (5分37秒)をご覧ください。 ■ PowerPoint(パワポ) の資料をじっくりと読み進めてください。 Section 5 データ型 by @Cat_Taro 【参考資料】 ●Excelデータの読み込み https://www.yutaka-note.com/entry/pandas_read_excel_1 ●pandasでcsv/tsvファイル読み込み https://note.nkmk.me/python-pandas-read-csv-tsv/

#6 Section 4 読み込んだデータの確認(2)

イメージ
データサイエンス体験動画「データサイエンス チュートリアル 猫のタロー編」の第6回目は、読み込んだデータの確認(2)を説明します。今回は、下記のプログラムを使って、データのサイズを取得する方法を解説します。  ⑥ len(データ名.index)  ⑦ データ名["カラム名"]  ⑧ データ名["カラム名"].unique() ※ 「カラム名」は、「列名 」 と同じことです。混在してしまって、すみません! また、理解を深めるために、下記の知識を身に付けていきます。 ●Pandasのデータ構造「 Series 」と「 DataFrame 」 ●データの個数の数え方:「 のべ 」と「 ユニーク 」の違い ■ 動画を見る前に、 下記の PowerPoint(パワポ) の資料を読み進めてください。 Section 4 読み込んだデータの確認(2) by @Cat_Taro ■ 動画で、PC操作画面を見ながら復習をしたい方は、下記の 動画 (6分47秒)をご覧ください。 【参考資料】 ●SeriesとDataFrameの変換 https://note.nkmk.me/python-pandas-dataframe-series-conversion/