※R言語入門のトップページはこちらR言語では、本当に便利なコマンドがいくつもあります。頑張れば、知らなくても解析は出来たりしますが、知っておくと解析がはるかに楽になる、というような類のものになっております。一度に全部覚えるようなものではなく、実際に解析を行っているうちに徐々に覚えるというようなものです。今回は「へえ~こんなコマンドもあるんだ~。便利だね~」っていうようなスタンスで、ご自身のパソコンで軽くプログラムを流しながら読んでもらえればと思います。まとめと復習用コピペプログラムR言語の便利なコマンド第2回で使ったデータをここでも使って説明していきます。ダウロードはこちら↓sample-dataちなみにこんなデータでしたね。read.csv(“sample-data.csv”,header=T,row.names=1)列数・行数をカウントするコマンド”ncol,nrow”R言語では、読み込んだデータの列数や行数を一瞬でカウントしてくれるコマンドがあります。自分で数えたりしなくて良いので非常に便利ですね。dfの行数、列数をコマンドで確認してみましょう。630行、6列の行列であるということが分かりました。”data$列名”で参照したい列をベクトルとして取り出す”データの入った変数$列名”で参照したい列をベクトルとして取り出すことができます。性別と血圧の列を見てみましょう。144というようなプログラムになります。要素の数をカウントするコマンド”table”あるデータについて知りたい列についてのみ、要素数をカウントしてくれるコマンドが”table”です。あるデータの性別について男性、女性がそれぞれ何人いるかについて知りたい時に活躍します。table(任意の列)をすることによって、その列について要素数をカウントしてくれます。列は何列でも入れられ、2列以上にすると非常に分かりやすい分割表形式で出力が行われます。dfの性別、性別と病気について実際のプログラムを見てみましょう。11列名行名を見るコマンド”colnames,rownames”“colnames(),rownames()”を使えば、列名行名もR上で見ることができます。“30”もし見たいデータが行列ではなく、ベクトルのときは行、列は関係ないので関数”names(ベクトル)”を使うようにします。同じものをたくさん並べるベクトルの生成”numeric,rep”例えば、0を100個並べたベクトルを作りたいときに、0を100回書くというような原始的なことをする必要はありません。R上ではちゃんとスマートなコマンドが用意されています。numeric()を使えば0を好きな数だけ並べたベクトルを生成します。rep(並べたいもの、並べたいかず)で好きなものを好きなだけ並べることもできます。今回は0を15回並べてみましょう。0変数の型の変換”as.numeric,as.character”C言語などでもありますが、R言語の変数にも”型”というものが存在します。同じ”1”でもそれが数字なのか文字なのかで意味は全く異なります。Rがその”1”を数字として認識しているのか、あるいは文字として認識しているのかということです。数字として認識していれば、計算に使えますが、文字として認識している場合、計算に使おうとするとエラーが発生してしまうかもしれません。Rに文字として読み込まれた”1”を計算に使いたいのならば、それを数字として再度Rに読み込ませる必要があります。そこで今回のコマンドの出番ですね。as.numericで数字型に変換。as.characterで文字列型に変換されます。変数の型の確認”is.numeric,is.character”変数の型を確認するコマンドもあり、このように使います。さきほど作った変数daとda.chの型を確認してみましょう。FALSENA(欠損値)にまつわるコマンドNAとは欠損値のことです。解析する予定のデータは完全なデータであるとは限りません。一人だけ年齢のデータが抜けていたり、血液型のデータが取れなかったりと解析データには欠損値があることがあります。実は欠損値の処理は解析するうえで非常に大切な問題なのです。そこで頻繁に使うのが、欠損値であるか調べる”is.na()”と欠損値を除く”na.omit()”です。使い方は単純、簡単であるので是非覚えておいてください。欠損値をいれた、yというデータを作ってコマンドを使ってみます。“omit”ベクトルの長さを調べるコマンド”length”ベクトルの長さを知りたい時は”length()”を使います。zの長さを測ってみましょう。c(2,4,6,1,3,5)length(z)#lengthはベクトルの長さを測る重複した要素を除く”unique”重複する要素は除きたいときは”unique()”を使いましょう。実際に使うとこんな感じになります。取り出すコマンドも用意されています。二つの集合k,lを用意して使ってみましょう。10繰り返しのfor文C言語やjavaなど他のプログラミング言語を勉強したことがあるなら、必ず知っているであろう、for文とif分はRでも使えます。書き方がほかの言語と少し違うので注意が必要です。for文というのは繰返し文です。プログラムを見てみましょう。+1}このプログラムの意味は、iに1を代入、for分の中身を実行し、終わったらiに2を代入してfor分の中身を実行。終わったら今度はiに3を代入してfor分の中身を実行、、、。これを繰り返し、iに10を代入してfor分の中身を実行したら終了。for分の中身のプログラムを10回繰り返すプログラムです。これがRでのfor文の書き方なので覚えておきましょう。ちなみにansの中身はこうなります。10もともと0が入っていたansに1を10回足したので、10になりました。条件式のif文Rにはif文というのも用意されています。条件式を書き、条件式が真(TRUE)の時のみif分の中身を実行します。プログラムを見てみましょう。1条件式は真であるので、if分の中身が実行され、ansは1が足されました。0条件式は真ではない(FALSE)のでif文の中身は実行されず、スルーされました。ansの値にも変化はありません。その他数々の便利コマンドRには、ほかにも便利コマンドがたくさんあります。覚える必要はありません。動作確認だけしてみましょう。c(1,4,5,3,7,8,9,9,2,5)mean(b)#平均var(b)#分散sd(b)#標準偏差median(b)#中央値sum(b)#合計値max(b)#最大値min(b)#最小値rev(b)#ベクトルを逆順にする。order(b)#ベクトルの要素を小さい順に見たときに、何番目なのかを出力sort(b)#ベクトルを小さい順に並べる。(昇順と言う)rev(sort(b))#組み合わせて使えばベクトルを降順に並べることも可能まとめと復習用コピペプログラムいかがでしたでしょうか。今回学んだのは、Rで解析をする上で、大切なテクニックです。今すぐに全てを覚える必要はありません。こんなのもあるんだ、ということを頭の片隅に置いておきましょう。今後解析をしていく上で、また困ったりしたらここに戻ってきてください。今回使ったプログラムの全文です。コピペ実行で確認してみてください。c(1,4,5,3,7,8,9,9,2,5)mean(b)#平均var(b)#分散sd(b)#標準偏差median(b)#中央値sum(b)#合計値max(b)#最大値min(b)#最小値rev(b)#ベクトルを逆順にする。order(b)#ベクトルの要素を小さい順に見たときに、何番目なのかを出力sort(b)#ベクトルを小さい順に並べる。(昇順と言う)rev(sort(b))#ベクトルを降順に並べる。G検定を取得するメリットを解説!最弱オセロを初めて攻略した天才オセロ高校生。TrendCOMMENTコメントを残すコメントをキャンセルメールアドレスが公開されることはありません。コメント*お名前*メールアドレス*プライバシーポリシーはこちら上に表示された文字を入力してください。