バイオ系博士の備忘録

プログラミング関係の備忘録

新薬の情報を元に、製薬業界を分析する

製薬企業の特徴を新薬から探る

就活を始める方で、どのように業界研究すればよいかわからない人って結構いると思います。
私もその1人で、まずは製薬に絞って就活しようと思い立ったのですが、それでも膨大な数の企業があって時間と労力をかけなければ俯瞰的な視点を持つことは難しそうでした。
製薬企業のセグメントは、資本(内資・外資)と事業領域(新薬・ジェネリック)の軸の上に、疾患領域をどのようにターゲティングするかでさらに細分化されるようです*1
大まかな分類は調べれば出てきますが、最新のデータを元にした細かな業界研究は見当たらなかったので、自分で分析することにしました。
その際、R&Dの職に就きたいという希望があったので、新薬の情報を元に、製薬企業の分類をすることにしました。

データ集計、処理

概要

KEGG DRUGに2000年以降に上市された新薬が記載されています。
承認日, 薬効, 分類ID, 有効成分, 商品名, 会社名などの列に対して、630個の新薬が列挙されています*2 *3
有効成分やら商品名だけでは何の薬かぱっと見わからないものも多いので、薬効分類を併記したいです。
そのために、分類IDの対応表を作成しました。
分類IDは4桁数字からなるレコードで、大・中・小・細小と薬品を分類しています*4
このデータはjsonファイルでダウンロードすることができたので、Pythonで分類IDごとに分類名称を対応させることにしました。
元の表と薬品分類対応表をスプレッドシート上で合体させ、Tableauで可視化することにしました*5

jsonファイルのパース

jupyter notebookを用いて、次のようなコードでpandas DataFrameに変換しました。

import json
file = open('jp08301.json')
data = json.load(file)

from pandas.io.json import json_normalize
df = json_normalize(data=data,record_path=['children','children','children','children'],meta=[['children','children','children','name'],['children','children','name'],['children','name']])
df = df[['children.name','children.children.name','children.children.children.name','name']]

df.rename(columns = {'children.name':'first','children.children.name':'second','children.children.children.name':'third','name':'fourth'}, inplace=True)

df['first'] = df['first'].str.replace('^[1-9]+', '').str.strip()
df['second'] = df['second'].str.replace('^[1-9]+', '').str.strip()
df['third'] = df['third'].str.replace('^[1-9]+', '').str.strip()
df[['code','fourth']] = df['fourth'].str.split('  ', expand=True)

json_normalizeでパースしました。
ネストされまくっているので、record_pathとmetaで欲しいデータを指定しています。
また、rename後、余計な文字を削除しました。
結果は次のような表になります。

f:id:arukuhito_000:20190911152947p:plain
薬品分類

可視化

Google Driveとtableauと繋げれば、わざわざcsvファイルをアップロードしなくてもデータを整形できちゃいます。
企業名に表記揺らぎや今はもう統合された企業があったので、前処理としてグループ化だけしました。
細かい操作もできて、色々痒いところに手が届く仕様にしているようで、こういう趣味のデータを可視化する分には十分な機能を持っている印象です。
最近流行りのtableauの分厚い教本がありますが、買わなくても直感的に操作できるのがいいところだと思います。



可視化するまでもなかったのですが、近年の上市新薬腫瘍用薬, 中秋神経系用薬が多かったです。
薬品分類ごとの企業割合から、一部省略していますが、がん領域だとMSD, 中外, ファイザー, ノバルティス, アストラゼネカが強いことがわかりました。
また、代謝性医薬品(皮下注射用の医療用医薬品など)は、サノフィ, 協和キリン, ジョンソンエンドジョンソンなども強そうです。

company
企業割合



また、企業ごとの新薬承認数も可視化しました。
MSD, ファイザー, グラクソ, ノバルティスなど、外資が強いようです*6

new drug
新薬承認数



有効成分がモノクローナル抗体の薬品は、分子標的薬です。
名前が〜〜マブとなっている薬を列挙しました。
腫瘍用薬で分子標的薬は圧倒的にMSD, 中外が強いみたいです。聞いたことある名前がちらほら入ってますね。

Molecular targeting drugs
分子標的薬



一例として、中外製薬が出している新薬を列挙しました。
少し前は領域横断的に新薬を出していましたが、近年でがん領域に特化し始めたことがわかります。
一番新しい新薬のロズリートレクはつい最近販売が開始されたので、ニュースになりましたね。
www.chugai-pharm.co.jp

chugai
中外製薬


最後に

ざっと可視化しただけでだいぶ特徴が掴めたと思います。
やってよかった。

今回は時間をかけずに調べたかったのでやりませんでしたが、もっと力を入れて分析できるなと思った点もありました。
例えば、企業ごとの特色は四季報に書いてあるので、そこのデータを結合すればもっと細かい分析ができると思います。
また、ATC分類で対応表を作れば、もっとわかりやすい分類になったかもしれません。
scikit-learnを用いてクラスタリングすれば、もっとわかりやすい分類もできると思います。

分析に用いたスプレッドシートは需要があれば公開します*7

ここまで読んでくださり、ありがとうございました。

*1:国内製薬業界のいま〜医療業界コンサルタントが解説!|SCIENCE SHIFT

*2:2019/9/3現在

*3:別の表に再生医療新薬も記載されていましたが、今回は除きました。

*4:KEGG BRITE: 医療用医薬品の薬効分類

*5:Pythonで可視化してもよかったのですが、時間短縮とBIツールの練習のためにこの方法を選択。学生は無料!

*6:武田は内資ですが、経営陣トップは外国人ばかりっぽいので、どちらかといえば外資志向なイメージはあります。

*7:KEGG DRUGも公開データベースなので、特に問題ないと思います。