読者です 読者をやめる 読者になる 読者になる

DISTRICT 37

なにか

matplotlibで2軸グラフを作る

一つのグラフに複数のグラフを描くのと、評価の違う軸を合わせて描く twinx() これを使うだけでX軸を共有できる twiny() twinxがあるってことはtwinyもある y軸が共有できたのがわかる

Scrapyのコツ

Scrapyを作ってていくつかコツをつかんだ気がする。といっても処理側の話なので、xpathをマスターしないことにはScrapyが作れないことには変わりない。 Spiderのコツ itemをitemクラスに格納する際にはyieldをうまく使うといい。 前回やったRSSのようにデー…

ScrapyでRSSをスクレイピング

RSSリーダがすでにあるのに、スクレイピングをするなんて、、、いや、余計なことは考えない!! スパイダーを作ってアイテムに入れるまで 今回のお題としては、はてぶの人気エントリのRSSを取ってきてアイテムに入れるまで。パイプラインに関しては今回は扱…

Jupyter Notebookの設定をする

JupyterNotebookの設定をする。導入はこちら dragstar.hatenablog.com Jupyter notebookをホストのブラウザで使用する Ubuntu on Virtualboxで運用しているので、Jupyterとか使用する際にはゲスト側ではなく、ホスト側のブラウザで実行すると捗る。というこ…

Pythonでクラスタ分析

俺たちのirisでクラスタ分析を行う。 クラスタ分析とは 機械学習の一つで教師なし学習に分類される。データの特徴をプログラムが判定して、それぞれのクラスタに分けることが出来る。 クラスタリング分析は一般的にK-means法が使われる。データに対してまず…

matplotlibが描画されない

普段コードを書くときはjupyterを使っていて、matplotlibのプロットがブラウザ内に行われるの為この問題には気付かなかった。改めてpythonのコードを書いてみて描画関連でエラーが出ていることに気が付いた。 環境 何が起こったか 解決方法 確認 原因 参考 …

Pandasの基本操作

Pandasの操作シリーズ 第二弾 前回 dragstar.hatenablog.com データの基本操作 所謂基本統計量がとれる www.mm-lab.jp 最大値の取得 df.max() 最小値の取得 df.min() 平均値の取得 df.mean() 中央値の取得 df.median() 分散の取得 df.var() 標準偏差の取得 d…

Pandasでcsvを操作

Pandasの操作シリーズ CSVファイルからPandasを作る こういうCSVデータがあったとする。 no,Sepal.Length,Sepal.Width,Petal.Length,Petal.Width,Species 1,5.1 ,3.5 ,1.4 ,0.2 ,setosa 2,4.9 ,3.0 ,1.4 ,0.2 ,setosa 3,4.7 ,3.2 ,1.3 ,0.2 ,setosa まずは基…

pipでいれたパッケージを一括アップデート

pipでなんやかやパッケージを入れているのだが、これまで何をいれたのか忘れる。アップデートがあるとかそういったものは当然のように忘れる。ということで管理方法などを調べた。 パッケージの管理 まずはpipでできるコマンドから。 パッケージリストの表示…

irisのデータセットをpandasで使う

タイトルまんまで irisをpandasで使いたい pythonのscikit-leanにはいくつかデータセットがあり、俺たちのirisももちろん用意されている。ただそれをpandasで使いたいんや。 pandas先生は自動的にいろいろやってくれる上、その後の加工にも便利。機械学習界…

Scrapyチュートリアル

インストール プロジェクトの作成 Itemの作成 Spiderの作成 shell Pipelineの作成 実行 スケジューリング 最後に インストール 前回記事より。 dragstar.hatenablog.com プロジェクトの作成 まずはプロジェクトを作る scrapy startproject tutorial ツリー構…

mysqlclientでCRUDする

というよりmysql-connector-pythonがインストールできなかった。 dragstar.hatenablog.com mysql-connector-pythonをpipからインストールしようとしたら下記のエラーが出た Could not find a version that satisfies requirement mysql-connector-python(fro…

Pythonのドライバがいくつもある件

どのドライバ使えばいいんだってばよ なんでこんなにあるんだ ここにいくつもある MySQL - Python Wiki で、日本語で情報が検索できたものとしてピックアップしたのがこのへん PyMySQL mysql-connector-python MySQL-Python mysqlclient 概要を表にしてみた …

Ubuntu15.10にScrapyをインストール

データがなければ自分で加工すればいいじゃない Scrapyとは Scrapy | A Fast and Powerful Scraping and Web Crawling Framework ScrapyとはPythonのスクレイピングライブラリというかフレームワークで、Webサイトの情報を抽出することができる。要はFireFox…

Pythonで近似曲線を描く

Rでやった事をPythonでもやる。 dragstar.hatenablog.com 準備 scipy numpy ライブラリはこの辺を使う。データも前回同様気象庁のデータを使います。 ライブラリの準備 import pandas as pd from matplotlib import pyplot as plt import seaborn as sns imp…

Jupyterの構築

いやぁ、捗りますね。今回はJupyterをインストールしてさらにRを使える様にする所までを。 Jupyterとは Jupyterのインストール JupyterでRを使えるようにする githubとgist terminalも使える magic command ゲストOSで起動させてホストOSで動かす まとめ Jup…

Ubuntu15.04でpipからmatplotlibが入らない

ということで、リンク先まんまですが ng3rdstmadgke.hatenablog.com 必要ライブラリをinstallしておく 必要なライブラリはこの3つ libpng-dev libjpeg8-dev libfreetype6-dev aptを使ってインストールします。 sudo apt install libpng-dev libjpeg8-dev li…

マイナンバーのチェックデジット計算 python編

マイナンバーを提出するときに何回か怒られた。DBにアクセスしてるのか?と思ったけど、何のことはなく、チェックデジットを使っていた。 チェックデジットの仕様はここに書いてある。 総務省令第八十五号 ただし、 <= 1の場合は0とする という事でpythonで…

MeCabとCaboChaとRMeCabでテキストマイニングの準備をする

データの解析をしてくれと依頼があったので資料を見たところ、どうも自然言語が多い。こりゃテキストマイニングだなという事で、環境の整備から行った。何はともあれ形態素解析エンジンであるMeCabが無いと日本語の解析はできない。そのMeCabと係り受けの解…

ENIGMA~暗号解読~

ナチス・ドイツが大戦中に使用したエニグマが4400万円で落札されたというニュース。 www.jiji.com エニグマの仕組み サイモン・シンの暗号解読に詳しい事が書いてあり、なるほどという事でpythonで実装したことあるが、とても汚くなったので公開するのもしの…

Pythonによるアルゴリズムクイックリファレンス:選択ソート

選択ソート これも力技の一種。曰く、整列アルゴリズムの中で最も性能が悪いので詳しく述べるのはやめるとの事。確かにこれに関して割いたページ数は2ページ(半ページ2枚なので実質1ページ)と扱いが小さい不遇なアルゴリズム。 未ソート分の中から最小…

Pythonによるアルゴリズムクイックリファレンス:クイックソート

クイックソート 要は中央値ソートの改良版。中央値ソートは名前の通り真ん中を選んで配列を分けた後にそれぞれを整列させていくやり方だが、クイックソートは適当な位置の値をつかって配列を分割させそれぞれ整列を行うやりかた。中央値に比べて比較的きれい…

Pythonによるアルゴリズムクイックリファレンス:中央値ソート

中央値ソート 小手調べはまだ続く。今回のお題は中央値ソート。要素の真ん中の値を使って便宜的に二つの配列を作る。作った配列の真ん中の値を、、、と再帰的に処理を行って最終的にソートされる。いわゆる分割統治法で解決しているからか、さっそくアルゴリ…

Pythonのベンチマークライブラリ「Benchmarker」

ベンチマークって面白い 今のコンピュータは速度とかあまり気にしないで実行ができ、大体の処理はさっさと終わる。素数を探すとか天気をシミュレートするとかシビアな問題なら話は違ってくるが、大体はさっさと終わる。計算機としてのコンピュータってやっぱ…

Pythonによるアルゴリズムクイックリファレンス:挿入ソート

アルゴリズムを考えるのは面白い。面白いが基礎も忘れるべからずという事で「アルゴリズムクイックリファレンス」をPythonでコーディングしようかと思う。 挿入ソート 第四章は小手調べ。ここで行うソートはリスト型とかのAPIに組み込んであることがほとんど…

OpenOptとGLPKで線形計画問題を解く

最適化問題API OpenOpt OpenOpt OpenOptの位置づけがどうもわからん。ソルバーかなと思うとそうではなく、最適化問題に関するAPI群とかフレームワークというのがなんとか腑に落ちる表現かなと思われる。ということでOpenOptを使った線形計画問題を書いてみた…

PuLPを使って線形計画問題を解く

LP計算に使えるsolver「PuLP」 最適化問題にはまっていてpythonで使えるsolverを探していたところで見つけたのがPuLP。有名なところだとgurobiとかだけど、有償なのでなかなか手が出ない。ということでいいよPuLP。PuLPいいよ。 問題 出典:線形計画法の例題…