2012-07-01から1ヶ月間の記事一覧

残響時間を求めるRのプログラム

R

今日はR言語がどのていど信号処理っぽい目的に使えるか試してみました。とは言ってもガリガリと信号処理をするわけではなく、簡単にフィルタがかけられて、結果がグラフにできればいいので、室内のインパルス応答から残響時間を求めるプログラムを作成してみ…

演習1.5

二つの数列の内積を計算する関数の作成。これは簡単。 ;;; Exercise 1.5 (defun dot-product (x y) (apply #'+ (mapcar #'* x y))) (dot-product '(10 20) '(3 4)) ;==> 110 模範解答には3つの方法(再帰、ループ、mapcar/apply)が載っていて、同じことをや…

演習1.4

リスト中に特定のアトムが含まれる数を数える関数を作る。 (defun count-anywhere (x lst) (cond ((null lst) 0) ((listp (first lst)) (+ (count-anywhere x (first lst)) (count-anywhere x (rest lst)))) (t (+ (if (eq x (first lst)) 1 0) (count-anywh…

演習1.3

リスト中に含まれるアトムの数を返す関数count-atomsを作る。 ;;; Exercise 1.3 (defun count-atoms (lst) (cond ((null lst) 0) ((listp (first lst)) (+ (count-atoms (first lst)) (count-atoms (rest lst)))) (t (+ 1 (count-atoms (rest lst)))))) と作…