SAS
はじめに 検索してもでてこなかったので、緯度経度からその点が含まれる3次メッシュ(基準地域メッシュ)コードを算出する関数をSASで作成しました。(僕が知らないだけでもしかしたら既にあるのかもしれませんが。) 地域メッシュコードの概要については統計局…
SASによるジオコーディングはアメリカやカナダのデータは標準装備されていて非常にやりやすいのですが、日本のデータでやろうとするとshapfileから用意しなければならず、非常にやりづらいです。一応、動くものが作れたので備忘録としてメモ。 shapefile シ…
タイトル通りです。 SASとRと両方使う人でないと特に意識する場面はないと思いますが、どちらも記法が酷似しているので両方使う人は気をつけてないとミスります。 Rのdplyr::rename dplyr::rename(新しい変数名=古い変数名) です。
とりあえず備忘録的にコードと出力だけ。 細かいプロシージャの仕様は後ほど追記します。 コードと出力
はじめに 今回は小ネタです。 みなさんは SAS コードを何で書いてますか? Atom? Sublime Text? Vim? Emacs? 僕は Emacs で書いてますが、エディタの好みは人それぞれなので、好きな物を使えばいいと思います。 さて、Emacs で SAS を編集する際に便利なのが…
前置き 僕のメイン言語はSASとRなので、この二つを連携させたり行き来したりということがどうしても発生します。*1 そんなわけで、以前SASの中でRを動かす方法を書きました。 SAS/IML StudioでRを使う - データ解析備忘録 SAS/STATでもPROC IMLしてRを使う -…
SASの繰り返しのマクロである%doループでは%do i=1 %to 10のように、整数値でしかループさせることができません。 今回は、整数以外でもループさせたいときの対処法をまとめてみます。 飛び飛びの値 飛び飛びの値とは、%do i=1 , 2, 3, 5のように整数が連続…
備忘録。SASで文字列を入力したいとき、''(シングルクオーテーション)か""(ダブルクオーテーション)かはあまり気にせずに使って良いのですが、マクロ変数を使いたいときはちょっと変わってきます。例えば、以下のような適当なマクロを作って呼び出したいとき…
普通のSQLを書くとき、データが巨大だと一部をちら見するためにLIMIT 1000と書いて一部だけを抽出したりします。 SASのPROC SQLではSQLの構文がほぼそのまま使えて便利なのですが、LIMIT句はどうやら使えないようです。 代わりにOUTOBS=1000で指定すれば良い…
よく使いそうなSASのショートカットキーをまとめました。 製品版でしか試してないのでSAS雲丹でも同じかはわかりません。 他のソフトと同じもの キー 機能 Ctrl+C コピー Ctrl+X 切り取り Ctrl+V ペースト Ctrl+A 全選択 Ctrl+S 上書き保存 Ctrl+Shift+S 新…
sas7bdatとは何か sas7bdatというファイル形式があります。これは一言で言えばSASで作ったデータのファイル形式です。 このファイル形式はSASのいろいろなアウトプットを格納できて、例えば回帰分析後のパラメーター推定値や予測値、ベイズ推定のMCMCであれ…
タイトルの通りSASでライブラリ内のデータセットを全て削除する方法です。 Rでいうと rm(list=ls()) にあたるものですが、SASだとライブラリという概念がある点で異なります。 特にライブラリ名を指定してない時はWORKライブラリが割り当てられています。 例…
SASでデータ集計をやらなきゃいけなくなって、SAS初心者*1の僕がいろいろ調べた結果、SQLプロシージャがよさそう。使ってみた結果、とても便利だということが分かったので使い方を自分用にメモ。 SQL文がそのまま使える MySQLなり、SQLiteなり、HiveQLやPres…
IMLで作った行列をSASデータセットとして使いたいとき。 SASデータセットをIMLに取り込んで行列にしたいとき。 IMLで作った行列をSASデータセットにする 必要なコマンドは create A var { 取り出したい変数名 }; /*Aは作りたいデータセット名*/ append; clos…
統計学の「基本の「き」」である重回帰を復習しながらSAS/IMLで行列で実装していこうと思います。 理論 重回帰を式で表すと、 となります。 これを行列で表すと 要素を書き下すと となります。
前回の記事でSAS/STATでもRを使えることを書きました。 y-mattu.hatenablog.com今回はSAS上で動かしたRのデータをSASに渡す方法です。簡単です。 /*proc iml内でendsubmit;した後に*/ run ImportDataSetFromR("work.A","B"); /*Aは後でSASデータとして使いた…
前回の記事でSAS/IML StudioでRを走らせる方法を書きました。 y-mattu.hatenablog.comで、その最後にSAS/STATでproc imlの中でRを使う方法を書いている方がいたのでそれを紹介しました。SAS上でRを走らせよう SAS/IML | うずまき(4th Gen) | Jun-Systemsその…
自然言語処理をやるとき、僕はSAS/Minerを使える環境にないのでなんとかならないかなあと思っていたのですが、 SAS/IML Studio *1 を使うとSAS上でRを動かせるそうです。 ということでやってみます。 support.sas.com 手始めということでMeCabで簡単な形態素…
僕が通う大学ではそもそも無料で製品版SASをインストール&使用できるのですが、ノートパソコンにしか入れられません。ですが、家で作業するときは普通デスクトップでやるのでデスクトップにSASを入れたい!ってことでSAS University Editionを導入します。 …