names(df)[ c(1,3)] <- c("一列目", "三列目")
via:
Rで列名を変更する: さかなのいろいろ
names(df)[ c(1,3)] <- c("一列目", "三列目")
via:
Rで列名を変更する: さかなのいろいろ
潜在クラス分析で欠損値がある場合の補完はできないものかといろいろ調べてみたが、コードが見つからない。IDREで次のようなエントリを見つけた。
Mplusは完全情報最尤推定法(FIML)を用いて、変数の一部が欠落した値を持つモデルを推定するために使用できる。これはバージョン5からデフォルトで行われ、それ以前のバージョンでは、type = missing;を使用してこのタイプの推定を要求することができた。 しかし、いくつかのモデルでは、Mplusは、予測変数のいずれかで値が見つからない場合、削除がされる。
要するに通常はデフォルトでFIMLによる補完が行われているということだ。つまり、何もしなくても欠損値が補完されてた結果が出力されているということだ。
DATA: LISTWISE=ON;
DATAオプションでLISTWISE=ON
をする。
言われてみれば、知っていた気がする。気のせいか、、、
頻度主義で行うのと特に何かが変わるというわけではないものの、Mplusでベイズ推定で因子分析を行った。
DATA: FILE = "HS1939.dat"; VARIABLE: NAMES = x1 x2 x3 x4 x5 x6 x7 x8 x9; MISSING=.; ANALYSIS: ESTIMATOR = BAYES; PROCESS = 2; FBITER = 10000; MODEL: visual by x1-x3; textual by x4-x6; speed by x7-x9; OUTPUT: STDYX;
標準化した解を掲載する。
STDYX Standardization Posterior One-Tailed 95% C.I. Estimate S.D. P-Value Lower 2.5% Upper 2.5% Significance VISUAL BY X1 0.769 0.056 0.000 0.647 0.866 * X2 0.425 0.063 0.000 0.297 0.543 * X3 0.585 0.059 0.000 0.463 0.695 * TEXTUAL BY X4 0.852 0.024 0.000 0.800 0.894 * X5 0.855 0.023 0.000 0.807 0.897 * X6 0.838 0.024 0.000 0.786 0.881 * SPEED BY X7 0.562 0.057 0.000 0.437 0.664 * X8 0.720 0.065 0.000 0.575 0.831 * X9 0.669 0.067 0.000 0.540 0.804 * TEXTUAL WITH VISUAL 0.454 0.064 0.000 0.321 0.572 * SPEED WITH VISUAL 0.471 0.084 0.000 0.301 0.629 * TEXTUAL 0.281 0.071 0.000 0.142 0.417 * Intercepts X1 4.179 0.184 0.000 3.823 4.534 * X2 5.124 0.221 0.000 4.692 5.566 * X3 1.970 0.099 0.000 1.781 2.167 * X4 2.600 0.123 0.000 2.360 2.843 * X5 3.327 0.149 0.000 3.039 3.617 * X6 1.973 0.100 0.000 1.780 2.169 * X7 3.806 0.165 0.000 3.486 4.130 * X8 5.404 0.229 0.000 4.963 5.856 * X9 5.275 0.228 0.000 4.834 5.729 * Variances VISUAL 1.000 0.000 0.000 1.000 1.000 TEXTUAL 1.000 0.000 0.000 1.000 1.000 SPEED 1.000 0.000 0.000 1.000 1.000 Residual Variances X1 0.408 0.084 0.000 0.250 0.581 * X2 0.819 0.053 0.000 0.705 0.912 * X3 0.658 0.069 0.000 0.517 0.786 * X4 0.274 0.040 0.000 0.201 0.360 * X5 0.268 0.039 0.000 0.196 0.348 * X6 0.298 0.040 0.000 0.224 0.382 * X7 0.684 0.064 0.000 0.559 0.809 * X8 0.482 0.092 0.000 0.309 0.670 * X9 0.553 0.091 0.000 0.354 0.708 *
いわゆる普通の因子分析である。
DATA: FILE = "HS1939.dat"; VARIABLE: NAMES = x1 x2 x3 x4 x5 x6 x7 x8 x9; MISSING=.; ANALYSIS: ESTIMATOR = ML; MODEL: visual by x1-x3; textual by x4-x6; speed by x7-x9; OUTPUT: STDYX;
こちらも標準化した解。
STDYX Standardization Two-Tailed Estimate S.E. Est./S.E. P-Value VISUAL BY X1 0.772 0.058 13.417 0.000 X2 0.424 0.063 6.752 0.000 X3 0.581 0.058 9.941 0.000 TEXTUAL BY X4 0.852 0.023 37.612 0.000 X5 0.855 0.022 38.529 0.000 X6 0.838 0.024 35.597 0.000 SPEED BY X7 0.569 0.058 9.766 0.000 X8 0.723 0.062 11.607 0.000 X9 0.665 0.066 10.063 0.000 TEXTUAL WITH VISUAL 0.459 0.063 7.225 0.000 SPEED WITH VISUAL 0.471 0.086 5.457 0.000 TEXTUAL 0.283 0.071 3.960 0.000 Intercepts X1 4.235 0.182 23.272 0.000 X2 5.179 0.219 23.669 0.000 X3 1.993 0.100 20.010 0.000 X4 2.634 0.122 21.617 0.000 X5 3.369 0.149 22.623 0.000 X6 1.998 0.100 20.027 0.000 X7 3.848 0.167 23.030 0.000 X8 5.467 0.230 23.754 0.000 X9 5.334 0.225 23.716 0.000 Variances VISUAL 1.000 0.000 999.000 999.000 TEXTUAL 1.000 0.000 999.000 999.000 SPEED 1.000 0.000 999.000 999.000 Residual Variances X1 0.404 0.089 4.550 0.000 X2 0.821 0.053 15.438 0.000 X3 0.662 0.068 9.749 0.000 X4 0.275 0.039 7.126 0.000 X5 0.269 0.038 7.084 0.000 X6 0.298 0.039 7.546 0.000 X7 0.676 0.066 10.172 0.000 X8 0.477 0.090 5.298 0.000 X9 0.558 0.088 6.345 0.000
ちなみに標準化した解での共分散は当然ながら相関係数になる。
データはRのlavaanパッケージに含まれるHolzingerSwineford1939
を利用した。
下記の手順でデータセットが作成できる。
library(lavaan) data(HolzingerSwineford1939) dat <- HolzingerSwineford1939[7:15]
library(MplusAutomation) variable.names(dat) # 変数名を書き出し prepareMplusData(dat, filename="HS1939.dat", keepCols=c("x1","x2","x3", "x4", "x5", "x6", "x7", "x8","x9"), overwrite=T)
1のモラルパニックのところ読んどこう。
amazonだと5000円以上する。Routledge安い。
学生たちに学習アプリのおすすめを聞く授業のまとめ。
今までに登場したアプリ・ソフトウェアはこちらを参照してください。
今学期のおすすめ学習アプリ2019年春 - 井出草平の研究ノート
今学期のおすすめ学習アプリ2019年秋 - 井出草平の研究ノート
今学期のおすすめ学習アプリ2020年春 - 井出草平の研究ノート
「これが無かったら生活が崩壊します」と授業中に言ったEvernote。
学習目的にも使いますが、どちらかといえば生活全般に使っています。
レシピなどもここに入れています。
新しい使い方を常に思いつくアプリですが、この数年、自分の買った服と身幅や肩幅などサイズ表を入れています。 例えば、ZOZOで買うと最近買った服の情報が出ますが、それ以外では使えないので、自分で記録しています。用途は主に通販で服を買う時に参考にするためですね。
あと、コメントの下書き、SNSへの書き込みの下書きなんかにもよく使っています。授業で感想を書くときに、どこかに下書きしたいと思ったときにはEvernoteが最適です。
昨今、運動不足になりがちなので毎日する運動を記録するために使っています。
学習にも使える気がします。
買い物リストやブログエントリ予定のものを資料と一緒に入れるのに使っています。ファイル添付ができるのが個人的にはとても便利です。
Wunderlistが買収された後は、Microsoft TO DO一択なのかなと思います。
今更書くのもどうかと思いますが、統計ソフトRとRStudioはほぼ毎日使っています。
最近よく使っている統計パッケージ。
こちらも今更挙げるのもどうかと思うアプリですが、毎日使っています。 slack.com
英文を書くのにとても便利なことに最近気づきました。いまさらですが。
grammarlyは以前に紹介しましたが、Gingerも使っています。
誤字脱字チェック的な側面が大きく、提案される文章が気にいることはそれほどありません。
普段、文章やらコードを書くのはVSCode、形式はMarkdownです。
Atomを使う頻度が減ったのは、やはり重いからですかね。
もちろんMarkdownを使うのであれば、Markdown Preview Enhancedパッケージは必須。
AppleのURLがややこしいのでAndroid版を貼っていきます。
現在の世界のニュースを理解する上でも、世界史を知っておくのは重要とのこと。なんて正論。
非常に人気の暗記アプリらしい。Quizletとの違いがまだわかっていません。
3次元の数学問題を簡単に解き、3次元関数と曲面をグラフ化し、3次元で幾何学的な作図をし、結果を保存して共有します。
このアプリは便利と聞いていましたが、実際に使った学生さんは試験に落ちたそうです。
高等学校レベルで登場する関数によるグラフや軌跡を,マウスによる簡単な操作で描くとともに,様々な角度から調べる事ができます
いいソフトですよね。
武蔵野美術大学 美術館・図書館の公式アプリケーション
apps.apple.comAndroidはapkからのインストールが必要な模様。iPad向きのコンテンツな気がします。
ムサビすごいな、の一言。
仮想データフレームを作成。
d <- data.frame(V1=c(23, 45, 56), V2=c(45, 45, 67))
結果。
V1 V2 1 23 45 2 45 45 3 56 67
ID列の挿入。
d$ID <- 1:nrow(d)
結果。
V1 V2 ID 1 23 45 1 2 45 45 2 3 56 67 3
こちらで紹介されていたやり方。パッケージも不要で賢い方法だと思う。
気の利いていないデータの場合ID列を作っていない場合が多々ある。今、このエントリを書いている理由もこれである。
作っておけよ!と思うがないものは仕方ない。
SPSS形式のデータをRで読み込むにはforeign
とhaven
の2つの方法がある。
library(foreign) d <- read.spss("xxx.sav", to.data.frame=TRUE) d$ID <- 1:nrow(d)
これはどうも失敗する。
library(haven) d <- read_sav("xxx.sav") d$ID <- 1:nrow(d)
こちらは成功する。havenパッケージを使うのが吉のようだ。その他のことを考えてもhavenパッケージの方がだいたい優れている。
本筋とは関係ないが、エンコードには気を付けること。Shift-JISで作成されているファイルにはencoding ="cp932"
を忘れないように。