Python

Sponsored
Matplotlib

matplotlibで3次元空間に2次元ヒストグラムを表示する方法

この記事では、PythonのMatplotlibを用いて、XとYの2種類の値をとる2次元変数(X, Y)についての2次元ヒストグラムを、3次元空間に立体的に表示する方法を説明する。その方法を用いれば、この記事のアイキャッチ画像のようなグラフ...
Python

部分従属プロットを、sklearnのあらゆる分類器に実装する(partial dependence plot)

部分従属プロット(partial dependence plot) 部分従属プロット(partial dependence plot)とは、分類器が学習を行った際に、どの変数がどの程度クラス分類に影響しているかを視覚的に表す方法である(詳細...
Python

Pythonのinput関数で、正しい入力があるまで何度も再入力させる方法

Pythonのinput関数を用いたプログラムをユーザーに使用してもらった時、必ずしもユーザーが製作者の意図した入力を行ってくれるとは限らない。 そうしてエラーが出る度にプログラムが終了していたのではあまりに不便であるため、異常な入力があっ...
Python

六角形マップ(HEX)のプログラミング【解説編】

この記事では、六角形マップ(HEX)のプログラミング【実例編】で提示したコードの解説を通して、六角形マップ(HEX)のプログラミングについての考え方について述べる。 2次元配列によるHEXの表現 今回のコードでは、六角形マップを表現するため...
Python

六角形マップ(HEX)のプログラミング【実例編】

戦略SLGなどで見られる六角形のマップは、よくある四角形のマップに比べて見た目が格好いいだけではなく、ゲームの戦略性を高めてくれる。しかし、この六角形のマップをプログラミングで実装するとなると、専用のデータ型がないため、かなり頭を悩ます作業...
Python

シーザー暗号とは?Pythonによる生成・解読器の実装【辞書攻撃】

シーザー暗号(Caesar cipher)は、もっともシンプルかつ原始的な暗号です。この記事では、シーザー暗号の仕組みについて解説し、Python言語を使って生成・解読器を実装します。その際、辞書を活用して自動的に暗号を解く機能(辞書攻撃)も導入します。
Python

pythonで英単語辞書を作成する方法【フリー辞書ファイル】

単語リストは機械学習や暗号解読のために必須のデータセットです。Pythonの文字列処理関数や正規表現を用いると、文章から簡単に単語を抽出することができます。この記事では、著名な英文学24作品に登場する全英単語を抽出する方法を解説します。また、完成した英単語辞書をダウンロードすることもできます。
Python

Pythonで二重振り子を実装し、シミュレーションをする方法

二重振り子は、1つの振り子の先にもう1つ振り子を連結したものです。1つの振り子は周期Tの規則的な運動をしますが、二重振り子は非周期的で極めて複雑な運動をすることが知られています。この記事では、Pythonで二重振り子を実装し、シミュレーションの結果生じるカオスを観察する方法について解説します。
Python

エニグマ(Enigma)暗号変換器の仕組みとPythonによる実装

第二次世界大戦でナチス・ドイツにより用いられ、解読困難なことで有名なエニグマ(Enigma)暗号変換器をPythonで再現しました。この記事では、エニグマ暗号について簡単に紹介し、Pythonコードを用いて暗号変換を行う方法を解説します。
Python

“The Separation Plot” in Python

Pythonで作成したプログラムに「The Separation Plot」を実装するコードを作成した。 ついでに「Brier Scores」と「Expected PCP(ePCP)」も導入できるようにした。 Brier Scores Ex...