SlideShare uma empresa Scribd logo
1 de 7
###########################################
# I. さまざまなデータの入力方法
###########################################
#-------------------------------------------------------
# A) コンソールでの直接入力 dat1 (cars データ)作成
#-------------------------------------------------------
# スピード
speed <- c(4, 4, 7, 7, 8, 9, 10, 10, 10, 11, 11, 12, 12, 12, 12, 13, 13, 13, 13, 14, 14, 14, 14, 15, 15, 15,
16, 16, 17, 17, 17, 18, 18, 18, 18, 19, 19, 19, 20, 20, 20, 20, 20, 22, 23, 24, 24, 24, 24, 25)
# 制動距離
dist <- c(2, 10, 4, 22, 16, 10, 18, 26, 34, 17, 28, 14, 20, 24, 28, 26, 34, 34, 46, 26, 36, 60, 80, 20, 26,
54, 32, 40, 32, 40, 50, 42, 56, 76, 84, 36, 46, 68, 32, 48, 52, 56, 64, 66, 54, 70, 92, 93, 120, 85)
# 行列にまとめる
dat1 <- cbind(speed,dist)
#-------------------------------------------------------
# 脱線) R で嬉しいこと [A)の dat1 を使用]
#-------------------------------------------------------
plot(dat1) # 散布図描画
summary(dat1) # データの基本統計量
lm1 <- lm(dist~speed) # 回帰分析
summary(lm1) # 回帰分析結果表示
abline(lm1, col= "red") # 回帰線描画
str(lm1) # lm1 の内容確認
#-------------------------------------------------------
# B) データエディタの利用
#-------------------------------------------------------
# まず空のデータフレーム dat2 を作成
dat2 <- data.frame()
# コンソールのメニューを操作する場合は「編集」 => 「データエディタ」
# 同じ操作を以下のコマンドでできる
fix(dat2)
#-------------------------------------------------------
# C) CSV ファイルの読み込み、その 1
#-------------------------------------------------------
# 最もお手軽な方法
data1 <- read.csv(file.choose())
head(data1) # データの冒頭だけ表示
tail(data1) # データの末尾だけ表示
# 使用データ cars.csv
# 以下の部分をテキストエディタに貼り、cars.csv として保存する
speed,dist
4,2
4,10
7,4
7,22
8,16
9,10
10,18
10,26
10,34
11,17
11,28
12,14
12,20
12,24
12,28
13,26
13,34
13,34
13,46
14,26
14,36
14,60
14,80
15,20
15,26
15,54
16,32
16,40
17,32
17,40
17,50
18,42
18,56
18,76
18,84
19,36
19,46
19,68
20,32
20,48
20,52
20,56
20,64
22,66
23,54
24,70
24,92
24,93
24,120
25,85
#-------------------------------------------------------
# C) CSV ファイルの読み込み、その 2
#-------------------------------------------------------
setwd("C:/Rdemo") # 読みたいファイルを置いたディレクトリを指定する
dat3 <- read.csv("cars2.csv", header=TRUE)
# データにヘッダがない場合は header=FALSE を指定
head(dat3) # データの冒頭だけ表示
tail(dat3) # データの末尾だけ表示
# 使用データ cars2.csv
# 以下の部分をテキストエディタに貼り、cars2.csv として保存する
# テキストエディタ上では、先の cars.csv との差異は明らかだが、EXCEL で開く
# 場合には同じにみえてしまう
speed,dist,
4,2
4,10
7,4
7,22
8,16
9,10
10,18
10,26
10,34
11,17
11,28
12,14
12,20
12,24
12,28
13,26
13,34
13,34
13,46
14,26
14,36
14,60
14,80
15,20
15,26
15,54
16,32
16,40
17,32
17,40
17,50
18,42
18,56
18,76
18,84
19,36
19,46
19,68
20,32
20,48
20,52
20,56
20,64
22,66
23,54
24,70
24,92
24,93
24,120
25,85,
,,,,,
,,,,,
#-------------------------------------------------------
# D) 区切り文字のない固定長ファイルの読み込み
#-------------------------------------------------------
wt1 <- c(10, 8) # 各項目の桁数
cn1 <- c("speed", "dist") # 項目名
dat4 <- read.fwf("cars.txt", widths=wt1, col.names=cn1)
head(dat4) # データの冒頭だけ表示
tail(dat4) # データの末尾だけ表示
# 使用データ cars.txt
# 以下の部分をテキストエディタに貼り、cars.txt として保存する
4 2
4 10
7 4
7 22
8 16
9 10
10 18
10 26
10 34
11 17
11 28
12 14
12 20
12 24
12 28
13 26
13 34
13 34
13 46
14 26
14 36
14 60
14 80
15 20
15 26
15 54
16 32
16 40
17 32
17 40
17 50
18 42
18 56
18 76
18 84
19 36
19 46
19 68
20 32
20 48
20 52
20 56
20 64
22 66
23 54
24 70
24 92
24 93
24 120
25 85
#-------------------------------------------------------
# E) 複数の csv ファイルをまとめて
#-------------------------------------------------------
# 事前準備
#-----------------------------
# 例えば、各人の作業フォルダを「Y:/PC123/」として、その下にサブフォルダ「giji」、
# さらにその下にデータファイルを置く「data」フォルダを置く。
# つまり、「Y:/PC123/giji/data/」という構成にして、data の下には大元の擬似ミクロ
# データ関連ファイル、giji の下には新たに作成したファイル類を置く
#-----------------------------
# E-5. まず 1 本読んでみる
#-----------------------------
setwd("Y:/PC123/giji/data") # ※ 「PC123」の部分は各人の作業フォルダを指定する #要修正%%%
giji1 <- read.csv("GIJI_2004zensho_dataset(00001~05000).csv", header=FALSE)
head(giji1)
tail(giji1)
#-----------------------------
# E-8. まとめて
#-----------------------------
##### EXCEL で作ったコンスタント表 code.csv は、giji フォルダに置く
rm(list=ls(all=TRUE)) # 作業領域のお掃除
cd1 <- read.csv("Y:/PC123/giji/code.csv", header=TRUE) #要修正%%%
tail(cd1)
a1 <- which(!is.na(cd1$ren)) # コンスタントファイル末尾の
cd1 <- cd1[a1,] # ブランク行削除
tail(cd1) # cd1 の末尾確認
# 因子属性への変換抑制フラグ作成 (ただし、データに数字以外の文字列があれば因子化は抑制されない)
ft1 <- rep(TRUE, dim(cd1)[1])
ft1[which(cd1$type == 2)] <- FALSE
# 命名規則を指定してデータファイル名の一覧を取得
setwd("Y:/PC123/giji/data") # カレントディレクトリを擬似ミクロデータがある場所に指定 #要修正%%%
(f.list <- list.files(path=getwd(), pattern="*).csv"))
dt1 <- do.call("rbind", lapply(f.list, read.csv, col.names=cd1$namae, as.is=ft1, header=FALSE))
dim(dt1) # [1] 32027 197
###########################################
# II. 出力の方法
###########################################
#-------------------------------------------------------
# A) ワークスペース全体の保存
#-------------------------------------------------------
save.image("Kensyuu1")
#-------------------------------------------------------
# B) コード履歴の保存
#-------------------------------------------------------
# メニューバーで操作します
#-------------------------------------------------------
# C) バイナリファイル
#-------------------------------------------------------
setwd("Y:/PC123/giji/") #要修正%%%
save(cd1, dt1, file="giji.rdata")
# データレイアウト情報 cd1 とデータ dt1 を giji.Rdata として保存
# 第三部でも使用するので、必ずこのファイルを作成し、保存してください。
#-------------------------------------------------------
# D) CSV ファイル
#-------------------------------------------------------
#setwd("Y:/PC123/giji") # 必要に応じて保存したいディレクトリを指定
data(iris)# 5 変数 150 レコードのあやめデータをロード
write.csv(iris, file="iris.csv")
write.csv(iris, file="iris1.csv", quote=FALSE, row.names=FALSE)
###########################################

Mais conteúdo relacionado

Destaque

HTTP/2 in nginx(2016/3/11 社内勉強会)
HTTP/2 in nginx(2016/3/11 社内勉強会)HTTP/2 in nginx(2016/3/11 社内勉強会)
HTTP/2 in nginx(2016/3/11 社内勉強会)Yoko TAMADA
 
Rプログラミング03 データ分析編
Rプログラミング03 データ分析編Rプログラミング03 データ分析編
Rプログラミング03 データ分析編wada, kazumi
 
From Java To Clojure (English version)
From Java To Clojure (English version)From Java To Clojure (English version)
From Java To Clojure (English version)Kent Ohashi
 
ネットワーク概論 サーバの構築理論
ネットワーク概論 サーバの構築理論ネットワーク概論 サーバの構築理論
ネットワーク概論 サーバの構築理論Takahiro Komatsu
 
おいしいLisp
おいしいLispおいしいLisp
おいしいLispKent Ohashi
 
困らない程度のJDK入門
困らない程度のJDK入門困らない程度のJDK入門
困らない程度のJDK入門Yohei Oda
 

Destaque (7)

MP in Haskell
MP in HaskellMP in Haskell
MP in Haskell
 
HTTP/2 in nginx(2016/3/11 社内勉強会)
HTTP/2 in nginx(2016/3/11 社内勉強会)HTTP/2 in nginx(2016/3/11 社内勉強会)
HTTP/2 in nginx(2016/3/11 社内勉強会)
 
Rプログラミング03 データ分析編
Rプログラミング03 データ分析編Rプログラミング03 データ分析編
Rプログラミング03 データ分析編
 
From Java To Clojure (English version)
From Java To Clojure (English version)From Java To Clojure (English version)
From Java To Clojure (English version)
 
ネットワーク概論 サーバの構築理論
ネットワーク概論 サーバの構築理論ネットワーク概論 サーバの構築理論
ネットワーク概論 サーバの構築理論
 
おいしいLisp
おいしいLispおいしいLisp
おいしいLisp
 
困らない程度のJDK入門
困らない程度のJDK入門困らない程度のJDK入門
困らない程度のJDK入門
 

Semelhante a Rデモ02_入出力編2016

Rプログラミング01 「はじめの一歩」 演習デモ
Rプログラミング01 「はじめの一歩」 演習デモRプログラミング01 「はじめの一歩」 演習デモ
Rプログラミング01 「はじめの一歩」 演習デモwada, kazumi
 
PostgreSQL14の pg_stat_statements 改善(第23回PostgreSQLアンカンファレンス@オンライン 発表資料)
PostgreSQL14の pg_stat_statements 改善(第23回PostgreSQLアンカンファレンス@オンライン 発表資料)PostgreSQL14の pg_stat_statements 改善(第23回PostgreSQLアンカンファレンス@オンライン 発表資料)
PostgreSQL14の pg_stat_statements 改善(第23回PostgreSQLアンカンファレンス@オンライン 発表資料)NTT DATA Technology & Innovation
 
Maatkit で MySQL チューニング
Maatkit で MySQL チューニングMaatkit で MySQL チューニング
Maatkit で MySQL チューニングKensuke Nagae
 
Ⅲ. 資料編 2017
Ⅲ. 資料編 2017Ⅲ. 資料編 2017
Ⅲ. 資料編 2017wada, kazumi
 
文献紹介:SegFormer: Simple and Efficient Design for Semantic Segmentation with Tr...
文献紹介:SegFormer: Simple and Efficient Design for Semantic Segmentation with Tr...文献紹介:SegFormer: Simple and Efficient Design for Semantic Segmentation with Tr...
文献紹介:SegFormer: Simple and Efficient Design for Semantic Segmentation with Tr...Toru Tamaki
 
Ruby を用いた超絶技巧プログラミング(夏のプログラミングシンポジウム 2012)
Ruby を用いた超絶技巧プログラミング(夏のプログラミングシンポジウム 2012)Ruby を用いた超絶技巧プログラミング(夏のプログラミングシンポジウム 2012)
Ruby を用いた超絶技巧プログラミング(夏のプログラミングシンポジウム 2012)mametter
 
Apache Drill でオープンデータを分析してみる - db tech showcase Sapporo 2015 2015/09/11
Apache Drill でオープンデータを分析してみる - db tech showcase Sapporo 2015 2015/09/11Apache Drill でオープンデータを分析してみる - db tech showcase Sapporo 2015 2015/09/11
Apache Drill でオープンデータを分析してみる - db tech showcase Sapporo 2015 2015/09/11MapR Technologies Japan
 
KETpic できれいな図を書こう
KETpic できれいな図を書こうKETpic できれいな図を書こう
KETpic できれいな図を書こうYoshitomo Akimoto
 
PostgreSQL Unconference #5 ICU Collation
PostgreSQL Unconference #5 ICU CollationPostgreSQL Unconference #5 ICU Collation
PostgreSQL Unconference #5 ICU CollationNoriyoshi Shinoda
 
MySQLerの7つ道具
MySQLerの7つ道具MySQLerの7つ道具
MySQLerの7つ道具yoku0825
 
[A33] [特濃jpoug statspack on pdb oracle database 12c] 20131115 補足・続報付き
[A33] [特濃jpoug statspack on pdb oracle database 12c] 20131115 補足・続報付き[A33] [特濃jpoug statspack on pdb oracle database 12c] 20131115 補足・続報付き
[A33] [特濃jpoug statspack on pdb oracle database 12c] 20131115 補足・続報付きInsight Technology, Inc.
 
PostgreSQL Unconference #29 Unicode IVS
PostgreSQL Unconference #29 Unicode IVSPostgreSQL Unconference #29 Unicode IVS
PostgreSQL Unconference #29 Unicode IVSNoriyoshi Shinoda
 
並列対決 Elixir × Go × C# x Scala , Node.js
並列対決 Elixir × Go × C# x Scala , Node.js並列対決 Elixir × Go × C# x Scala , Node.js
並列対決 Elixir × Go × C# x Scala , Node.jsYoshiiro Ueno
 
C++でHello worldを書いてみた
C++でHello worldを書いてみたC++でHello worldを書いてみた
C++でHello worldを書いてみたfirewood
 
CentOS 8で標準搭載! 「389-ds」で構築する 認証サーバーについて
CentOS 8で標準搭載! 「389-ds」で構築する 認証サーバーについてCentOS 8で標準搭載! 「389-ds」で構築する 認証サーバーについて
CentOS 8で標準搭載! 「389-ds」で構築する 認証サーバーについてNobuyuki Sasaki
 

Semelhante a Rデモ02_入出力編2016 (20)

about dakota6.7 gui
about dakota6.7 guiabout dakota6.7 gui
about dakota6.7 gui
 
about DakotagUI
about DakotagUIabout DakotagUI
about DakotagUI
 
Rプログラミング01 「はじめの一歩」 演習デモ
Rプログラミング01 「はじめの一歩」 演習デモRプログラミング01 「はじめの一歩」 演習デモ
Rプログラミング01 「はじめの一歩」 演習デモ
 
PostgreSQL14の pg_stat_statements 改善(第23回PostgreSQLアンカンファレンス@オンライン 発表資料)
PostgreSQL14の pg_stat_statements 改善(第23回PostgreSQLアンカンファレンス@オンライン 発表資料)PostgreSQL14の pg_stat_statements 改善(第23回PostgreSQLアンカンファレンス@オンライン 発表資料)
PostgreSQL14の pg_stat_statements 改善(第23回PostgreSQLアンカンファレンス@オンライン 発表資料)
 
Maatkit で MySQL チューニング
Maatkit で MySQL チューニングMaatkit で MySQL チューニング
Maatkit で MySQL チューニング
 
Ⅲ. 資料編 2017
Ⅲ. 資料編 2017Ⅲ. 資料編 2017
Ⅲ. 資料編 2017
 
文献紹介:SegFormer: Simple and Efficient Design for Semantic Segmentation with Tr...
文献紹介:SegFormer: Simple and Efficient Design for Semantic Segmentation with Tr...文献紹介:SegFormer: Simple and Efficient Design for Semantic Segmentation with Tr...
文献紹介:SegFormer: Simple and Efficient Design for Semantic Segmentation with Tr...
 
Ruby を用いた超絶技巧プログラミング(夏のプログラミングシンポジウム 2012)
Ruby を用いた超絶技巧プログラミング(夏のプログラミングシンポジウム 2012)Ruby を用いた超絶技巧プログラミング(夏のプログラミングシンポジウム 2012)
Ruby を用いた超絶技巧プログラミング(夏のプログラミングシンポジウム 2012)
 
Apache Drill でオープンデータを分析してみる - db tech showcase Sapporo 2015 2015/09/11
Apache Drill でオープンデータを分析してみる - db tech showcase Sapporo 2015 2015/09/11Apache Drill でオープンデータを分析してみる - db tech showcase Sapporo 2015 2015/09/11
Apache Drill でオープンデータを分析してみる - db tech showcase Sapporo 2015 2015/09/11
 
KETpic できれいな図を書こう
KETpic できれいな図を書こうKETpic できれいな図を書こう
KETpic できれいな図を書こう
 
Maatkitの紹介
Maatkitの紹介Maatkitの紹介
Maatkitの紹介
 
PostgreSQL Unconference #5 ICU Collation
PostgreSQL Unconference #5 ICU CollationPostgreSQL Unconference #5 ICU Collation
PostgreSQL Unconference #5 ICU Collation
 
MySQLerの7つ道具
MySQLerの7つ道具MySQLerの7つ道具
MySQLerの7つ道具
 
[A33] [特濃jpoug statspack on pdb oracle database 12c] 20131115 補足・続報付き
[A33] [特濃jpoug statspack on pdb oracle database 12c] 20131115 補足・続報付き[A33] [特濃jpoug statspack on pdb oracle database 12c] 20131115 補足・続報付き
[A33] [特濃jpoug statspack on pdb oracle database 12c] 20131115 補足・続報付き
 
PostgreSQL Unconference #29 Unicode IVS
PostgreSQL Unconference #29 Unicode IVSPostgreSQL Unconference #29 Unicode IVS
PostgreSQL Unconference #29 Unicode IVS
 
並列対決 Elixir × Go × C# x Scala , Node.js
並列対決 Elixir × Go × C# x Scala , Node.js並列対決 Elixir × Go × C# x Scala , Node.js
並列対決 Elixir × Go × C# x Scala , Node.js
 
#crazy-js Quiz
#crazy-js Quiz#crazy-js Quiz
#crazy-js Quiz
 
C++でHello worldを書いてみた
C++でHello worldを書いてみたC++でHello worldを書いてみた
C++でHello worldを書いてみた
 
CentOS 8で標準搭載! 「389-ds」で構築する 認証サーバーについて
CentOS 8で標準搭載! 「389-ds」で構築する 認証サーバーについてCentOS 8で標準搭載! 「389-ds」で構築する 認証サーバーについて
CentOS 8で標準搭載! 「389-ds」で構築する 認証サーバーについて
 
Introduction to R
Introduction to RIntroduction to R
Introduction to R
 

Mais de wada, kazumi

Rによる繰り返しの並列処理
Rによる繰り返しの並列処理Rによる繰り返しの並列処理
Rによる繰り返しの並列処理wada, kazumi
 
2018Rユーザ会用
2018Rユーザ会用2018Rユーザ会用
2018Rユーザ会用wada, kazumi
 
Ⅳ. 可視化事例集 2017
Ⅳ. 可視化事例集 2017Ⅳ. 可視化事例集 2017
Ⅳ. 可視化事例集 2017wada, kazumi
 
Ⅱ. データ分析編 2017
Ⅱ. データ分析編 2017Ⅱ. データ分析編 2017
Ⅱ. データ分析編 2017wada, kazumi
 
Ⅰ. Rの基礎 2017
Ⅰ. Rの基礎 2017Ⅰ. Rの基礎 2017
Ⅰ. Rの基礎 2017wada, kazumi
 
2017Rユーザ会用
2017Rユーザ会用2017Rユーザ会用
2017Rユーザ会用wada, kazumi
 
統計環境R_データ分析編2016
統計環境R_データ分析編2016統計環境R_データ分析編2016
統計環境R_データ分析編2016wada, kazumi
 
統計環境R_はじめの一歩2016
統計環境R_はじめの一歩2016統計環境R_はじめの一歩2016
統計環境R_はじめの一歩2016wada, kazumi
 
統計環境R_データ入出力編2016
統計環境R_データ入出力編2016統計環境R_データ入出力編2016
統計環境R_データ入出力編2016wada, kazumi
 
自然科学の統計学2.2 slideshare
自然科学の統計学2.2 slideshare自然科学の統計学2.2 slideshare
自然科学の統計学2.2 slidesharewada, kazumi
 
Rプログラミング03 「データ分析編」デモ
Rプログラミング03 「データ分析編」デモRプログラミング03 「データ分析編」デモ
Rプログラミング03 「データ分析編」デモwada, kazumi
 
Rでのtry関数によるエラー処理
Rでのtry関数によるエラー処理Rでのtry関数によるエラー処理
Rでのtry関数によるエラー処理wada, kazumi
 
Rによる大規模データのプロット
Rによる大規模データのプロットRによる大規模データのプロット
Rによる大規模データのプロットwada, kazumi
 
擬似ミクロデータについて
擬似ミクロデータについて擬似ミクロデータについて
擬似ミクロデータについてwada, kazumi
 
Rによる富士山関数の描き方
Rによる富士山関数の描き方Rによる富士山関数の描き方
Rによる富士山関数の描き方wada, kazumi
 
Rによるprincomp関数を使わない主成分分析
Rによるprincomp関数を使わない主成分分析Rによるprincomp関数を使わない主成分分析
Rによるprincomp関数を使わない主成分分析wada, kazumi
 
基本統計量について
基本統計量について基本統計量について
基本統計量についてwada, kazumi
 
マハラノビス距離とユークリッド距離の違い
マハラノビス距離とユークリッド距離の違いマハラノビス距離とユークリッド距離の違い
マハラノビス距離とユークリッド距離の違いwada, kazumi
 
Rでの対称行列の固有値・固有ベクトルの最適な求め方
Rでの対称行列の固有値・固有ベクトルの最適な求め方Rでの対称行列の固有値・固有ベクトルの最適な求め方
Rでの対称行列の固有値・固有ベクトルの最適な求め方wada, kazumi
 
Rによるlm関数を使わない回帰と梃子比・cookの距離
Rによるlm関数を使わない回帰と梃子比・cookの距離 Rによるlm関数を使わない回帰と梃子比・cookの距離
Rによるlm関数を使わない回帰と梃子比・cookの距離 wada, kazumi
 

Mais de wada, kazumi (20)

Rによる繰り返しの並列処理
Rによる繰り返しの並列処理Rによる繰り返しの並列処理
Rによる繰り返しの並列処理
 
2018Rユーザ会用
2018Rユーザ会用2018Rユーザ会用
2018Rユーザ会用
 
Ⅳ. 可視化事例集 2017
Ⅳ. 可視化事例集 2017Ⅳ. 可視化事例集 2017
Ⅳ. 可視化事例集 2017
 
Ⅱ. データ分析編 2017
Ⅱ. データ分析編 2017Ⅱ. データ分析編 2017
Ⅱ. データ分析編 2017
 
Ⅰ. Rの基礎 2017
Ⅰ. Rの基礎 2017Ⅰ. Rの基礎 2017
Ⅰ. Rの基礎 2017
 
2017Rユーザ会用
2017Rユーザ会用2017Rユーザ会用
2017Rユーザ会用
 
統計環境R_データ分析編2016
統計環境R_データ分析編2016統計環境R_データ分析編2016
統計環境R_データ分析編2016
 
統計環境R_はじめの一歩2016
統計環境R_はじめの一歩2016統計環境R_はじめの一歩2016
統計環境R_はじめの一歩2016
 
統計環境R_データ入出力編2016
統計環境R_データ入出力編2016統計環境R_データ入出力編2016
統計環境R_データ入出力編2016
 
自然科学の統計学2.2 slideshare
自然科学の統計学2.2 slideshare自然科学の統計学2.2 slideshare
自然科学の統計学2.2 slideshare
 
Rプログラミング03 「データ分析編」デモ
Rプログラミング03 「データ分析編」デモRプログラミング03 「データ分析編」デモ
Rプログラミング03 「データ分析編」デモ
 
Rでのtry関数によるエラー処理
Rでのtry関数によるエラー処理Rでのtry関数によるエラー処理
Rでのtry関数によるエラー処理
 
Rによる大規模データのプロット
Rによる大規模データのプロットRによる大規模データのプロット
Rによる大規模データのプロット
 
擬似ミクロデータについて
擬似ミクロデータについて擬似ミクロデータについて
擬似ミクロデータについて
 
Rによる富士山関数の描き方
Rによる富士山関数の描き方Rによる富士山関数の描き方
Rによる富士山関数の描き方
 
Rによるprincomp関数を使わない主成分分析
Rによるprincomp関数を使わない主成分分析Rによるprincomp関数を使わない主成分分析
Rによるprincomp関数を使わない主成分分析
 
基本統計量について
基本統計量について基本統計量について
基本統計量について
 
マハラノビス距離とユークリッド距離の違い
マハラノビス距離とユークリッド距離の違いマハラノビス距離とユークリッド距離の違い
マハラノビス距離とユークリッド距離の違い
 
Rでの対称行列の固有値・固有ベクトルの最適な求め方
Rでの対称行列の固有値・固有ベクトルの最適な求め方Rでの対称行列の固有値・固有ベクトルの最適な求め方
Rでの対称行列の固有値・固有ベクトルの最適な求め方
 
Rによるlm関数を使わない回帰と梃子比・cookの距離
Rによるlm関数を使わない回帰と梃子比・cookの距離 Rによるlm関数を使わない回帰と梃子比・cookの距離
Rによるlm関数を使わない回帰と梃子比・cookの距離
 

Último

UniProject Workshop Make a Discord Bot with JavaScript
UniProject Workshop Make a Discord Bot with JavaScriptUniProject Workshop Make a Discord Bot with JavaScript
UniProject Workshop Make a Discord Bot with JavaScriptyuitoakatsukijp
 
東京工業大学 環境・社会理工学院 建築学系 大学院入学入試・進学説明会2024_v2
東京工業大学 環境・社会理工学院 建築学系 大学院入学入試・進学説明会2024_v2東京工業大学 環境・社会理工学院 建築学系 大学院入学入試・進学説明会2024_v2
東京工業大学 環境・社会理工学院 建築学系 大学院入学入試・進学説明会2024_v2Tokyo Institute of Technology
 
ゲーム理論 BASIC 演習106 -価格の交渉ゲーム-#ゲーム理論 #gametheory #数学
ゲーム理論 BASIC 演習106 -価格の交渉ゲーム-#ゲーム理論 #gametheory #数学ゲーム理論 BASIC 演習106 -価格の交渉ゲーム-#ゲーム理論 #gametheory #数学
ゲーム理論 BASIC 演習106 -価格の交渉ゲーム-#ゲーム理論 #gametheory #数学ssusere0a682
 
ゲーム理論 BASIC 演習105 -n人囚人のジレンマモデル- #ゲーム理論 #gametheory #数学
ゲーム理論 BASIC 演習105 -n人囚人のジレンマモデル- #ゲーム理論 #gametheory #数学ゲーム理論 BASIC 演習105 -n人囚人のジレンマモデル- #ゲーム理論 #gametheory #数学
ゲーム理論 BASIC 演習105 -n人囚人のジレンマモデル- #ゲーム理論 #gametheory #数学ssusere0a682
 
The_Five_Books_Overview_Presentation_2024
The_Five_Books_Overview_Presentation_2024The_Five_Books_Overview_Presentation_2024
The_Five_Books_Overview_Presentation_2024koheioishi1
 
生成AIの回答内容の修正を課題としたレポートについて:お茶の水女子大学「授業・研究における生成系AIの活用事例」での講演資料
生成AIの回答内容の修正を課題としたレポートについて:お茶の水女子大学「授業・研究における生成系AIの活用事例」での講演資料生成AIの回答内容の修正を課題としたレポートについて:お茶の水女子大学「授業・研究における生成系AIの活用事例」での講演資料
生成AIの回答内容の修正を課題としたレポートについて:お茶の水女子大学「授業・研究における生成系AIの活用事例」での講演資料Takayuki Itoh
 
TokyoTechGraduateExaminationPresentation
TokyoTechGraduateExaminationPresentationTokyoTechGraduateExaminationPresentation
TokyoTechGraduateExaminationPresentationYukiTerazawa
 

Último (7)

UniProject Workshop Make a Discord Bot with JavaScript
UniProject Workshop Make a Discord Bot with JavaScriptUniProject Workshop Make a Discord Bot with JavaScript
UniProject Workshop Make a Discord Bot with JavaScript
 
東京工業大学 環境・社会理工学院 建築学系 大学院入学入試・進学説明会2024_v2
東京工業大学 環境・社会理工学院 建築学系 大学院入学入試・進学説明会2024_v2東京工業大学 環境・社会理工学院 建築学系 大学院入学入試・進学説明会2024_v2
東京工業大学 環境・社会理工学院 建築学系 大学院入学入試・進学説明会2024_v2
 
ゲーム理論 BASIC 演習106 -価格の交渉ゲーム-#ゲーム理論 #gametheory #数学
ゲーム理論 BASIC 演習106 -価格の交渉ゲーム-#ゲーム理論 #gametheory #数学ゲーム理論 BASIC 演習106 -価格の交渉ゲーム-#ゲーム理論 #gametheory #数学
ゲーム理論 BASIC 演習106 -価格の交渉ゲーム-#ゲーム理論 #gametheory #数学
 
ゲーム理論 BASIC 演習105 -n人囚人のジレンマモデル- #ゲーム理論 #gametheory #数学
ゲーム理論 BASIC 演習105 -n人囚人のジレンマモデル- #ゲーム理論 #gametheory #数学ゲーム理論 BASIC 演習105 -n人囚人のジレンマモデル- #ゲーム理論 #gametheory #数学
ゲーム理論 BASIC 演習105 -n人囚人のジレンマモデル- #ゲーム理論 #gametheory #数学
 
The_Five_Books_Overview_Presentation_2024
The_Five_Books_Overview_Presentation_2024The_Five_Books_Overview_Presentation_2024
The_Five_Books_Overview_Presentation_2024
 
生成AIの回答内容の修正を課題としたレポートについて:お茶の水女子大学「授業・研究における生成系AIの活用事例」での講演資料
生成AIの回答内容の修正を課題としたレポートについて:お茶の水女子大学「授業・研究における生成系AIの活用事例」での講演資料生成AIの回答内容の修正を課題としたレポートについて:お茶の水女子大学「授業・研究における生成系AIの活用事例」での講演資料
生成AIの回答内容の修正を課題としたレポートについて:お茶の水女子大学「授業・研究における生成系AIの活用事例」での講演資料
 
TokyoTechGraduateExaminationPresentation
TokyoTechGraduateExaminationPresentationTokyoTechGraduateExaminationPresentation
TokyoTechGraduateExaminationPresentation
 

Rデモ02_入出力編2016

  • 1. ########################################### # I. さまざまなデータの入力方法 ########################################### #------------------------------------------------------- # A) コンソールでの直接入力 dat1 (cars データ)作成 #------------------------------------------------------- # スピード speed <- c(4, 4, 7, 7, 8, 9, 10, 10, 10, 11, 11, 12, 12, 12, 12, 13, 13, 13, 13, 14, 14, 14, 14, 15, 15, 15, 16, 16, 17, 17, 17, 18, 18, 18, 18, 19, 19, 19, 20, 20, 20, 20, 20, 22, 23, 24, 24, 24, 24, 25) # 制動距離 dist <- c(2, 10, 4, 22, 16, 10, 18, 26, 34, 17, 28, 14, 20, 24, 28, 26, 34, 34, 46, 26, 36, 60, 80, 20, 26, 54, 32, 40, 32, 40, 50, 42, 56, 76, 84, 36, 46, 68, 32, 48, 52, 56, 64, 66, 54, 70, 92, 93, 120, 85) # 行列にまとめる dat1 <- cbind(speed,dist) #------------------------------------------------------- # 脱線) R で嬉しいこと [A)の dat1 を使用] #------------------------------------------------------- plot(dat1) # 散布図描画 summary(dat1) # データの基本統計量 lm1 <- lm(dist~speed) # 回帰分析 summary(lm1) # 回帰分析結果表示 abline(lm1, col= "red") # 回帰線描画 str(lm1) # lm1 の内容確認 #------------------------------------------------------- # B) データエディタの利用 #------------------------------------------------------- # まず空のデータフレーム dat2 を作成 dat2 <- data.frame() # コンソールのメニューを操作する場合は「編集」 => 「データエディタ」 # 同じ操作を以下のコマンドでできる fix(dat2) #------------------------------------------------------- # C) CSV ファイルの読み込み、その 1 #-------------------------------------------------------
  • 2. # 最もお手軽な方法 data1 <- read.csv(file.choose()) head(data1) # データの冒頭だけ表示 tail(data1) # データの末尾だけ表示 # 使用データ cars.csv # 以下の部分をテキストエディタに貼り、cars.csv として保存する speed,dist 4,2 4,10 7,4 7,22 8,16 9,10 10,18 10,26 10,34 11,17 11,28 12,14 12,20 12,24 12,28 13,26 13,34 13,34 13,46 14,26 14,36 14,60 14,80 15,20 15,26 15,54 16,32 16,40 17,32 17,40 17,50 18,42 18,56 18,76 18,84
  • 3. 19,36 19,46 19,68 20,32 20,48 20,52 20,56 20,64 22,66 23,54 24,70 24,92 24,93 24,120 25,85 #------------------------------------------------------- # C) CSV ファイルの読み込み、その 2 #------------------------------------------------------- setwd("C:/Rdemo") # 読みたいファイルを置いたディレクトリを指定する dat3 <- read.csv("cars2.csv", header=TRUE) # データにヘッダがない場合は header=FALSE を指定 head(dat3) # データの冒頭だけ表示 tail(dat3) # データの末尾だけ表示 # 使用データ cars2.csv # 以下の部分をテキストエディタに貼り、cars2.csv として保存する # テキストエディタ上では、先の cars.csv との差異は明らかだが、EXCEL で開く # 場合には同じにみえてしまう speed,dist, 4,2 4,10 7,4 7,22 8,16 9,10 10,18 10,26 10,34 11,17 11,28 12,14
  • 5. wt1 <- c(10, 8) # 各項目の桁数 cn1 <- c("speed", "dist") # 項目名 dat4 <- read.fwf("cars.txt", widths=wt1, col.names=cn1) head(dat4) # データの冒頭だけ表示 tail(dat4) # データの末尾だけ表示 # 使用データ cars.txt # 以下の部分をテキストエディタに貼り、cars.txt として保存する 4 2 4 10 7 4 7 22 8 16 9 10 10 18 10 26 10 34 11 17 11 28 12 14 12 20 12 24 12 28 13 26 13 34 13 34 13 46 14 26 14 36 14 60 14 80 15 20 15 26 15 54 16 32 16 40 17 32 17 40 17 50 18 42 18 56 18 76
  • 6. 18 84 19 36 19 46 19 68 20 32 20 48 20 52 20 56 20 64 22 66 23 54 24 70 24 92 24 93 24 120 25 85 #------------------------------------------------------- # E) 複数の csv ファイルをまとめて #------------------------------------------------------- # 事前準備 #----------------------------- # 例えば、各人の作業フォルダを「Y:/PC123/」として、その下にサブフォルダ「giji」、 # さらにその下にデータファイルを置く「data」フォルダを置く。 # つまり、「Y:/PC123/giji/data/」という構成にして、data の下には大元の擬似ミクロ # データ関連ファイル、giji の下には新たに作成したファイル類を置く #----------------------------- # E-5. まず 1 本読んでみる #----------------------------- setwd("Y:/PC123/giji/data") # ※ 「PC123」の部分は各人の作業フォルダを指定する #要修正%%% giji1 <- read.csv("GIJI_2004zensho_dataset(00001~05000).csv", header=FALSE) head(giji1) tail(giji1) #----------------------------- # E-8. まとめて #----------------------------- ##### EXCEL で作ったコンスタント表 code.csv は、giji フォルダに置く rm(list=ls(all=TRUE)) # 作業領域のお掃除 cd1 <- read.csv("Y:/PC123/giji/code.csv", header=TRUE) #要修正%%% tail(cd1) a1 <- which(!is.na(cd1$ren)) # コンスタントファイル末尾の
  • 7. cd1 <- cd1[a1,] # ブランク行削除 tail(cd1) # cd1 の末尾確認 # 因子属性への変換抑制フラグ作成 (ただし、データに数字以外の文字列があれば因子化は抑制されない) ft1 <- rep(TRUE, dim(cd1)[1]) ft1[which(cd1$type == 2)] <- FALSE # 命名規則を指定してデータファイル名の一覧を取得 setwd("Y:/PC123/giji/data") # カレントディレクトリを擬似ミクロデータがある場所に指定 #要修正%%% (f.list <- list.files(path=getwd(), pattern="*).csv")) dt1 <- do.call("rbind", lapply(f.list, read.csv, col.names=cd1$namae, as.is=ft1, header=FALSE)) dim(dt1) # [1] 32027 197 ########################################### # II. 出力の方法 ########################################### #------------------------------------------------------- # A) ワークスペース全体の保存 #------------------------------------------------------- save.image("Kensyuu1") #------------------------------------------------------- # B) コード履歴の保存 #------------------------------------------------------- # メニューバーで操作します #------------------------------------------------------- # C) バイナリファイル #------------------------------------------------------- setwd("Y:/PC123/giji/") #要修正%%% save(cd1, dt1, file="giji.rdata") # データレイアウト情報 cd1 とデータ dt1 を giji.Rdata として保存 # 第三部でも使用するので、必ずこのファイルを作成し、保存してください。 #------------------------------------------------------- # D) CSV ファイル #------------------------------------------------------- #setwd("Y:/PC123/giji") # 必要に応じて保存したいディレクトリを指定 data(iris)# 5 変数 150 レコードのあやめデータをロード write.csv(iris, file="iris.csv") write.csv(iris, file="iris1.csv", quote=FALSE, row.names=FALSE) ###########################################