pyhaya’s diary

プログラミング、特にPythonについての記事を書きます。Djangoや機械学習などホットな話題をわかりやすく説明していきたいと思います。

プログラミング

機械学習を原理から理解する 回帰

機械学習をただ使うだけでなく、どのような原理で動いているのか理解するために数学的な観点からちゃんとアルゴリズムを見てみます。前回は線形回帰の記事を書きました。 pyhaya.hatenablog.com今回は、前回の線形回帰のアルゴリズムを拡張して、高次の回帰…

Kaggleのタイタニックデータの解析

Kaggleの定番データセットといえば「タイタニックの生存者予測」です。今回は生存者の予測を目指して解析を行っていきたいと思います。データの可視化について詳しい説明は前回記事で書いているのでそちらを参照してください。 Titanic: Machine Learning fr…

機械学習を原理から理解する 線形分類

最近、機械学習がブームでPythonを使えばだれでも簡単に学習器を作れるようになってきましたね。Pythonはライブラリが充実しているのでモデルについて何も知らなくでも機械学習をできます。私も別に仕事で機械学習を使っているわけではないのでそのような状…

ABC012 B 入浴時間 を解いた

今回は、AtCoder Beginners Contest 012 のB問題を解きましたのでまとめておきます。この問題は特別アルゴリズム等が必要なわけではなく、難しくもないのですが、ゼロ埋めが必要で、私がこれをよく忘れるので、備忘録的な感じで書きました。 beta.atcoder.jp…

Djangoで家計簿のWebアプリケーションを作る 7 ビューをクラスを使って整理する

Djangoで家計簿のWebアプリケーションを作っています。 ビューが汚い リファクタリング ビューの機能とは無関係の部分を抽出する ビュークラスを使う ビューが汚い ここまで様々な機能を実装してきました。その結果、views.pyの中身がだいぶ見づらくなってし…

「テスト駆動開発」をPythonで書き直してみた 7

書籍「テスト駆動開発」をPythonで書き直したシリーズです。前回の記事はこちらです。 pyhaya.hatenablog.com今回は、いよいよ多国通貨を扱うための準備に取り掛かります。テスト駆動開発作者: Kent Beck,和田卓人出版社/メーカー: オーム社発売日: 2017/10/…

AtCoder Beginners Contest (ABC) 011 C: 123引き算 を解いた

競技プログラミング初心者が初心者向けに問題の解説を行います。 使用環境 問題文 例 単純に考える 満点解法 使用環境 Windows10 Visual Studio 2017 問題文 今回挑戦するのは、次の問題です。 あなたは、友人から、一人用のゲームを紹介されました。最初に…

Djangoで家計簿のWebアプリケーションを作る 5 テストを書く

DjangoでWebアプリケーションを作る解説記事です。今回のトピックはテストです。今更感がすごいですが、だいぶコードが増えてきたのでテストを書いてくさびを打っておきます。前回の記事 pyhaya.hatenablog.com モデルのテスト URLのテスト モデルのテスト f…

「テスト駆動開発」をPythonで書き直してみた 6

書籍「テスト駆動開発」をPythonで書き直してみたシリーズの第6弾です。すでに書籍のコードとは大きく乖離し始めていますが一応参考書籍は明示しておきます。過去の記事はこちらです。 pyhaya.hatenablog.com テスト駆動開発作者: Kent Beck,和田卓人出版社/…

Djangoで家計簿のWebアプリケーションを作る 4 日ごとの支出額を可視化する

Djangoで家計簿のアプリケーション作ってみた、という記事の4つ目です。今回は日ごとの支出をmatplotlibでグラフ化します。Webアプリでグラフを作る場合にはJavascriptに便利なツールがそろっているのですが、Javascriptは現在勉強中なので今回はmatplotlib…

LeetCodeを使ってアルゴリズムの勉強&面接対策

今回は、LeetCodeというプログラミングの学習サイト兼就活・転職サイトを紹介したいと思います。 LeetCode - The World's Leading Online Programming Learning Platform どんなサイトか 機能 アルゴリズム 面接対策 オンラインジャッジ ユーザー同士の議論…

「テスト駆動開発」をPythonで書き直してみた 5

書籍「テスト駆動開発」をPythonで書き直してみたシリーズの5です。前回は、DollarクラスとFrancクラスの親クラスとしてMoneyクラスを作り、重複したコードを親クラスへ引き上げました。 pyhaya.hatenablog.comテスト駆動開発作者: Kent Beck,和田卓人出版社…

「テスト駆動開発」をPythonで書き直してみた 4

書籍「テスト駆動開発」をPythonで書き直してみたシリーズです。過去の記事はこちらです。「テスト駆動開発」をPythonで書き直してみた - pyhaya’s diary「テスト駆動開発」をPythonで書き直してみた 2 - pyhaya’s diarypyhaya.hatenablog.comテスト駆動開発…

Djangoで家計簿のWebアプリケーションを作る 3 カテゴリー選択を可能にする

家計簿アプリの続きです。これからグラフを表示することを考えて、ユーザー入力欄に支出のカテゴリーを選択する欄を追加します。 開発環境 モデルにカテゴリーを追加する。 フォームを変更する ビューを変更する テンプレートを変更する データベースを更新…