黒猫ほむほむ

BASIC, FORTRAN, Cなどを操っていた、リタイアしたプログラマー。 HTM…

黒猫ほむほむ

BASIC, FORTRAN, Cなどを操っていた、リタイアしたプログラマー。 HTML,CSS,JavaScript,PHP,MySQLを学習したが収入にはつながらず。 最近はPython,C#,SQLiteあたりに興味を持っている。

最近の記事

GitHub Pages

GitHub Pages は、GitHub のリポジトリから HTML、CSS、および JavaScript ファイル を直接取得し、任意でビルドプロセスを通じてファイルを実行し、ウェブサイトを公開できる静的なサイトホスティングサービスです。 GitHub Pagesサイトには3つの種類があります。プロジェクト、ユーザ、そして Organization です。ユーザサイトを公開するには、<username>.github.io という名前のユーザアカウントが所有するリポジト

    • Google Sites

      気軽にWebサイトを作って公開できるようでしたので、軽く作ってみました。 どのような内容にしたらいいのか、方針がわからないので、 を読んで、HTMLを編集して作っているページをベースにして、少しづつ拡張していこうかと思います。 いいと思った点は、スマートフォン、タブレット、PCでの表示が確認できること。すなわち、レスポンシブウェブデザイン(デスクトップ版のウェブページを閲覧者の画面サイズまたはウェブブラウザに応じて表示できるようにする。加えて、1つのウェブサイトで多様な

      • Chromebookを買ってみた

        2021年2月に、LenovoのIdeaPad Duet Chromebookを購入しました。 Chrome OS搭載のPCは初めてになります。 キーボードを取り外せばタブレットとして使用できます。 画面タッチでの操作も可能です。 電源口はUSB-Cです。商品に付属しているACアダプター、USBケーブルは存在を確認するのみで使わず、AndroidスマートフォンであるGoogle Pixel 3aのUSB-Cケーブルを使用しました。電源が入りました。 初期画面から…

        • 総当たり戦アルゴリズムをPythonで書いてみる(2)

          前回、総当たり戦でのすべてのカードを書き出すコードを書いてみたが、一部、defを使った関数で書き換えてみる。 print("*** Round Robin ***")members = int(input("number of member :"))print(members)n = membersw = 1x = [i for i in range(1, n, 2)]y = [i for i in range(2, n+1, 2)]def first_card():

          総当たり戦アルゴリズムをPythonで書いてみる(1)

          著者はボウリングにおけるリーグ戦に参加経験があり、毎週1名との対戦となっていて、どのような仕組みで全員と対戦しているのかに興味を持った。 トーナメント戦での総対戦数は、参加人数をnとすると(n-1)戦。総当たり戦での対戦数はn(n-1)/2戦、という知識まではあった。 「総当たり戦」で検索してみると、以下のような、Kirkmanによる、円を使用した試合の組み合わせを決めるアルゴリズムがあるようだ。  図形をそのまま使うのは難しいので、プログラム化しやすい図などないものか

          総当たり戦アルゴリズムをPythonで書いてみる(1)

          Python 線やマーカーの設定

          線のスタイル作成するグラフの線やマーカーのスタイルは、各作図メソッドの引数から設定できる。 同じ座標系にグラフを重ねて描いていく場合、線は自動的に色分けされる。線の色は設定されたカラーサイクルに従って循環する。カラーサイクルはplt.rcParams['axes.prop_cycle']から確認、設定できる。デフォルトではTableauというツールで開発された10色のカラーパレットが使われている。線の色は主要な色(例:'k')や、カラーサイクルのインデックス(例:'C1')

          Python 線やマーカーの設定

          Python 複数のグラフを並べる

          格子状にグラフを並べる 単純に複数のグラフを並べたい場合にはplt.subplots関数を使用する。この関数に並べたいグラフの行数と列数を指定すると、それに合わせてAxesが作成される。Axesはグラフの配置に合わせてNumPyの配列にまとめられており、各Axesにはインデキシングでアクセスできる。 ラベルやタイトルが描画領域の外に出てしまう場合などに、グラフの位置や大きさを調整したいことがある。plt.subplots関数にconstrained_layout=Trueか

          Python 複数のグラフを並べる

          Python グラフ作成の基礎

          基本的な2次元グラフ MatplotlibのグラフはFigureオブジェクトと、その中にある1つ以上のAxesオブジェクトで構成されている。Figureは図全体の描画領域で、Axesは1つのグラフを描く領域(座標系)を表す。複数のグラフを並べるときは、1つのFigureの中に複数のAxesが含まれる構成になる。 Figureはplt.figure関数などで作成できる。 画像の解像度はdpi引数で設定できる。DPI(dots per inch)は1インチ当たりのドット数のこ

          Python グラフ作成の基礎

          Python Matplotlibの準備

          Matplotlibとは データの持つ特徴を観察するため、グラフ(プロット)を作成することは非常に重要な作業である。MatplotlibはPythonでグラフを作成するためのライブラリである。機能の多さや作成できるグラフの品質から、Pythonでのグラフ描画ライブラリの定番となっている。 Matplotlibのインポート Matplotlibは多くのモジュールで構成されている。グラフを作成するための関数はmatplotlib.pyplotmpジュールにまとめられており、これ

          Python Matplotlibの準備

          Scratchではじめる機械学習

          久々にScratchの記事。 Pythonの科学技術計算にかまけていて、Scratchを放置していた。Djangoも試しているし、AWSにも足を突っ込んだし。GitHubにいくつかリポジトリを作成したし。 Scratchで動かして試しながら、ゆっくり進めて行きたい。 一部の章では、WebブラウザでのScratchで試すことができず、カスタマイズされたScratchから利用できる。少々面倒。 遺伝的アルゴリズムは遠い昔に仕組みを作ったことがあったな〜知らんけど。 この

          Scratchではじめる機械学習

          Python 配列の基本計算

          基本的な算術演算 算術演算子による配列の演算では、配列が同じ形状の場合は対応する要素ごとに演算が行われる。演算の結果、要素が浮動小数点数になる場合には、返される配列のデータ型は浮動小数点数型になる。 演算する2つの配列の形状が異なる場合は、形状の小さい方が大きい方の配列の形状に一致するように拡大されて計算される。この処理はブロードキャスティングと呼ばれ、プログラムの内部で自動的に行われる。 同様に、形状が(1, 2)と(2, 1)の配列の演算では、各配列が(2, 2)の配

          Python 配列の基本計算

          Python 配列の形状や大きさの変更

          形状の変更 配列の形状を変更したい場合はnp.reshape関数か、配列のreshapeメソッドを使用する。これらが作成する配列はビューである。新しく作る配列の形状を引数に指定する。 配列の次元を拡張したい場合はreshapeメソッドを使う以外にも方法がある。[:, np.newaxis]のように、次元を追加したい位置にnp.newaxisを記述してスライシングを行う。 配列の結合 NumPyには配列を結合するための様々な関数が用意されている。それらの中ではvstack関

          Python 配列の形状や大きさの変更

          Python 要素の参照

          インデキシングとスライシング 1次元配列はシーケンス型と同じ書式のインデキシングとスライシングで要素を参照できる。 多次元配列の要素を参照する場合は、各次元についてのインデックスやスライスを,で区切って記述する。 スライシングでは特定の行や列を参照できる。参照した配列が1行か1列である場合、結果は1次元配列で返される。 ビューとコピー 配列の中身をコピーしたい場合や、インデキシング、スライシングを行う際に意識すべきことがある。NumPyでは元の配列とメモリを共有する配

          Python 要素の参照

          Python 配列の作成

          array関数 リストなどのシーケンス型をnp.array関数に渡すとndarray型のオブジェクトが作られる。NumPyに関する文脈では、このndarrayを配列と呼ぶ。 配列には様々な属性がある。例えば、配列の次元をndim属性から確認できる。 また、配列の形状(各軸方向の大きさ)はshape関数から参照できる。 2次元以上の配列をarray関数で作成する方法は2つある。1つはキーワード引数ndimを指定すること。2次元配列ではshape属性で配列の形状を確認すると、

          Python 配列の作成

          NumPyによる配列計算

          NumPyとはNumPyはPythonに置ける科学技術計算の基盤となるパッケージである。NumPyの提供する多次元オブジェクト(ndarray)を用いることで、大規模なデータの数値計算を高速に行うことができる。また、NumPyにはndarrayに対する基本演算機能や標準的な数学関数のほか、線形代数や高速フーリエ変換などに関連する様々な関数が用意されている。 NumPyのインポート最初にNumPyをインポートする。NumPyは慣例的にnpという名前でインポートされる。 im

          NumPyによる配列計算

          Python Excelファイルを扱う

          MicrosoftのOfficeスイートに含まれるExcelは、世界で最も広く使われている表計算ソフト。PythonでExcelファイルの入出力を行う方法を解説する。 Google Driveを使用するためにマウントする。 Excelファイルを扱うライブラリPythonの標準の機能ではExcelファイルをそのまま扱うことは出来ない。ExcelファイルにはXLS形式(.xlsファイル)とOOXML形式(.xlsx/.xlsmファイル)があり、以下のライブラリを使って読み書き

          Python Excelファイルを扱う