岡田テクノ特許事務所

Rを用いて特許時系列データのプロットを作成する

各特許出願の出願日、出願公開日、登録日(特許権の設定の登録があった場合)等のデータを用いて、特許出願の時系列での動向を確認することができます。

例えば、注目する出願人が当該技術分野においていつ頃から特許出願的に注力し始めたのか、最近は知財的に重視しているのか等を定量的に把握できる手段の一つとなります。

以下、母集合の特許情報データから、Rを用いて、特定の日データを抜き出して、時系列で件数データをプロットしてみます。

時系列で特許件数データをプロット



0) 母集合データの準備・取得

母集合データは、特許検索データベースの1つであるSRPARTNER(日立システムズ)から入手しました。
下表にSRPARTNERから入手する特許情報データ構造の一部を示します。

特許情報データ構造

各特許出願ごとに、発行日(公報) 、出願日、公開・公表日、公告・登録公報発行日等の日データが格納されています。



1) Rへのデータ読み込み

まず、上記特許情報データ(csv)をデータフレームとしてRに読み込む。その際、csvでの文字コードがBOM付ユニコード(UTF-8)であれば、以下のようにオプションで指定します。

今回は具体例として、あらかじめ「おむつ」関係の特許(登録)データを収集(約3700件)、SRPARTNERからダウンロードしてcsvデータを作成して(ファイル名=infile)、あらためてそのcsvファイルをread.csv()を用いて読み込み、データフレームdpatに格納しました。


    dpat<-read.csv(infile,stringsAsFactors=FALSE, fileEncoding = "UTF-8-BOM")
    

以下の例では、特許公報の公報発行日を抽出していますが、出願日、公開・公表日、登録日であっても、同様に処理できます。ただし、優先日に関しては異なる優先日の2以上の優先権を主張する場合は複数の日データを有する場合があるので注意を要します。



2) 公報日データを抽出・分離・集計

読み込んだデータフレームから公報発行日の列データ(”発行日(公報)”)を取り出します。

プロット用に年データだけ取り出すため、公報発行日の文字データをDate型に変換した後、formatで年だけを文字として抽出します。その年データをtableで集計した後、集計結果をデータフレーム(data.frame)に変換して、時系列データtdatを得ます。

尚、集計結果において年データの型がfactorだとグラフで支障がでるので、年データは整数データに変換しています。


    tdat<-dpat$"発行日(公報)" %>% as.Date %>% format("%Y") %>% table %>% data.frame()

    tdat[,1]<-as.integer(as.character(tdat[,1]))
    

尚、パイプを利用するために、dplyrパッケージを利用しました。

生成されたデータフレームの列名を適当な名前に変更すれば、


    colnames(tdat)<-c('Year','Number')
    

以下のような時系列(年ごと)の件数データを作成することができます。

時系列データ

ここでYearが注目する特許登録公報の発行年、Numberが該当特許件数です。


3) 特許分類件数ランキングをプロット

上記時系列データをggplotを用いて、プロットします。

要素を指定して読み込んだ後、描画種類、描画範囲、タイトル等必要なオプションを指定して描画します。
theme(…)で軸、配置、背景等を指定します。


    plt <- ggplot(tdat, aes(x=Year, y=Number,colour ="darkorange")) #要素を指定して読み込み

    plt <- plt + geom_line() #線描画

    plt <- plt + geom_point() #点描画

    plt <- plt + scale_x_continuous(breaks=seq(1970,2020,by=10),limits=c(1970,2020)) #横軸スケールの増分と範囲指定

    plt <- plt + ggtitle("Relationship between Number of Patents and Publication date") #タイトル

    plt <- plt + theme(plot.title = element_text(hjust=0.5)) #タイトルをグラフの中央

    plt <- plt + theme(legend.position = 'none') #legendなし

    plot(plt) #描画


以上により、特許時系列データのプロットを作成することができます。

時系列で特許件数データをプロット



特許情報プローブへ戻る