より良いエンジニアを目指して

記事を頻繁に書き直す性格なのでごめんなさい。

Python

ワンランク上の見やすさを目指してmatplotlibの棒グラフの色を指定する

以下の記事なのですが、グラフの見せ方という観点で、シンプルだけど、思いもつかなかったという内容でした。 www.zukai.site 目立たせたい箇所はメインカラー、それ以外は薄いメインからーかグレーで抑えるというものです。 これをPythonで可視化するときに…

CythonをGoogle Colaboratoryで試してみる

なんとなく、Cythonを読んでいたのですがいいですね。 www.oreilly.co.jp Cythonを使ったからといって全てのコードが大幅に早くなる訳ではない。バレートの法則に従い、ボトルネックに使うのが良いそうです。 NumpyなどのライブラリではCythonでCを持ち込む…

Jupyter Notebookがおかしい。クリックすると改行される。

とある日、気づくとJupyter Notebookがおかしくなっていました。 クリックするとセルが改行される。なぜ? 起動はするのですが、クリックするとセル内が改行されてしまい、まともに入力することができないのです。 アップデートは試してみました。 jupyter.r…

自分のブログ記事のプログラミング言語で円グラフを作成して考える円グラフ

円グラフは使い所に注意が必要なグラフとされています。 円グラフを安易に使ってはいけない理由を実例を交えて説明します 見た目はよいが、数字の違いが伝わりにくいというものです。 だが、「この項目が全体を大きく占めているんだ!」ということを伝える点…

Jupyter Notebookを使うならば忘れずに"pip install japanize-matplotlib"

私が説明までするまでもなく素晴らしいモジュールだと思います。 JupyterNotebookを使う日本語ユーザー全てに必須アイテムとも言えるでしょう。 qiita.com github.com pip installして、以下の行を追加するだけで、文字化けを防ぐことができます。 import ja…

PyrightをVisual Studio Codeで利用したらどんな感じ?

PyrightはPythonの型チェックを行うツールです。 github.com GitHubや情報サイトでは文字の説明だけで、実際に使ったらどうなるかがわからないのでVisual Studio Codeの拡張機能として試してみました。 marketplace.visualstudio.com マウスオーバーでツール…

quantile(分位数)を学び、箱ひげ図について理解を深める。

Kaggleで他の方のKernelを見ていたら、numpyのquantile関数を使っているのを見かけました。 numpyでは1.15から使える関数なのです。 numpy.quantile quantileどころか分位数自体、知りませんでした。 分位数とは、結論から言えば、Wikipediaにある 分布をq:1…

ワインの種類にベイズ分析とLDAを試す

機械学習にも流儀(?)や哲学(?)があるようです。 ベイズ分類、勉強しましょう! と後輩に言われたので勉強することにしました。 www.sogensha.co.jp 上記の本を読んだのですが、ワインのデータセットが紹介されていたので実際に、チャレンジしてみること…

JupyTextを試す

下記のJupyTextが紹介されている記事に出会ったので、試してみました。 qiita.com JupyTextにするメリット Jupyter Notebookで実装したファイルが.pyファイルにも変換されるため、いちいちpyファイルに変換する必要がない Jupyter Notebookのipynbより.pyフ…

Pythonが提供するアルゴリズムのテクニック「メモ化」の機構

競技プログラミングで出題されるアルゴリズムを考える上で、メモ化というテクニックがあります。 %%time def fib(n): if n <= 1: return 1 return fib(n-1) + fib(n-2) for i in range(1,20): print(fib(i)) 再帰に対して、配列や辞書型を用意して、使われる…

Chainerチュートリアルとかキノコのデータセットとか

Chainerを勉強してみたいなと思っていたのですが、書籍のレビューを見ていると評価が芳しくないので、公式ドキュメントを見て勉強してみることにしました。 Mushroom 最初はいつもの手書き文字であるMNISTではなく、mushroom。 キノコが食べられるか食べられ…

PythonからRの食道がんデータセットを試してみる

Rには標準データセットがあります。 R言語 サンプルデータ一覧 | トライフィールズ esoph(食道がん)を始めとするインドメタシンの薬物動態といった医療系もありますし、航空客やインターネット利用数のような時系列データなど多岐に渡ります。 これをPython…

Google Colaboratory使ってみて気づいた備忘録

Dataloreに手を出すほど、Jupyter Notebookの類は色々使っていましたが、Google Colaboratoryについては、本格的に使ってませんでした。 どちらかというとMicrosoftの技術を使うことが多いので、Azure Notebooksで、まあいいか、あとはDataloreの方がいいか…

HoloViewsを通してBokehの見栄えのよさに気づく

Pythonの可視化ツールはHoloViewsが標準になるかもしれない - Qiita Welcome to Bokeh — Bokeh 1.0.4 documentation HoloViewもBokehも使ってみたかったのですが、なかなか時間がありませんでした。 Bokehについても覚えないとならないのか、そんなにライブ…

政府統計窓口e-Stats APIを使ってみる

政府統計窓口e-Statsには(Web)API形式で提供されています。 こちらを使って分析してみたいと思います。 APIの利用の前に まず、APIを利用するにはユーザー登録が必要です。 www.e-stat.go.jp ソーシャルアカウント連携も扱っており、FacebookやTwitterでログ…

pandas.DataFrameのcorr関数について

pandas.DataFrameのcorr関数は、相関係数を求める関数です。 pandas.pydata.org ここから、seabornでヒートマップで表示というのは私はよくやるのですが、相関を求めるとはいえ、具体的に何をやっているのかはよく理解してませんでした。 相関係数にもいくつ…

pandas.DataFrame.groupbyした結果に対して、平均値でソートして箱ひげ図で表示したい

https://gist.github.com/rimever/90d1933ed481b044a94299f09c773685 pandas.DataFrameはgroupby関数で指定のカラムでグルーピングすることが出来るのですが、もどかしいことがありました。 groupbyでグルーピング 箱ひげ図で表示してみる というのは私がよ…

Jupyter Notebookでアニメーション。Azure NotebooksでもGoogle Colaboratoryでも。

現在、下記の記事で勉強中なのですが、Jupyter Notebookでアニメーションすることができるようです。 book.mynavi.jp こんなこともできるのかと驚き、調子に乗ってツイートしてしまいました。 Jupyter Notebook でこんなこともできるのかー pic.twitter.com/…

サンウルブズがなかなか勝てない理由はスタッツに見えてくるか

スーパーラグビーでは我が日本のチーム「サンウルブズ」も参加しています。 が、2018年は残念なことに開幕5連敗ということがありました。 sports.yahoo.co.jp 失礼な言い方になると、これだけ勝てないチームだと、全体の平均と比べれば何が足りないのか如実…

スーパーラグビーのスタッツで分析するラグビーの勝因は?

ラグビーだけでなく、スポーツの試合を見終わった時に、振り返ることは、 勝因はなんだったのだろう? でしょう。 実況が解説者に聞くこともあります。 この勝因がスタッツでわからないということで、スーパーラグビーのスタッツで分析していきたいと思いま…

スーパーラグビーにおけるボール支配率

ボール支配率 サッカーだとボールポゼッション、ボール支配率というのは、テレビを見ていると出てきます。 ボールポゼッションといえば、スペインのバルセロナとサッカーのスペイン代表が強い頃には(今も強いですが)それが取り上げられ、 (ゴール前でパス…

スーパーラグビーのデータから見るホームアドバンテージ

サッカーでは、審判もホーム寄りとか、ファンの応援もあってというホームが有利・地の利についての話はよく聞きます。 ラグビーではどうなんでしょうか。 スーパーラグビーのデータを集めることが出来たので分析してみます。 スーパーラグビーについて軽く説…

scikit-learnの乳がんデータセットで機械学習

scikit-learnには乳がんのデータもあるので、糖尿病患者のデータセットに引き続きを確認します。 yolo.love 5. Dataset loading utilities — scikit-learn 0.20.2 documentation radius,smoothnessなどの観点について、それぞれ平均、標準誤差、最大(worst…

scikit-learnのデータセットで糖尿病について知る

scikit-learnにはいくつかデータセットが用意されています。 ボストンの住宅価格とアヤメ、数字の手書きデータは頻出するのですが、糖尿病患者のデータセットなんてのもあります。 yolo.love 医療ITの人間だったら、これは一度は触れておくべきだなというこ…

機械学習でポケモンのバトルを攻略する〜Python その2 Advent Calendar 2018 - Qiita 25日目

Python その2 Advent Calendar 2018 - Qiita 25日目に投稿です。 はじめに 環境 データについて 2値問題に置き換える データの全体像を掴む すばやさ最強説 ランダムフォレスト LightGBMを試す さいごに はじめに 今回はKaggleのデータセット「Wheedle's Cav…

衝撃のDatalore〜圧倒的な使いやすさを誇るクラウド上のJupyter Notebook

Dataloreの魅力 blog.jetbrains.com 要はクラウド上で動かせるJupyter Notebookといったところです。 ホーム画面 この手のサービスでは、Google ColaborateryやAzure Notebooksがあります。 それらのサービスがありながらも圧倒的な存在感のあるサービスです…

Kaggleのカーネルで学ぶデータ分析「ポケモン、データだぜ!」

kaggle その2 Advent Calendar 2018 - Qiitaの22日目です。 Kaggleのカーネルを投票順で眺めていると、良いカーネルがあったので紹介します。 Data ScienceTutorial for Beginners | Kaggle 私は日本人ですし、日本が好きなので、初心者向けのチュートリアル…

7人制ラグビーの魅力をデータとPython で語る

これまでは15人制のラグビーを扱ってきました。15人制はラグビーユニオンと呼ばれます。 他にも13人制のラグビーリーグと7人制のセブンズというのが存在します。 rugby-island.com 混乱してきましたね。 ここでは7人制ラグビー、セブンズについてデータとPyt…

クリスティアーノ・ロナウドが何ゴール取るかを機械学習とFIFA18のデータで予測する

Python Advent Calendar 2018 - Qiitaに16日目の投稿です。 以前にやった記事の続きをやりたいと思います。 rimever.hatenablog.com 簡単に言うと、ゲーム「FIFA18」のステータスでCR7こと、クリスティアーノ・ロナウドが何点取れるか予測するという話です。…

ラグビーで後半に逆転は多いかをPythonで分析してみる

最近の日本代表の試合は 日本-イングランドは前半は勝っていたのに、負けてしまいました。 これだから日本はここぞというときに弱いんだと言われるので生姜、逆に日本-ロシアは前半は負けていたのですが、勝っています。 ラグビーは逆転が多い試合なのでし…