2012-01-01から1年間の記事一覧
The GitHub poweredby Agile渋谷にこっそりとお邪魔しています。タグは#Agile渋谷です。
社会ネットワーク分析勉強会 #1にお邪魔しています。タグは#TokyoSNAです。Niftyさんのエンジニアサポートという制度で行われているようです。Nifty++
概説微分積分の問題4.19の解答。台形公式は定積分を台形で近似するもの。台形の公式を使って面積を出して整理すればすぐ出てくる。 def trapezoidal(f, range_, n): a, b = range_ result = f(a) + f(b) for i in xrange(1, n): result += f(a + (b - a) * i…
概説微分積分の問題4.13の解答。公式をそのまんま利用。 import sympy as sym from sympy.utilities import lambdify import scipy as sp import scipy.integrate def surface_of_revolution(y, range_): dy = sym.diff(y, x) y_lambda = lambdify(x, y) dy_…
概説微分積分の問題4.7と4.8の解答。手計算に飽きたので現実逃避。4.7 は sympy を使う。理論的に解けるのはわかってるけども、手計算じゃもはや無理。7番目の問題にやたら時間がかかったんだけど、辛かったのはどの辺だろ。セオリー的にはt = tan(x/2)と置…
昨夜サボってたグラフの表示。sympy の関数を numpy に持ち込むのに sympy.lambdify を使った。 import sympy as sym from sympy.abc import x import pylab import numpy as np def graph(f, range, nums=100): vf = np.vectorize(f) t = np.linspace(range…
概説微分積分の問題3.19の解答。exp(0.5)、cos(1)、log(1.1)を小数第二位まで求める問題。ラグランジュの剰余項Rn(x)の絶対値を評価する必要があるのだけど、評価方法を経験則的にやってるので一般化できてない。 import math def trunc(x): if x > 0: retur…
概説微分積分の問題3.21の解答。x^3 + x^2 - 3 = 0 と x^4 - x - 1 = 0 を解く問題。 def f1(x): return float(x) ** 3 + float(x) ** 2 - 3 def df1(x): return 3. * float(x) ** 2 + 2. * x def f2(x): return float(x) ** 4 - float(x) - 1 def df2(x): r…
概説微分積分の問題3.16から3.18までの解答。ソフト使って解く問題だったのでSymPyを使ってみた。機能を探すのにかなり手間取ったけど、数式を代数的に扱えて面白い。∞はooだったりする。SymPyとnumpyとscipyとの関連性はまだよくわからず。ただしPlotはpygl…
正しいのになぜかみんなが「変だ!」という問題: x,y,zを自然数とする。このとき、x=3ならばy=5になる。あるいは、y=5ならばz=8になる。 @noricoco これは良問!さすが @noricoco 先生 > RT @hyuki Perlで解答するとこうだろうなあ。 perl -e 'for my $x(0,…
1年前に挫折したわけですが、一応もう一回来てみました。適当にメモします(キックオフなので打ち合わせ中心だと思いますが)。 ご挨拶 / @naoya_t さん 今日はエクストリームリーディングします 自己紹介タイム 今後は幹事役を分散したい 会場安いとことか募…
ええ、そうなの!? と思ったので深追いしてみた。 逆FizzBuzzって、オートマトンなので正規表現を使うと楽に出来るはず。Perl で 逆FizzBuzz 状態遷移図を書いてみるとこう。ほんとは1〜15まで全て状態を書いて、ε遷移を加えてεの長さも1とした最少の単語を…
Akasaka.scala 36に途中から参加してます。タグは#akskscalaです。 Scala言語仕様読書会8 / @seratch さん 6章の後半。 前置、中置、後置演算 :が右結合なのはなぜ? → ::のため 代入演算子 play2.0について / @seratch さん play コマンド sbtのラッパー (s…
10000本のクジにx本の当たりが入っているとする。ここから100本のクジを引いた結果を元に、当たりクジが何本入っているか区間推定したい。非復元抽出なので厳密にいえば100本中の当たりクジの本数yは超幾何分布に従うが、抽出する数と比較して全体数が大きい…
非復元抽出とは、有限個のものから複数個を抽出する際に、抽出したものを戻さずに2回目以降の抽出を行うこと。こうすると二回目以降の試行の確率はだんだんと変化していくことになる。復元抽出する場合は二項分布となるが、非復元抽出をすると超幾何分布とな…
二項分布は試行回数が多くなると階乗周りの計算量が多くなる。一回の事象の発生確率pが十分に小さければ、ポアソン分布で近似ができる。例えば、5枚の硬貨を投げてすべて表がでるかどうかを64回やったときの分布を二項分布とポアソン分布で比較すると、以下…
こちらはモンティ・ホール問題より有名だと思う。 ある監獄にA、B、Cという3人の囚人がいて、それぞれ独房に入れられている。罪状はいずれも似たりよったりで、近々3人まとめて処刑される予定になっている。ところが恩赦が出て3人のうち1人だけ助かることに…
3囚人問題は有名だけど、こちらを見かけたのは恥ずかしながら初めて。 「プレイヤーの前に3つのドアがあって、1つのドアの後ろには景品の新車が、2つのドアの後ろにはヤギ(はずれを意味する)がいる。プレイヤーは新車のドアを当てると新車がもらえる。プレイ…
Akasaka.scala 35に参加してます。タグは#akskscalaです。ustreamはこちら。一度でも参加者したことがある方はgithubのOrganizationに入っているので、適当にcommitして下さいとのこと。 Scala言語仕様読書会8 / @seratch さん 今日は6章です。 6.1 → Expres…
giter8-plugin を使って sbt g8-testしたときに、 sbt.ResolveException: unresolved dependency: org.scala-tools.sbt#scripted-sbt_2.9.1;0.11.2: not foundとか言われるときは build.sbt に resolvers += Resolver.url("Typesafe repository", url("http:…
Akasaka.scala 34に参加してます。タグは#akskscalaです。 Scala言語仕様読書会7 / @seratch さん 詳細はこちら。 前回の復習 メンバーマッチング 事前定義 修飾子 2回出てはいけない (a, b)のような定義に先行する場合は両方に private → コンパニオンから…
今日が今勤めている会社の最終出社日となりました。 思えば6年前、次期システムをPHPで開発するつもりだと話していた当時のスタッフにPerlを使うよう誑かしたアドバイスしたのが始まりで、まさかここまで付き合いが長くなるとは思ってもいませんでした。 在…
Unit周りでハマったのでメモ。まず、() => Any という型はあるが、()という型はない。 scala> def id(x: () => Int): () => Int = x id: (x: () => Int)() => Int scala> def id(x: ()): () = x <console>:1: error: '=>' expected but ')' found. def id(x: ()): () </console>…
valは定数、varは変数、defはコード、というのが大まかな理解になる。これらは名前空間を共有しているので、定数、変数、コードに同じ名前をつけることはできない。ただし、JSやPythonのように単純にフィールドにメソッドオブジェクトが入っていると思うとハ…
ハマったので未来の自分のためにメモ書きを残しつつ、今年もよろしくお願い致しますm(_ _)m。 Test::LeakTraceの特性 Test::LeakTrace で、以下のテストは通る。 my %x; no_leaks_ok { $x{x} = undef }; しかし以下のテストは通らない。 my @x; no_leaks_ok …