データアナリストのメモ帳

データアナリストのメモ帳

IT企業で働くデータアナリストのブログ

2022-01-01から1年間の記事一覧

【Python】NetworkXで友達の友達を可視化する方法

NetworkXを使ってSNSの分析をするときに便利かもしれない。 誰かの友達の友達をリストアップして可視化する方法です。 やり方は簡単で、最短経路長が2の人(1は友達)を探してくれば良いわけです。 例として、Zacharyの空手クラブを用います。 import networ…

【Python】pandasでLAG / LEAD OVER PARTITION BY したいとき【SQL】

SQL書きすぎてるとpandasの書き方わからなくなる。 pandasでSQLの LAG(value) OVER(PARTITION BY class ORDER BY value) のような処理をどうやって書くのか? groupbyとshiftを使えば一発です。LEAD()の場合はshift(-1)でOK。 import pandas as pd df = pd.D…

ネットワーク分析を用いて感染症の制御を考えてみる(経済セミナー 2020年12月・2021年1月号より)

ここでは、経済セミナー 2020年12月・2021年1月号に掲載のあった「中心性を使った感染症の制御(小蔵正輝)」という記事を、実際にPythonで(NetworkXを使って)コードを書きながら解説します。 www.nippyo.co.jp 以下で説明するような問題設定下においては…

【NetworkX】Girvan–Newmanアルゴリズムでコミュニティを抽出(台北MRTを例にして)

この記事では、NetworkXを使ったネットワークの中のコミュニティ抽出の手法を、台北の地下鉄を例にして解説します。 実際に分割されたコミュニティの可視化についてもコードを載せておきます。 Girvan–Newmanアルゴリズムとは? Girvan–Newmanアルゴリズムは…

pageviewapiを使ってWikipediaの記事のPV数をDailyで取得する(トレンド把握に便利!)

pageviewapiというWikipediaの任意の記事のPV数を取得するAPIを使って見たいと思います。 WikipediaのどんなページのPV数でも一気に調べられます。 これは何に便利かというと、知りたい事柄(例えば有名人、企業、地名など)がどの程度世間から関心を持たれ…

【Python】pandasのgroupbyで複数の統計量(平均、中央値など)を同時に取る

pandasでgroupbyを使って集計をする際に、この量に関しては平均を、また別の量については中央値を取りたい場合などに使える方法です。 まず、DataFrameを定義します。 男女の身長と体重が記録されているとしましょう。 import pandas as pd sample_df = pd.D…