はじめに
以前,下記のようなブログ記事を書きました。
一言で言えば,教師側で作ったテンプレファイルをフォルダごと学生と共有し,学生は自分の名前のついているWordファイル上で執筆活動を行い,教師側はリアルタイムでその進捗をモニタしつつフィードバックを出していくというようなライティング授業実践です。
今年度からは3年次のライティング授業も持っていて,その授業ではペアでのcollaborative writingも取り入れています。最初はペアはこちらで作ってファイルは学生に作らせてリンクを教師と共有という形でやっていましたが,それだとやっぱり使い勝手が悪い(教師側が自分のローカルからファイル閲覧できないとか他にも色々問題ががが)というのがあって,やっぱり教師が学生のファイルを作るほうがいいだろうという結論に至りました。
超えるべきハードル
1. 学生のペアリング
これは昔知り合いの川口先生がブログ記事に書いていたような気がするなと調べたらすぐ見つかったので,そこの記事で紹介されているものをそのまま使いました。
2. ペアリングした文字列をファイル名に転用できるようにする
上記ブログ記事先のやり方でやると,リスト形式で学生のペアリングリストが手に入ります。ただし,それをファイル名に転用できるようにしようとするとひと手間工夫が必要です。リストのそれぞれの要素に入っているクォーテーションマークでくくられた名前を結合して1つにまとめる必要があるからです。
私がもともとやっていたのは,文字列ベクトルの1つ目から順番にとってきて,それをファイル名にするというものでした。今回はペアですので2人(もし奇数なら3人組もできる)の名前を1つのファイル名にしようということになります。
リスト内の要素を結合するには次のようにします。
sapply(pairing,paste,collapse="&")->pairing2
pairingがリスト形式のグループ分けです。最終的にpairing2という変数には
"TAMURA Yu&KAWAGUCHI Yusaku" "TERAI Masato&FUKUTA Junya"
といったように名前が&でつながれた文字列のベクトルが入っています。あとはテンプレファイル複製のやり方と同じです。
setwd(here("Week9&10"));getwd() #Create a folder before runnning this code
dirnow <-getwd()
list1<-list.files()
print(list1)
original<-file.path(dirnow,list1) #Use the original file name
filename1<-paste(pairing2,list1,sep="_")
print(filename1) #Check all the file names
for (i in 1:length(filename1)){
file.copy(from=original,to=paste(dirnow,filename1[i],sep="/"))
}
list.files()
私は”rename”というフォルダ内にその週の課題ファイルを入れるフォルダを作っています。そのrenameという場所にRStudioがあるので,そこがワーキングディレクトリとなっています。それをその1つ下の階層に移してあげるのが1行目です。”Week9&10″というのがフォルダ名ということですね。そこに, “2022_Spring_AW_Week9&10.docx”という名前のテンプレファイルが1つはいっています。
3,4行目はそのコピー元ファイルがちゃんとあることの確認ですね。6行目でペアリングされた学生の名前が&で結ばれたものと,テンプレファイル名をアンダーバーでくっつけています。こうすることで,filename1という変数内には,
"TAMURA Yu&KAWAGUCHI Yusaku_2022_Spring_AW_Week9&10.docx" "TERAI Masato&FUKUTA Junya_2022_Spring_AW_Week9&10.docx"
のような最終的に変換されるファイル名が入ります。あとはfor関数の中でfile.copy関数を使ってファイルを複製し,そのときのファイル名をさきほど作ったfilename1の1番から最後までにしてあげるということになっています。
最後に元のテンプレファイルをフォルダから削除し,renameフォルダ内から”Week9&10″をひとつ上の階層(私の場合授業のフォルダ)にあげてからフォルダごと共有リンクをLMSに貼ればOKです。学生側はフォルダにアクセスし,自分の名前が入ったファイル上でペアと一緒にライティングをしていくことになります。
補足
もしも,ペアリングは自動ではなく手動でやりたいという場合は,エクセルなんかで2列になったものをコピーして,pairing変数にいれてあげればあとは同じようにできると思います。
おわりに
このRのルーティンを作るのに調べ物とかも含めて1時間くらいかかりました。そこで気づいたのですが,自分の担当しているのクラスは12人という少クラスで6ペアしかできないので,こんなことしなくても手作業複製とファイル名変更したほうが作業効率がよかったのではないか…という。
もっと大人数のクラスでcollaborative writingをやろうと思っていて,でもファイル管理がめんどくさい…という方の助けになれば。
なにをゆう たむらゆう。
おしまい。
