【R言語の基礎#2】データの作成と保存
記事の目的
R言語でのデータ作成と保存方法について解説します。データについて、作成方法から参照、追加や変更を解説しています。また、全てのコードはコピペで実行できるように作成しています。
目次
1 データの作成
1.1 データの作成(乱数)
rnorm(データ数, 平均, 標準偏差)で、正規分布からの乱数を発生させることができます。
set.seed(1) # 乱数種を指定 数学 <- round(rnorm(10, 50, 10)) # 数学~N(50,10) 英語 <- round(rnorm(10, 50, 10)) # 英語~N(50,10) data <- data.frame(数学, 英語) # データフレーム作成
1.2 データの作成(連続)
seq(スタート, ゴール, 間隔) スタートからゴールまで指定した間隔で数値を出してくれます。
x <- seq(1,10,2) # 1から10まで間隔2
1.3 データの作成(繰り返し)
rep(要素,繰り返し回数)で要素を指定した回数分出力してくれます。
y <- rep("D研",5) # D研を5回繰り返す
2 データの参照
2.1 数字で指定
data[行,列]で数値やベクトルを指定することで、特定の行や列のデータを参照することができます。
data[,1] # 1列目 data[1,] # 1行目 data[1:3,] # 1~3行目
2.2 名前で指定
data$カラムまたはdata[,”カラム名”]で特定の列のデータを参照することができます。
data$数学 data[,"数学"]
2.3 条件で指定
data[条件式,]で特定の条件を満たす行のデータを参照することができます。列も条件で参照することができます。
data[data$数学>=50, ] # 数学が50点以上 data[data$数学==52, ] # 数学が52点 data[data$数学>=50&data$英語>=50, ] # 数学が50点以上かつ英語が50点以上 data[data$数学>=50|data$英語>=50, ] # 数学が50点以上または英語が50点以上
3 データの追加と変更
3.1 データの追加
data$新しいカラム名にデータを入れることで、新しいデータを追加することができます。
国語 <- round(rnorm(10, 50, 10)) # 国語~N(50,10) data$国語 <- 国語 # 国語の列追加
3.2 データの変更
特定のデータに数値を代入することでデータを変更することができます。
data[2,3] <- 50 # 2行3列目の点数を50に変更
4 データの保存と読み込み
4.1 データの保存
以下のコードで、csvまたはrda形式でデータを保存することができます。データの保存場所は、わーキングディレクトリで設定したファイルになります。
write.csv(data, file="data.csv") # csv形式 save(data, file="data.rda") # データ型、変数名も保存
4.2 データの読み込み
データの読み込みは以下でできます。読み込むファイルはワーキングディレクトリに保存しておいてください。
data2 <- read.csv("data.csv") # csvファイル読み込み data2 # データ確認 load("data.rda") # データ読み込み