Takuro について

福井高専一般科目教室准教授

Rによるデータフレームの読み込みとベクトルへの変換

外部ファイル(csvファイル)を統計ソフトRに読み込み、特定の列をベクトルに変換する方法。R mac版の場合。備忘録を兼ねて。

① 作業ディレクトリを設定する。

R→環境設定→起動と進むと、「ディレクトリ」を設定する場面が出てくるので、任意の場所に決める。指定したディレクトリの中にcsvファイルを保存する。ディレクトリを設定しないとファイルを読み込むことができない(と思われる)ので、注意。

② csvファイルを読み込む:

csvファイルの1行目が項目名の場合はheader=TRUEを記述する

x<-read.csv(“sample.csv”, header=TRUE)      # xという文字に、sample.csvを読み込む

csvファイルの1行目から数値が入力されている場合はheader=Falseを記述する

x<-read.csv(“sample.csv”, header=F)

例:sample.csv(以下参照)を読み込む場合

———sample.csv———————-

participants  pre-test  post-test

1                  20            40

1                  18             38

1                  16             55

1                  14             40


1列目が項目名になっているため、header=TRUEを記述する。

> x         # xを読み込む
participants pre.test post.test
1            1       20        40
2            2       18        38
3            3       16        55
4            4       14        40

と表示されます。

③ 特定の行の数値をベクトルに変換する

上記のデータフレームからpre.testの数値だけを表示させる時には

x$pre.test   # xの中のpre.testの行を表示させる

と入力。すると

> x$pre.test
[1] 20 18 16 14

と返してきます。このプログラムと、as.vector()関数(( )内のものをベクトルに変える関数)を用いて、以下のように記述

> pre<-x$pre.test     # preという文字の中にsample.csvファイルのpre.testの行の数値を格納
> pre            # preと入力すると、以下の[1]のように返してくる。
[1] 20 18 16 14
> as.vector(pre)      # preに格納されている数値をベクトルに変換
[1] 20 18 16 14
> is.vector(pre)      # preがベクトルであるかを調べる関数
[1] TRUE

以上で終了。

この方法を知っているだけで、エクセルファイルでまとめたデータをRで入力して分析するのにとても楽になるような気がします。まだ試していませんが、c( )の中に一つ一つデータを手打ちで入れていくよりはよほど簡単なのは明白です。

Rのお勉強

本日仕事が終わってからは、いつものカフェで統計のお勉強。最近はPCを新調したこともあり、統計ソフトRをこれから使用できないかと思い、Rのお勉強をしています。Rはオープンソースの統計ソフトで誰でも無料で使用することができます。統計ソフトとしてはSPSSというソフトがとても便利ですが、個人で購入するには非常に高価なこともあり、Rへの移行を考えています。

Rは無料という点はすばらしいですが、SPSSのようないわゆる「クリック統計」に慣れ親しんだ僕のような人間にとっては非常に難しく感じるソフトです。一つ一つの計算をプログラムとして打ち込んでいかなければならず、手間がかかると言えば手間がかかります。しかし、一つ一つのステップを十分に考えながら打ち込まなければいけないこともあり、使用したい統計手法をステップごとに勉強していくことができるような気がします。統計処理の過程で「なぜこの計算をしなければいけないのか」ということを考え、統計の原理を理解するよう努めることで、統計の基礎的な知識を身につけると同時に無料で統計分析ができるようになると思います。

言うは易し、行うは・・・ですが、少しずつ地道に使いながら覚えていこうと思っています。

Rはこちらからダウンロードすることができます。無料です。

http://www.r-project.org/

Park, S. (2010). The influence of pretask instructions and pretask planning on focus on form

プリタスクプラニング、プリタスク時の指示と学習者の発話中のfocus on formとの関連を調べた論文です。

実験参加者は韓国人大学生110名で英語学習経験は平均11年。用いたタスクは写真描写タスク(6コママンガの説明)で、この辺りは他の先行研究とほぼ同じといったところでしょうか。独立変数として、Instruction types (general instruction か specific instructionか)、planning conditions ( + planning / – planning ) 、language focus (lexical focus / morphosyntax focus )が用いられました。従属変数ではlanguage related episodes (LRE)が用いられました。この研究が他の先行研究と異なる点は、先行研究が発話のproduct面、つまり流暢さ、複雑さ、正確さを測定して来たのに対して、この研究では学習者のLREを測定したところです。

結果として以下のことが分かりました。

(1) 学習者はinstruction typesやplanningの有無にかかわらず、同程度の量のLREを表出した。

(2) instruction typesやplanningの有無にかかわらず、学習者はmorphosyntactic LREよりもlexical LREをより表出した

(3) specific instructionを行ったときの方が、general instructionを行ったときよりもmorphosyntactic LREをより表出した。

この結果だけを見てみるとinstructionの種類を変えることで学習者の注意の方向をある程度コントロールできる可能性が示唆されますし、実際著者もしているように思います。また、planningそのものはLREの量に影響を与えなかったことも新たな示唆と言えそうです。