1. ラムダ式内での変数の束縛
例えば、
A = (lambda x = input() : lambda y = f(x) : g(x,y))()()
などとすると、input()の値を使った式(例えばlen(x)とか)を、すぐに同式内の関数g(x,y)で使えるようになる。
これはもちろん、
A = (lambda x = input() : lambda y = f(x) : lambda z = g(x,y) : lambda w = h(x,y,z) ... ()()()
などと連鎖できる。
xに入れるのは、input()に限らず、適当に乱数を生成する式とかでもいいので、見た目の割には使える。
ちなみに、後ろの()内で変数を束縛してやるやり方だと上手くいかない。

2. ジェネレータの値でラムダ式の変数を束縛する
ジェネレータの値は使いきりなので、ループ内でジェネレータの同じ値を何回か使うとき、例えば、
gen = 何かジェネレータ
として、
for _ in range(n):
    A = (lambda x = next(gen): [f(x, i) for i in range(m)])()
のようにラムダ式内で代入してしまうと1行ですっきり書ける。

3. ラムダ式内での再帰と皆大好きフィボナッチ数列
fibonacchi = lambda n: (lambda fib: fib(fib, n))(lambda fib, n: fib(fib, n-1) + [fib(fib, n-1)[n-1] + fib(fib, n-1)(n) ] if n > 0 else [0, 1])
のようにラムダ式内でも、再帰ができる。
ちなみに、めちゃくちゃ重いので使う意味は全く無い。
フィボナッチ数列が欲しいだけなら、
from sympy import var, series
var('x')
series(x / (1 - x - x**2))
としてやれば、級数展開した係数にフィボナッチ数列が出てくるし……

目標はこれ

nn2
に1/1000を代入して、1.002003004005006007008...を並べること。
これには、自然数を
f(0)=1, f(k+1)=f(k)+1 と定義して、
通常型母関数
nn3
に埋め込む。
つまり、
nn4
として、この左辺は、
nn5
となり、右辺は、あとで|z|<1の値を代入することが決まっているので、
nn6
より、
nn7
であるから、両辺を整理して、
nn8
これをsympyのseriesで100次の項まで級数展開すると、
nn2
となる。
なので、元のF(z)にz=1/1000などと代入すれば、
nn10
などという数値が得られることがわかる(最後の1は、6で四捨五入した値の1)ので、あとは適当に型を指定するか何かで100が出る桁まで表示させればよい。
要は、(1000/999)^2を計算してるのと同じこと。

☆ポイント
・需要曲線とは何か?
・需要曲線の合成とシフト

◎需要曲線
 一般に合理的な消費者は、安い価格のとき、多くの財を買おうとするだろう。
 そのような価格に応じた需要量の変化をグラフ化したものが、需要曲線である。
 まず、個人の場合の価格と需要量の関係について、ある財の需要量X価格Yの間に次のような組み合わせがあるとする。
df1
これをグラフ化するだけで、個人の場合の需要曲線が出来上がる。

graph4
 ほとんどの場合、財が安くなればなるほど、より多くの財を購入しようとするため、需要曲線は右下がりのグラフになる。
 ちなみに、本筋から外れた話をすると、これは単純にmatplotlibのplot()で点を繋げただけだが、どうしても滑らかな曲線でグラフを描きたいという人には、scipyのinterpolateで補完することをオススメする。

◎需要曲線の合成
 個人の場合の需要曲線は表現できたが、2人以上の経済の場合はどうなるだろうか。
 まず、上の例の個人に加えて、次のような需要曲線を持つ別の個人がいるとしよう。
df2
graph5
 この2人からなる経済の場合、単純にそれぞれの価格での需要量を足し合わせればよい。
df3
graph6
 つまり、複数の主体からなる経済の場合には、それぞれの価格について、需要量の和である総需要量を求めればよいのである。
 このように、総需要量を横軸に取った需要曲線を、市場需要曲線と呼び、個人の需要曲線がほとんどの場合で右下がりであるから、ほとんどの市場需要曲線も右下がりになる。
 例えば、ある財に対して消費税が課される場合、それは財の価格上昇と等しいから、需要曲線上では左側に消費税率分移動することになる。

◎需要曲線のシフト
 ある1本の需要曲線上の点で表せるのは、価格以外の条件が一定の場合のみであり、他の条件が変化してしまえば、需要曲線そのものが移動することになる。
 例えば、人々の平均所得が増加した場合、それぞれの価格における購入量も増加するから、需要曲線は右側にシフトすることになる。
 このような需要曲線のシフトが起こる例を他にもいくつか挙げてみよう。
1. 代替財や補完財の価格変動:米とパンのように、両方が同じような欲求を満たすと考えられるような2つの財を代替財と呼び、片方の価格が高くなると、もう一方の需要が高くなるという関係にある。
 パンとジャムのように、一方の価格が高くなれば、もう一方の需要が低くなるという関係にあれば、それら2つの財を補完財と呼ぶ。
2. 人々の嗜好の変化:2019年に起こったタピオカドリンクの流行のように、財の流行は需要を増大させる。
3. 人口構成の変化:日本のように少子高齢化が進めば、ベビー用品の需要はだんだんと低下していくだろう。
 余談だが、2のような心理的な変化に関するものにはサイコグラフィック~という名前が、3のような人口構成の変化に関するものにはデモグラフィック~という名前が付くことが多い。

☆まとめ
・財の価格以外の条件を一定にしたときの、それぞれの価格に対する需要量をグラフ化したものを、需要曲線と呼ぶ。
・需要曲線の合成は、需要量の足し算になる。
・需要曲線がシフトする要因には、代替財や補完財の価格変動、心理学的効果、人口統計学的効果などがある。

↑このページのトップヘ