2025年度 経済データ分析演習B2
2025-10-11
出席登録は13:00から14:30まででに登録してください
出席番号
511756017
クラスコード
gsrnanuj
第4回講義フォルダ作成
Classroomからデータをダウンロード
Driveへのデータのアップロード
ファイル名の変更
接続時間制限
90分ルール:ノートブックの接続が切れてから90分経過でリセット
12時間ルール:ノートブックを起動してから12時間経過でリセット
つまり、Colab上に保存していたデータは消えてしまう
Google Driveをマウント
マウント
Driveのマウント
ランタイムのタイプを変更する前にDriveをマウントする
実行
アクセスの許可
マウントの状況のチェック
driveアイコン
ドライブに接続
マウントの状況をチェック
Rへの変更
※ 重要:日本語以外はすべて半角であることが望ましい(例えば#やスペースなど)
ライブラリ - 高度な関数、手法のパッケージ群
| Packages | Description |
|---|---|
| R.util | Rパッケージのプログラミングや開発に役立つユーティリティ関数 |
| dplyr | 表型データの操作に特化し、データの集計などに役立つ |
| tidyverse | データの読み込み、抽出、加工、可視化など、データ分析における基本的な作業を効率的に行う |
| ggplot2 | データを可視化する、作図するパッケージ |
| gt | 表を作成するためのパッケージ |
以下のCodeをコードセルに入力し実行
インストール
呼び出し
Driveのデータをインポート
# Driveに保存されているデータをdataと別名で読み込み
# データが保存されている場所のパス(住所)をダブルクォーテーションで囲む
# read.csv("ファイルパス", header = TRUE/FALSE, sep = データの区切り, fileEncoding = データの形式(文字コードの形式))
## データの1行目にid, Q1と見出しがあるので、header = TUREとする
## csv形式でカンマ区切りであれば指定する必要ない。もし\や;などで区切られているデータは、sep = \などと指定する
## csvの文字コードがUTF-8なので、ここで指定しておく
data <- read.csv("/content/drive/MyDrive/Classroom/2025年度 経済データ分析演習B2 2025年/22学生生活アンケート/22学生生活アンケート.csv", header = TRUE, fileEncoding = "utf-8")
# head関数は、データの先頭を出力します
head(data) id Q1 Q2 Q3 Q4 Q5 Q6 Q7 Q8 Q9
1 1 同意します ゼミⅢ 男性 21 7月 3年 経済学部 留学生ではない。 3
2 2 同意します seminar 3 女性 24 2月 3年 経済学部 留学生である。 9
3 3 同意します ゼミ3 男性 22 1月 3年 経済学部 留学生である。 7
4 4 同意します ゼミナール IIIB 男性 20 3月 3年 経済学部 留学生ではない。 8
5 5 同意します ゼミナール 女性 21 1月 4年 経済学部 留学生ではない。 8
6 6 同意します 環境リテラシーB 男性 18 3月 1年 経済学部 留学生ではない。 6
Q10 Q11 Q12 Q13 Q14 Q15
1 3 1 あまりよくない ときどきあった よくあった ときどきあった
2 9 10 まあよい ほとんどなかった 全くなかった 全くなかった
3 10 10 よい 全くなかった 全くなかった 全くなかった
4 6 7 よい 全くなかった 全くなかった 全くなかった
5 5 6 よい 全くなかった 全くなかった 全くなかった
6 8 8 まあよい よくあった 全くなかった ときどきあった
Q16 Q17 Q18 Q19
1 よくあった よくあった ときどきあった ときどきあった
2 ときどきあった ときどきあった 全くなかった 全くなかった
3 よくあった 全くなかった 全くなかった 全くなかった
4 全くなかった 全くなかった 全くなかった 全くなかった
5 全くなかった 全くなかった 全くなかった 全くなかった
6 ほとんどなかった よくあった ほとんどなかった ほとんどなかった
Q20 Q21 Q22 Q23 Q24
1 よくあった よくあった 5.0 8.0 賃貸住宅
2 全くなかった ほとんどなかった 8.0 8.0 賃貸住宅
3 全くなかった ほとんどなかった 6.0 10.0 賃貸住宅
4 全くなかった ときどきあった 5.0 5.0 持ち家(家族や親戚が所有している家)
5 ときどきあった ときどきあった 5.5 6.5 賃貸住宅
6 ほとんどなかった 全くなかった 8.0 8.0 賃貸住宅
Q25 Q26 Q27 Q28 Q29 Q30 Q31 Q32
1 7.0 2 30年以上 一人暮らし 東京都 埼玉県 両方ある
2 8.7 1 5年未満 友人 東京都 東京都 バス停
3 5.3 2 10から20年未満 寮 東京都 東京都 両方ある
4 NA NA 家族 オフィスワーク中心 千葉県 千葉県 両方ある
5 7.0 1 5年未満 一人暮らし 東京都 福島県 駅
6 6.5 1 10から20年未満 一人暮らし 東京都 山形県 両方ある
Q33 Q34 Q35 Q36 Q37 Q38 Q39 Q40 Q41 Q42
1 5 電車 30分未満 3 1 1 1 4 10 2以上3未満
2 3 電車 30分以上1時間未満 2 4 3 5 5 6 3以上4未満
3 3分 徒歩 30分未満 6 5 4 5 5 24 3以上4未満
4 5 電車 1時間以上1時間30分未満 2 4 4 4 5 7 3以上4未満
5 5 電車 30分未満 1 3 3 3 3 2 3以上4未満
6 5 電車 30分未満 5 3 4 4 2 24 4以上
Q43 Q44 Q45 Q46 Q47 Q48 Q49 Q50 Q51
1 所属していない いいえ 0 0 18 20 している 東京都
2 所属していない はい 進学前から決めていた 14 0 20 6 している 東京都
3 所属している はい 進学前から決めていた 24 24 0 10 していない
4 所属していない いいえ 5 10 6 10 している 千葉県
5 所属していない はい 就職活動 5 0 15 10 している 東京都
6 所属している はい 進学前から決めていた 10 5 10 60 している 東京都
Q52 Q53
1 飲食・フード(レストラン・居酒屋・カフェ等) 1100
2 飲食・フード(レストラン・居酒屋・カフェ等) 1100
3 NA
4 販売・接客・サービス(コンビニ・レジ・書店・ガソリンスタンド等) 1000
5 販売・接客・サービス(コンビニ・レジ・書店・ガソリンスタンド等) 1045
6 販売・接客・サービス(コンビニ・レジ・書店・ガソリンスタンド等) 1150
Q54
1 生活費のため;日常の娯楽・嗜好品のため
2 生活費のため
3
4 社会経験を養うため
5 生活費のため;学費のため;日常の娯楽・嗜好品のため
6 生活費のため;日常の娯楽・嗜好品のため;高額商品購入(自動車、パソコンなど)のため
Q55 Q56 Q57 Q58 Q59 Q60 Q61 Q62 Q63 Q64 Q65 Q66 Q67 Q68 Q69 Q70 Q71
1 8 11 70 30 0 0 10 90000 5 10 10 10 10 5 いいえ NA NA
2 8 16 50 50 25 2 0 160000 60 5 10 5 10 5 はい 1.0 5
3 NA 10 NA 80 NA NA 20 50000 50 10 0 3 0 4 はい 0.5 6
4 2 4 50 50 0 0 50 20000 20 10 30 10 10 5 はい 1.0 5
5 7 15 70 20 10 0 0 15 30 10 25 5 10 10 いいえ NA NA
6 4 4 100 4 7 50 60 4 50 30 10 20 40 0 いいえ NA NA
Q72 Q73 Q74 Q75 Q76 Q77
1 NA それ以上 twitter
2 ロールプレイング ロールプレイング 0 減らしたい それ以上 instagram
3 シミュレーション シミュレーション 0 このままでいい それ以上 instagram
4 アクション;スポーツ アクション 0 このままでいい 無制限 instagram
5 NA 無制限 instagram
6 NA 6 instagram
Q78 Q79 Q80
1 500 60 1000
2 301 0 4000
3 200 30 1000
4 150 50 1000
5 400 50 1000
6 250 60 0
パイプ演算子: |>
以下のCodeをコードセルに入力し実行
行の選択:filter()
id Q1 Q2 Q3 Q4 Q5 Q6 Q7 Q8 Q9
1 1 同意します ゼミⅢ 男性 21 7月 3年 経済学部 留学生ではない。 3
2 2 同意します seminar 3 女性 24 2月 3年 経済学部 留学生である。 9
3 3 同意します ゼミ3 男性 22 1月 3年 経済学部 留学生である。 7
4 4 同意します ゼミナール IIIB 男性 20 3月 3年 経済学部 留学生ではない。 8
5 5 同意します ゼミナール 女性 21 1月 4年 経済学部 留学生ではない。 8
6 6 同意します 環境リテラシーB 男性 18 3月 1年 経済学部 留学生ではない。 6
Q10 Q11 Q12 Q13 Q14 Q15
1 3 1 あまりよくない ときどきあった よくあった ときどきあった
2 9 10 まあよい ほとんどなかった 全くなかった 全くなかった
3 10 10 よい 全くなかった 全くなかった 全くなかった
4 6 7 よい 全くなかった 全くなかった 全くなかった
5 5 6 よい 全くなかった 全くなかった 全くなかった
6 8 8 まあよい よくあった 全くなかった ときどきあった
Q16 Q17 Q18 Q19
1 よくあった よくあった ときどきあった ときどきあった
2 ときどきあった ときどきあった 全くなかった 全くなかった
3 よくあった 全くなかった 全くなかった 全くなかった
4 全くなかった 全くなかった 全くなかった 全くなかった
5 全くなかった 全くなかった 全くなかった 全くなかった
6 ほとんどなかった よくあった ほとんどなかった ほとんどなかった
Q20 Q21 Q22 Q23 Q24
1 よくあった よくあった 5.0 8.0 賃貸住宅
2 全くなかった ほとんどなかった 8.0 8.0 賃貸住宅
3 全くなかった ほとんどなかった 6.0 10.0 賃貸住宅
4 全くなかった ときどきあった 5.0 5.0 持ち家(家族や親戚が所有している家)
5 ときどきあった ときどきあった 5.5 6.5 賃貸住宅
6 ほとんどなかった 全くなかった 8.0 8.0 賃貸住宅
Q25 Q26 Q27 Q28 Q29 Q30 Q31 Q32
1 7.0 2 30年以上 一人暮らし 東京都 埼玉県 両方ある
2 8.7 1 5年未満 友人 東京都 東京都 バス停
3 5.3 2 10から20年未満 寮 東京都 東京都 両方ある
4 NA NA 家族 オフィスワーク中心 千葉県 千葉県 両方ある
5 7.0 1 5年未満 一人暮らし 東京都 福島県 駅
6 6.5 1 10から20年未満 一人暮らし 東京都 山形県 両方ある
Q33 Q34 Q35 Q36 Q37 Q38 Q39 Q40 Q41 Q42
1 5 電車 30分未満 3 1 1 1 4 10 2以上3未満
2 3 電車 30分以上1時間未満 2 4 3 5 5 6 3以上4未満
3 3分 徒歩 30分未満 6 5 4 5 5 24 3以上4未満
4 5 電車 1時間以上1時間30分未満 2 4 4 4 5 7 3以上4未満
5 5 電車 30分未満 1 3 3 3 3 2 3以上4未満
6 5 電車 30分未満 5 3 4 4 2 24 4以上
Q43 Q44 Q45 Q46 Q47 Q48 Q49 Q50 Q51
1 所属していない いいえ 0 0 18 20 している 東京都
2 所属していない はい 進学前から決めていた 14 0 20 6 している 東京都
3 所属している はい 進学前から決めていた 24 24 0 10 していない
4 所属していない いいえ 5 10 6 10 している 千葉県
5 所属していない はい 就職活動 5 0 15 10 している 東京都
6 所属している はい 進学前から決めていた 10 5 10 60 している 東京都
Q52 Q53
1 飲食・フード(レストラン・居酒屋・カフェ等) 1100
2 飲食・フード(レストラン・居酒屋・カフェ等) 1100
3 NA
4 販売・接客・サービス(コンビニ・レジ・書店・ガソリンスタンド等) 1000
5 販売・接客・サービス(コンビニ・レジ・書店・ガソリンスタンド等) 1045
6 販売・接客・サービス(コンビニ・レジ・書店・ガソリンスタンド等) 1150
Q54
1 生活費のため;日常の娯楽・嗜好品のため
2 生活費のため
3
4 社会経験を養うため
5 生活費のため;学費のため;日常の娯楽・嗜好品のため
6 生活費のため;日常の娯楽・嗜好品のため;高額商品購入(自動車、パソコンなど)のため
Q55 Q56 Q57 Q58 Q59 Q60 Q61 Q62 Q63 Q64 Q65 Q66 Q67 Q68 Q69 Q70 Q71
1 8 11 70 30 0 0 10 90000 5 10 10 10 10 5 いいえ NA NA
2 8 16 50 50 25 2 0 160000 60 5 10 5 10 5 はい 1.0 5
3 NA 10 NA 80 NA NA 20 50000 50 10 0 3 0 4 はい 0.5 6
4 2 4 50 50 0 0 50 20000 20 10 30 10 10 5 はい 1.0 5
5 7 15 70 20 10 0 0 15 30 10 25 5 10 10 いいえ NA NA
6 4 4 100 4 7 50 60 4 50 30 10 20 40 0 いいえ NA NA
Q72 Q73 Q74 Q75 Q76 Q77
1 NA それ以上 twitter
2 ロールプレイング ロールプレイング 0 減らしたい それ以上 instagram
3 シミュレーション シミュレーション 0 このままでいい それ以上 instagram
4 アクション;スポーツ アクション 0 このままでいい 無制限 instagram
5 NA 無制限 instagram
6 NA 6 instagram
Q78 Q79 Q80
1 500 60 1000
2 301 0 4000
3 200 30 1000
4 150 50 1000
5 400 50 1000
6 250 60 0
列の選択:select()
列の変換:mutate()
条件指定:if_else(条件, TRUE, FALSE)
列の追加:mutate()
単一条件指定:if_else(条件, TRUE, FALSE)【再】
複数条件指定:case_when(条件1 ~ TRUE, 条件2 ~ TRUE, …)
# アンケートに同意しているサンプルのみに限定
# 女性を1、男性を0とするダミー変数を作成(変数名:dum_female)
# 経済学部を1、それ以外を0とするダミー変数を作成(変数名:dum_econ)
# 学年を数値型に変更する(変数名:cat5_grade)
# 必要な変数のみ残す
# 最後に先頭行のみを表示して確認
data |>
filter(Q1=="同意します") |>
mutate(dum_female = if_else(Q3 == "女性", 1, 0)) |>
mutate(dum_econ = if_else(Q7 == "経済学部", 1, 0)) |>
mutate(cat5_grade = case_when(Q6 == "1年" ~ 1,
Q6 == "2年" ~ 2,
Q6 == "3年" ~ 3,
Q6 == "4年" ~ 4,
TRUE ~ 5)) |>
select(id, Q3, Q6, Q7, dum_female, dum_econ, cat5_grade) |>
head() id Q3 Q6 Q7 dum_female dum_econ cat5_grade
1 1 男性 3年 経済学部 0 1 3
2 2 女性 3年 経済学部 1 1 3
3 3 男性 3年 経済学部 0 1 3
4 4 男性 3年 経済学部 0 1 3
5 5 女性 4年 経済学部 1 1 4
6 6 男性 1年 経済学部 0 1 1
# data2に加工したデータを代入
data2 <- data |>
filter(Q1=="同意します") |>
mutate(dum_female = if_else(Q3 == "女性", 1, 0)) |>
mutate(dum_econ = if_else(Q7 == "経済学部", 1, 0)) |>
mutate(cat4_grade = case_when(Q6 == "1年" ~ 1,
Q6 == "2年" ~ 2,
Q6 == "3年" ~ 3,
Q6 == "4年" ~ 4,
TRUE ~ 5)) |>
select(id, Q3, Q6, Q7, dum_female, dum_econ, cat4_grade)
head(data2) id Q3 Q6 Q7 dum_female dum_econ cat4_grade
1 1 男性 3年 経済学部 0 1 3
2 2 女性 3年 経済学部 1 1 3
3 3 男性 3年 経済学部 0 1 3
4 4 男性 3年 経済学部 0 1 3
5 5 女性 4年 経済学部 1 1 4
6 6 男性 1年 経済学部 0 1 1
第4回講義課題(1) - 以下の加工をしたデータを書き出して、そのcsvを提出してください
第4回講義課題(2) - Colabのファイルを提出してください