0.一言で言うと
(1) Appleの時価総額が2兆ドルを超えた
(2) 世界ナンバーワン企業の特許を見える化してみた
(3) ハード主体ながら、ソフトを使い、ユーザとのインターフェイスを大切にしていることが再認識できた
1.全体像
やったことは、以下の3ステップ。
(1)準備:Google PatentsでAppleの特許を抽出
(2)作業1:wordcloudで見える化
(3)作業2:Appleのロゴでマスクし、ついでに色も合わせる
2.準備:Google PatentsでAppleの特許を抽出
アップルの時価総額が2兆ドルを超えた。時価総額1兆ドルを達成したのも、アップルが最初だったけど、これが2018年。わずか3年で、時価総額が2倍になった。
カネ余りで、投資先が限定的。なおかつ、コロナで有望なのは巣ごもり消費が期待できるITとなると、やっぱりアップルなのかという感じ。ちなみに、主要株主として、世界ナンバーワン投資家のウォーレン・バフェットが名を連ねる。さすが!
さて、アップルの何が凄いのかを確認したいがために、アップルの知的財産権(特許)の状況をザックリと見える化してみた。まずは、Google Patentsでアップルの米国特許出願、csvデータとしてダウンロード。Google Patentsの左上の表示では、2010年以降で約2万件のデータがあるはずだが、csvにダウンロードすると約半分の9,000件。上限の件数がどうなっているのか、よく分からなかった。
3.作業1:wordcloudで見える化
まずは、csvをpandasのデータフレームで読み込み。Google Patentsでcsvにダウンロードすると、最初の行に抽出条件、今回であれば、
https://patents.google.com/?assignee=Apple+Inc.&country=US&after=priority:20100101
が入るので、読み込む際、header=1としておく。
import pandas as pd
df=pd.read_csv("data.csv",header=1)
df.columns
今回は特許名(タイトル)のみ使う。
Title=df["title"]
Text=''
for i in Title:
Text+=i
さて、いよいよwordcloudの出番。
import wordcloud
word_cloud=wordcloud.WordCloud(background_color="white")
word_cloud.generate(Text)
import matplotlib.pyplot as plt
plt.figure(figsize=(16,10))
plt.imshow(word_cloud)
plt.axis("off")
plt.show()
先ほど、用意した特許名のテキストをwordcloudに読み込ませて、matplotlibで描画してみよう。すると、以下のようになる。
取り除きたいワードをstopwordsとして引数にして、同じワードが2度出たりしないようにしよう。
stopwords={"method","using","portion","thereof","based","multiple","multi","and","of","in","for","with","to","or","providing","on","by","an"}
word_cloud=wordcloud.WordCloud(background_color="white",collocations=False,stopwords=stopwords)
word_cloud.generate(Text)
plt.figure(figsize=(16,10))
plt.imshow(word_cloud)
plt.axis("off")
plt.show()
多少、スッキリした。
4.作業2:Appleのロゴでマスクし、ついでに色も合わせる
個人的に気に入っているアップルのロゴで、マスクしてみよう。
この際、numpyのarrayを使うことに注意。
from PIL import Image
import numpy as np
mask_array = np.array(Image.open('Apple.jpg'))
word_cloud=wordcloud.WordCloud(mask=mask_array,background_color="white",collocations=False,stopwords=stopwords)
word_cloud.generate(Text)
plt.figure(figsize=(16,10))
plt.imshow(word_cloud)
plt.axis("off")
plt.show()
結果は、以下の通り。アップルらしくなった(笑)
せっかくなので、レインボーカラーに輝く、アップルのロゴの配色を利用して、wordcloudを作ってみよう。
from wordcloud import ImageColorGenerator
image_color = ImageColorGenerator(mask_array)
word_cloud=wordcloud.WordCloud(mask=mask_array,color_func=image_color,background_color="white",collocations=False,stopwords=stopwords)
word_cloud.generate(Text)
plt.figure(figsize=(16,10))
plt.imshow(word_cloud)
plt.axis("off")
plt.show()
この時、wordcloudのImageColorGeneratorが必要になるので、注意。
結果は冒頭に掲げた通りだが、再掲しておこう。アップルは、お洒落
5.まとめ
アップル、すごい。一時はマイクロソフトに敗れ、マニアだけのPCになるかと思ったけど、iPhoneで世界を変えた。でも、ここ最近、わずか3年で時価総額が倍増したなんて、本当にビックリ。ハードとソフトを融合させ、工場を持たないファブレスで、ユーザー・インターフェイスを大切にする、その特徴が時代にマッチしている。