Rの基本 : データセットの作り方

作業フォルダを指定

必ず作業フォルダを指定しておいてください(ファイルの読み込み Step2 参照)

行と列

Rではデータをベクトルの形にして処理します

「治療前」というベクトル(列)を作ってみましょう

治療前 <- c(112, 138, 124, 120, 136, 142)

これを、Rにコピペしてみてください

このようになったら、「治療前」というベクトルをRが認識したことになります

ちゃんと入っているか確認してみましょう

print(治療前)

と入力してリターンをクリックしてください(print関数はなくても出力できます)

Rは青文字で答えを返してくれます

これは、エクセルの列に該当します

イメージはこんな感じです

View(治療前)

ベクトルは縦に並ばずに、横に並ぶので気持ち悪いかもしれませんが、慣れてください・・・

横に並べたい場合は転置します

t(治療前)

[1,]は1行目、[,1] は1列目を示します

よって、これは1行6列のことを意味しています

イメージはこんな感じです

View(t(治療前))

次に2列のデータセットを作ってみます

イメージしやすくなります

data.frame関数で、2つのベクトルを合体させて2列のデータセットを作ります

dat という文字の中に2列からなるデータセットを格納します

治療前 <- c(112, 138, 124, 120, 136, 142)
治療後 <- c(138, 139, 136, 130, 143, 140)
dat <- data.frame(治療前, 治療後)
print(dat)

イメージ

View(dat)

列の追加

dat というデータセットの中に性別というベクトル(列)を追加します

$は「~の中に」とか「~の中の」とか・・・いうイメージです

dat$性別 <- c("男性", "男性", "女性", "男性", "女性", "女性")
print(dat)
View(dat)

要約

summary関数でデータセットの要約を出力できます

summary(dat)

性別がcharacterになっているので、factorに変更します

dat$性別 <- factor(dat$性別)
summary(dat)

性別の詳細を出力してくれます

character と factor の違い

この手の問題はChat GPT様にお尋ねしましょう

という具合に、山のように教えてくださいます・・・・

この結果をもとに、「ユニークな文字列」とはどいう意味ですか?

などと会話を続けていってください

CSVファイルに保存

このデータセットをCSVファイルとして保存します

write.csv(dat, file="dat.csv", fileEncoding="UTF-8")

作業フォルダに dat というCSVファイルができていれば成功です

このCSVファイルを読み込むと、性別はまたcharacterになります

今度は set という文字の中に格納してみます

set <- read.csv("dat.csv", header=T, fileEncoding = "UTF-8")

確認してみましょう

str(set$性別)

やはり単純に文字として認識しているようです

factor変数に変換してみます

set$性別 <- factor(set$性別 )
str(set$性別)

これで factor変数 として処理できます

男性が1、女性2という扱いで、1の男性が「基準」となっています

変更したい場合は

set$性別 <- relevel(set$性別, ref="男性") 
str(set$性別)

「基準」については以下のご覧ください

ダメ出し 間違い、分かりにくい部分などのご意見をお待ちします

タイトルとURLをコピーしました