2017-03-01から1ヶ月間の記事一覧

配列の先頭または最後尾から新しい配列を作るtakeとdropを使う。

Rubyの配列便利メソッドには、指定した個数分だけ配列の先頭または最後尾から要素を取り出してくれるtakeとdropというものがある。 a = [1, 2, 3, 4, 5, 6] p a.take(3) # [1, 2, 3] p a.drop(3) # [4, 5, 6] 配列に対してtakeを使用すると、先頭から引数の…

配列の先頭の要素を操作するarray_shiftとarray_unshiftを使う。

php

配列に対して先頭(インデックス = 0)に対して値を取り出したり追加する時、PHPではarray_shiftとarray_unshiftを使用する。 2 [1] => 3) print_r($b); // 1 array_unshift($a, 4); print_r($a); // Array([0] => 2 [1] => 3 [1] => 3) array_shiftを実行…

Array.reduceを使用して配列内の要素を順番に取り出しながら処理する。

javascriptの配列には、要素を順番に見ながら一律に同じ処理を繰り返すreduceというメソッドが実装されている。 (参考: Array.prototype.reduce() - JavaScript | MDN) var a = [1, 2, 3, 4, 5]; var sum = a.reduce(function(x, y) {return x + y;}); con…

array_intersectで配列の要素が別の配列にも含まれているか調べる。

php

ちょっとおもしろい関数だが、特定の配列に含まれいる要素が他の配列にも含まれているかを確かめるarray_intersectという関数がphpにある。 (参考: PHP: array_intersect - Manual) 1, 2, 3, 4, 5]; $b = ["b" => 1, 3, 5, 7, 9]; $result = array_inters…

array_fillを使って配列を初期化する。

php

PHPにおいて特定の値で埋められた配列を作成する際には、array_fillが利用できる。 ([0] => 1, [1] => 1, [2] => 1, [3] => 1, [4] => 1) $b = array_fill(3, 5, 2); print_r($b); // => ([3] => 2, [4] => 2, [5] => 2, [6] => 2, [7] => 2) 第一引数に始…

特定の文字の上にふりがなを表示する。

htmlでwebページ上の文字列の上にふりがなを表示するときは、ruby要素をrt要素を使用する。 <html><body> <ruby>本日<rt>ほんじつ</rt></ruby>は<ruby>晴天<rt>せいてん</rt></ruby>なり。 </body></html> これをhtmlファイルに書き込んで保存、ブラウザで確認すると「本日」と「晴天」の上にふりがなが表示されている。 今まであま…

ウルフオブウォールストリートを見た。

プライムビデオで。 金融関係の映画を引き続き見ていて、おすすめされたので見てみた。 内容は、実際にウォールストリートで働いていた元金融関係者が出版した自伝を題材にした映画。 かなり破天荒かつドラマチックな人生を送った一人のディーラーの栄枯盛衰…

一時保存用フォルダに一意な名称のファイルを作成する。

php

生存期間の短い一時的なファイルを作成する場合、phpだと以下のようにすると所定の一時ファイル保存用フォルダに一意な名前の付いたファイルを置くことができる。

配列を簡単に操作できるarray_mapを使ってみる。

php

配列に対して一律に処理を行い、それらの結果を配列で受け取る。 こんなことがarray_map関数を使うことで実現できる。(参考: PHP: array_map - Manual) Array // ( // [0] => 1 // [1] => 4 // [2] => 9 // ) 「1, 2, 3」という値の入った配列に対して、…

Pythonistaからツイートする。

Pythonistaからいろいろツイートするアプリができたら楽しいだろうなと考えて調べてみたところ、予想以上に簡単に実装することができた。 まず、前提条件としてiOS側にTwitterアカウントを1つ以上認証させておく必要がある。 Pythonistaのtwitterモジュール…

選択カラムに対する切り上げを実装する。

MySQLで切り上げをしようと思う場合、ちょっと面倒なことが起こる。 というのも、MySQLには四捨五入と切り捨てのメソッドはあるが、切り上げは標準では実装されていないから。 そこで、足し算をして繰り上げたものを切り捨てて繰り上げを実現する、という手…

パーセプトロンとAdalineの違いについて。

Python機械学習プログラミングを読んでいて混乱したので調べてみた。 結論から言うと、この両者の違いは「活性化関数」と「学習」の違いだということ。 まず、パーセプトロンについて。 こちらは活性化関数にステップ関数(ヘビサイド関数)が用いられる。 …

「ウォール・ストリート」を見た。

プライムビデオで。 最近、金融関連の映画にハマっていて、おすすめリストに出てきたので気になって見てみた。 内容としては、リーマンショック前後のアメリカを舞台に、証券会社に務める若者と彼周囲で起こる嘘と疑惑にまみれたお金にまつわる話のフィクシ…

「インサイド・ジョブ」を見た。

プライムビデオで映画「インサイド・ジョブ」を見たので感想。 内容は、サブプライムローン問題に関連して、当時の関係者にインタビューをしながら実際に起っていたこと・金融業界や政府が何をしていたかを解説している映画。 とても良かった。 まず、解説が…

mb_internal_encodingが使えない時の対応

php

今時アルゴリズムPHPプログラミングの写経をやっていて、mb_internal_encoding()という関数が定義されていないというエラーが発生した。 調べてみたところ、mbstringというPHPの外部モジュールが必要だが、上記書籍で説明されている仮想環境では標準では入っ…

each_with_objectを使ってみる

数学パズルで出てきた。 定義済みの配列の中身をループしつつ、別の配列を渡してそれをループ内でも活用できるという関数。(参考: injectとeach_with_objectって何が違うのさ?) ary = [["milk", 100], ["banana", 30], ["apple", 50]] result = ary.each_wi…

イミテーションゲームを見た

プライムビデオで。 以前から気になっていたので、いい機会だし見てみた。 コンピュータの基礎を築いた「アラン・チューリング」を題材にしたノンフィクション映画。 第二次世界大戦時、ドイツの高性能な暗号化機械「エニグマ」を解読するためにイギリスの暗…

preztoのアンインストール

zsh

これまでターミナル環境はzsh + preztoを使用してきた。 preztoはzsh用のフレームワークで、それなりの環境を手軽に提供してくれて機能追加を用意にしてくれる、かつ軽量という優れもの。 ただ、正直飽きてきたのと実は使ってない機能たくさんあるんじゃない…