2021-01-01から1年間の記事一覧
尤度推定のお勉強 【目次】 尤度と最尤推定量 尤度と確率 簡単な図解 参考 尤度と最尤推定量 最尤推定法は、標本から母集団のパラメータを点推定する方法(母集団の分布は既知)。 得られた標本を (独立同一分布に従う)、推定したいパラメータを とすると…
まとめ用。随時更新。 教師あり学習 最小二乗回帰(OLS:Ordinary Least Squares regression、線形回帰) ロジスティック回帰(Logistic regression) 四分位回帰(Quantile regression) サポートベクターマシーン(SVM: Support vector machine) 決定木(…
作成したHTMLテーブルを別のHTMLファイルに埋め込んで表示させたい!と思ったので、その方法をメモ。 HTMLの埋め込みは、iframe タグで実装できる。 <iframe src='パス/ファイル名.html'></iframe> 試しに前回記事で作ったHTMLテーブルを埋め込んでみる。 【VBA & HTML】ExcelのテーブルをHTML形式に変換…
Excelを開いて表を見るのは面倒だったりする。 (Excelの起動を待ったり、別作業でExcelを使っていたりするとき) そんなときブラウザで表形式データが見れたら便利だ、というモチベーションでExcelで作成したテーブルをHTMLに変換するプログラムを作ってみ…
久々にVBA。 R、Python、SAS ... なんでも良いが、 共有ロジックを外部ファンクションや外部マクロにしておいて、 パラメタを変えてぐるぐる回すことがある。 例えば、疾患名を変えて患者数を推移図にするなど。 そんなとき、スクリプトをいちいち作っている…
Kerasの勉強用にロジスティック回帰と同じ構造を作って実行してみる。 【目次】 基本の整理 使用データ Keras での試し書き(モデル作成) Keras での試し書き(バリデーションデータで評価) Keras での試し書き(テストデータで予測) 参考 基本の整理 ニ…
今回は Gradient Boosting Tree(勾配ブースティング木)を試してみる。 【目次】 Pythonでの実装コード SASでの実装コード SASでお試し(対象データ、データ加工) SASでお試し(モデル作成) SASでお試し(モデル評価) 参考 決定木を学習器としたアンサン…
今回はサポートベクターマシーンを試してみる。 Pythonでの実装コード SASでの実装コード SASでお試し(対象データ、データ加工) SASでお試し(モデル作成) SASでお試し(モデル評価) 参考 Pythonでの実装コード Pythonで簡単に実装できる。 #-- 線形SVM …
今回はランダムフォレストを試してみる。 Pythonでの実装コード SASでの実装コード SASでお試し(対象データ、データ加工) SASでお試し(モデル作成) SASでお試し(モデル評価) 参考 Pythonでの実装コード Pythonでは非常に簡単に実装できる。 from sklea…
前回 hpgenselect プロシジャで罰則付きロジスティック回帰を実行してみた。 【SAS】hpgenselect プロシジャ_罰則付きロジスティック回帰(LASSO) - こちにぃるの日記 目的変数が連続値の時のLASSO回帰をやってなかったのでまとめてみる。 ついでにElasticN…
特徴量選択でSTEPWISE法などのほか、LASSO(L1正則化)を視野に入れる人もいる(だろう)。 LASSOについては以前 Python の記事で触れた。 cochineal19.hatenablog.com 今回は「SASで使ったみたい」&「ロジスティック回帰で使ってみたい」という視点でまと…
地味に困ったのでメモ(きっと他にも困る人がいるはず)。 自分のPCからアップロード Work領域にインポート 参考 自分のPCからアップロード SASオンデマンド上で [サーバーファイルとフォルダ] > [odaws##-XXXX##] > [ファイル(ホーム)] を選択。 ツール…
GBDT(Gradient Boosting Decision Tree)を使ってみたかったのでメモ。 KaggleのTitanicデータを予測してみる。 前処理 XGBoost (eXtreme Gradient Boosting) LightGBM CatBoost 参考 scikit-learnに準拠した model.fit(データ) で記載。 あまりパラメタいじ…
Kaggleに登録してみたので備忘録を。 初心者ということもあり、まずは王道のタイタニックデータを使った分析をしてみた。 データの前処理 データはKaggle内にあり、TrainとTestにあらかじめ分けられている。 生存有無を予測する2値分類問題であり有名なデー…
executeの使い方の備忘録。 やりたいこと: 動的に生成したコードを実行したい。 call execute(コード) でいける。 data _null_; call execute("data a; a=1; run;"); run; マクロ変数を投入することもできる。 %let CODE1 = ' proc sql; create table a ( c…
文字列に関する記事はあまりなさそうだったので備忘録がてら。 個人メモで解説しないです。 やりたいこと: * 文字型 ⇒ 複数行を1行にまとめる。 * 数値型 ⇒ 累積値を計算する。 サンプルデータ data a; input a $ b; cards; AA 1 BB 2 CC 3 ; run; コード d…
k-means法(k-平均法)についてメモ。 【目次】 k-means法 k-means++法 エルボー法によるクラスタ数の推定 Pythonコード 参考 前回取り上げた「k-近傍法」とは異なるので注意。 【機械学習_Python】k-近傍法(k-NN) - こちにぃるの日記 k-means法 データの…
k-近傍法(k-nearest neighbor algorithm、k-NN)についてメモ。 同じような名前の「k-means法」とは異なるので注意。 【目次】 k-近傍法とは ミンコフスキー距離 pythonコード 参考 k-近傍法とは 特徴空間において、距離が近い既知データから未知データのク…
主成分分析(Principal Component Analysis、PCA)についてのメモ 【目次】 主成分分析とは 主成分軸の作り方 分散の最大化(ラグランジュの未定乗数法) 第1主成分を作る場合 第p主成分を作る場合 次元削減の基準 寄与率と累積寄与率 カイザー基準とスク…
SVM(サポートベクターマシーン)についてのメモ。 SVM(サポートベクターマシーン)とは 線形SVM(ハードマージン法とソフトマージン法) 主問題と双対問題 Pythonによる実行 非線形SVM(カーネルトリック) Pythonによる実行 Wineデータで実行 参考 SVM(…
決定木(Decision Tree)とランダムフォレスト(Random Forest)について。 【目次】 決定木(Decision Tree) 情報利得(Information gain) 不純度(Impurity Criterion) 分析例 決定木の応用 ランダムフォレスト(Random Forest) ランダムフォレストの…
Ridge回帰、Lasso回帰、Elastic Net回帰についてのメモ。 本記事は「機械学習」における回帰分析という視点が強め。 Ridge回帰等と区別するため、最小二乗法による一般的な回帰分析を最小二乗回帰分析(ordinary least square:OLS)と呼ぶ。 本記事では Pyt…
対応のあるデータを線でつないで増減をみるグラフを作りたくなったのでメモ。 サンプルデータ library(tidyverse) ads <- data.frame(id=(1:5) ,x=c(9,6,3,8,7) ,y=c(5,1,2,4,1) ,z=c(8,7,9,5,2)) ads2 <- data.frame() for (i in (2:4)) { ads2 <- union_al…
Pandas の pd.merge と pd.concat の使い方の備忘録。 merge 2つのデータフレームを結合する。横結合(join)に対応。 SQLで使われる内部結合(inner join)、外部結合(outer join)、左結合(left join)、右結合(right join)と同じ機能を一通り扱える。…
PandasのDataFrame型とSeries型の備忘録 サンプルデータ import pandas as pd group1 = [4, 9, 10, 11, 12, 13, 13, 15, 18, 18, 20] group2 = [16, 16, 17, 19, 19, 22, 22, 23, 25] DataFrame型 DataFrame(データフレーム)型は表(テーブル)形式の2次…
クラスを試してみる。 クラス、インスタンス、インヘリタンスの定義 Pythonでの実装(クラス定義、インスタンス化) Pythonでの実装(継承) クラス、インスタンス、インヘリタンスの定義 ・クラス(class): 設計図と言われる。このクラスから実体(インス…
関数は「 def 関数名 (引数名) 」とし、インデントを下げてコードを書く。 戻り値は「return 変数名」と書く。なくても良い。 def def_test1(i, j): x = i + j return x 実行は関数名(引数名)と書く。 val1 = def_test1(1, 2) print(val1) -- out -- 3 も…
Pythonの基礎。 条件分岐やループ処理について。 if 文 if 文は他の言語と大体同じ。ただし、else if は elif と書く。 a=1 if a==0: print(0) elif a==1: print(1) else: print(2) while 文 while 文は特記なし。よくある形。 cnt=3 while cnt != 0: print(…
Pythonを初めるきっかけができたので、ちょくちょくPythonについて取り上げたい。 リスト型と辞書型について 元々SAS、SQL、VBAを中心に使っていたので、Rを使い始めたときにリスト型の概念に初めて触れた。 配列(Array)っぽいと言えばその通りなので特に…
生存時間解析ではハザード関数、生存関数など色々な関数が出てくるので関係性をメモ。頭の整理。 離散値の場合 確率密度関数 死亡関数 生存関数 ハザード関数 累積ハザード関数 (イメージ図) * 縦軸が確率密度関数 f (T)、横軸が時間 T * 死亡関数 F(t)=…