06月≪ 2018年07月 ≫08月

12345678910111213141516171819202122232425262728293031
--.--/--(--)

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
--:--  |  スポンサー広告  |  EDIT  |  Top↑
2018.02/09(Fri)

Stataで小数点以下を揃えた数値にしたい

Stataで実数値の変数があり、小数点以下の桁数が揃っていないとき、
揃えたい。例えばVar1には2.3333333とかが入っている。

小数点以下1桁のデータにするなら
replace Var1=round(10*Var1)/10

小数点以下2桁のデータにするなら
replace Var1=round(100*Var1)/100

要はround関数を使う。
スポンサーサイト
21:04  |  STATA  |  TB(0)  |  CM(0)  |  EDIT  |  Top↑
2018.02/09(Fri)

Stata:年月日データの一括削除

年月日変数を一括削除したい場合

/* 年月日データの一括削除 */
----------------
ds, has(format %t*)
drop `r(varlist)'
----------------
01:07  |  STATA  |  TB(0)  |  CM(0)  |  EDIT  |  Top↑
2018.02/09(Fri)

Stataで文字列変数の一括削除

変数がたくさんあって、文字列変数は分析できないので数値変数だけのデータセットにしたい。

どうするか。
-------------------
ds, has(type string)
drop `r(varlist)'
-------------------
00:37  |  STATA  |  TB(0)  |  CM(0)  |  EDIT  |  Top↑
2017.12/24(Sun)

欠損値ケースの一括削除

複数の変数で欠損値があるケースを削除したい。

1つか2つなら
drop if 魅力1==. | 魅力2==.
でよい。

しかし、変数が100個あると面倒。そこで

foreach x in 魅力1-魅力100 {
drop if `x'==.
}

これで一括して欠損値のあるケースが削除できた。

注意するのは「`x'」のところの記号。

「`」は「’」ではない。キーボードからどう入力するのか。
解決法は、これをコピペして使うということ。
15:16  |  STATA  |  TB(0)  |  CM(2)  |  EDIT  |  Top↑
2017.12/24(Sun)

Stataでの多数の変数名一括変換

Stataで多数の変数の変数名を一括変換したい。

例えば、病名_new1から病名_new100という変数があるが、Sick1からSick100に変えたい場合。
1つずつ
rename 病名_new1 Sick1
と入力していく方法もあるが、100回やるのは面倒。

Excelで rename 病名_newX とSickXの列を100行作成してコマンドでやるのもありかも。
でも、100個くらいだと逆に面倒。

ということで、Stataでヘルプからユーザー作成の renames をインストール。
これは、複数変数の変数名を1活変換できる。

renames 元の変数名リスト \ 新しい変数リスト名

例えば、上の例なら
renames 病名_new1-病名_new100 \ Sick1-Sick100

問題は\の区切り記号。\ではエラーになる。ここは逆スラッシュ記号なのだが、
ブログでどう表現するのかわからない。「/」の逆になる。キーボードでは「ろ」のところ
にある記号。
14:56  |  STATA  |  TB(0)  |  CM(1)  |  EDIT  |  Top↑
2017.10/21(Sat)

更新しながらファイル結合

いままでSPSSでのファイル結合についていくつか書いてきた。

SPSSでは新しい変数の結合や新しいケースの結合については可能だ。

しかし、すでにある変数について、値があるところは元のファイルの値を
そのままにして、値がないところだけ結合ファイルの新しい値に更新したい
場合にはどうすればよいかわからなかった。IF文を使えばとかいろいろ考えたが、
Stataなら簡単だということがわかった。

Stataならファイル結合にもいろいろなオプションが使え、もとのファイルの欠損値の
ところだけ、新しい結合ファイルの値に置き換えられる。

こんな感じ。
merge 1:1 対応キー変数名 using "結合するファイル.dta", nogenerate update
04:19  |  STATA  |  TB(0)  |  CM(0)  |  EDIT  |  Top↑
2017.09/12(Tue)

StatTransfer13でStata Version14で出力するには

unicode対応の処理でSPSSファイルをStataファイルに変換できるけれども、やはり面倒。

そこで、StatTransferという変換ソフトを購入してみた。

実行してみるとSPSSからStataファイルに変換できるけれども、出力のStataが
Version13と表示されるし、変換後の変数名がV付きの名前に変わってしまっている。

問い合わせてみた結果、OprionsタブからOutput Oprions(1)を選択し、Stata version14
を選択すればよいことがわかった。

結果はスムーズに日本語に変換された。
15:46  |  STATA  |  TB(0)  |  CM(0)  |  EDIT  |  Top↑
2017.02/09(Thu)

STATASTANで大苦戦

STATAには組み込みのベイズプログラムがあるが、STATASTANというインターフェースを
利用してはやりのベイズMCMCプログラムSTANが使える。

STANはG++でプログラムをコンパイルして動くので高速ということなのだが、これがいくら
やってもエラーでうまく動かない。ここ2~3日苦しんでいてようやく原因が判明。

エラーを追いかけて、存在しないとか言われたファイルを見てみると、拡張子が
hppとなるところが0000644となっていたり、ファイル名の最後が00644とか、
拡張子が消えていたりというファイルがごっそりでてきた。

なぜ、0000644という数字になるのかよくわからないが、どうも元々のファイルが
壊れていると言うよりも、ファイルを解凍する際に壊れてしまったらしい。

こんなことは初めてで原因をつかむのに苦労した。現在、再解凍したりチェックの最中。
18:00  |  STATA  |  TB(0)  |  CM(0)  |  EDIT  |  Top↑
2017.02/07(Tue)

RStudioとSTATA

RStudioを触っていたらSPSSやEXCELからデータをインポートできるだけではなく、
STATAからもメニューから直にインポートできることに気がついた。

ただ、パスに日本語があるとエラーになるのでデータの置き場所だけは変更して
おく必要がある。
15:24  |  STATA  |  TB(0)  |  CM(0)  |  EDIT  |  Top↑
2016.12/06(Tue)

STATA: 度数分布表で度数の降順でソートして表示

度数の出力で降順に並べたい場合は一元配置表の「度数に関して降順で表示する」に
チェックを入れれば良い。

コマンドでは「sort」をカンマで区切って付け加える。

. tabulate 変数1 ,sort
18:22  |  STATA  |  TB(0)  |  CM(0)  |  EDIT  |  Top↑
 | BLOGTOP |  NEXT
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。