作成者別アーカイブ: Yu Tamura

不明 のアバター

Yu Tamura について

第二言語習得の研究者。博士(学術)。英語教育のことや統計・データ分析に関わること、趣味のサッカーのことなどについて書いています。

【レビュー】タスク中のL1使用について

はじめに

超久しぶりに論文のレビュー記事。対象は以下の論文。メモ的なものです。

Xu, J., & Fan, Y. (2021). Task complexity, L2 proficiency and EFL learners’ L1 use in task-based peer interaction. Language Teaching Research, 13621688211004632. https://doi.org/10.1177/13621688211004633

概要

Task complexityの異なるinteractiveなタスクに取り組ませ,その中でのL1使用について,熟達度グループごとの比較をした研究です。上級グループでは複雑なタスクでL1の使用が増加しており,このL1使用はメタ認知的あるいは文法に関する会話の役割を担っていた。一方で,下級グループではそういった傾向は見られなかった。という話です。

本研究

RQ

  1. タスクの複雑さがL1使用に与える影響
  2. タスクの複雑さがL1使用に与える影響は熟達度によって異なるか
  3. タスクの複雑さはL1使用のどのような機能に影響を与えるか
  4. タスクの複雑さがL1使用の機能に与える影響は熟達度によって異なるか

参加者

  • 48人の中国語話者大学生
  • 大学一年生でレベルの違う2つの大学からリクルート(24ずつ)
  • レベルの高い方->high group, レベルの低い方-> low group

タスク

  • 複数コマのナレーションタスクで,Mr. Beanの動画の一部を10コマで表したものが2種類あって,それを二人で協力してナレーションするタイプの課題です(どっちの素材でもsimple/complexでやった)
  • 複雑さの操作
    • Robinsonのフレームワークの中で,+/- here and nowを選択
    • + here/now は絵を見ながら現在のこととして,-here/nowは写真を見ずに過去のこととしてという感じ(絵を見る時間は3分間でメモとかはなし)
    • expert ratingでも難しさの違いがあることは担保してる

手順

  • L1は使う必要があると感じたら使っても良いと言われている
  • within subject-designで同じ学習者が2つのタスクをやる

データコーディング

  • まずはL1の使用をコーディングして5つのカテゴリに分類
    – metacognitive talk(タスクのマネジメントなどについての発話)
    – grammar talk(文法について話す)
    – vocabulary talk(語彙について話す)
    – phatics(expressions such as ‘mmm, yeah, ok’みたいなものらしいです)
    – off-task talk(タスクとは直接関連しないもの)
  • L1使用の量については次の3つ
    • 全発話語のうちのL1の発話語
    • 全ターンのうちのL1のターン
    • predominant L1 turns(L2の語数と同じかそれよりもL1語数が多い)とminor L1 turnsに分類

結果

結果は以下の通り。

検定を何回もやるので有意水準を1%に設定
  • 語数とターンでは有意差あり(難しいほうがL1多め)
  • ただしpredominant L1 turnsでみると差はない
  • ただしSD広め
  • 一応RQ1はYES

熟達度別で見ると…

熟達度低いグループでは差がない->RQ2はYES

機能別では…


1%基準で有意なのはgrammarだけ


熟達度も入れてみてみると,高熟達度群でmetacognitive talkとgrammar talkだけsimple/complexの差が有意

議論

  • 以下の記述を見ると,そんなにL1使用が多かったとは著者たちは思ってないっぽい

Our results show that the participants did not use their shared L1 excessively, 27% in the simple tasks and 31% in the complex tasks. In other words, in spite of the fact that participants were allowed to use Chinese, students did not rely much on their L1,….

p.11
  • 先行研究よりは多かったということは言っているけど<-3割はさすがに多すぎでは?(今作っている教科書では,9割以上英語で話せたかというのを目安に自己評価をさせようということでいまのところやってます)
  • 意味中心のやりとりだとL1使用が多くなるとは言われているから,それが原因かも(Moore 2013, Tognini & Oliver 2012がそういうこと示したらしいけど,それどういうロジックなんだ?)<-読んでないです
  • more complex, more L1

熟達度に違いがあるL1使用例

論文中で会話のスクリプトが出てるんですがここでは要約だけ。

High group

  • complex task
    物語の詳細を描写しようとしたり,描写の質をあげるためにL1使ってる
  • simple task
    語彙を探しているときに使ってる

Low group

  • complex task
    – そもそも細かいとこまで描写しようとしてない
    – 過去形も使ってないし,それを修正しようともしない(low awareness towards linguistic forms)
  • simple task
    – こっちだと逆に細かいとこまで描写しようとする
    – でも能力的にそこまでできないのでL1を使う(主に語彙)
    – 結果的にどっちでもL1使用の量は変わらない

L1の機能

  • task management的な部分でL1使う(役割分担,どうやってナレーションするか,絵に含まれる情報,などについて話すときにL1使う)

なぜ高熟達度はL1使用多い?

  • 高熟達度群は,英語力にある程度自信があるので,より目標を高く設定して頑張ろうとする
  • その際にどうしたらうまくできるか試行錯誤する過程でL1が出てくるのではないか
  • 低熟達度群は,自分たちに自信がある内容自体とタスクを達成することに注力していた

感想

そもそも

complexなほうがL1多いと言うけれど,それはcomplexなタスクだからということではなく,学習者に与えるタスクとして(少なくともtaskを授業で使うという目的に照らして)間違っているということではないのかなというのが最初に思ったことです。機能をみたときにmetacognitive talkが他と比べてかなり多いというのは,タスクの進め方について十分な指示が与えられていなかったという解釈もできると思います。タスク遂行(今回であれば絵を描写すること)に必要なリソースは,タスク遂行についてのリソースとは異なるでしょう。pre-taskというとタスク遂行そのものへの準備に焦点がついつい向かってしまいますが,タスクをどう進めるかについても学習者はやり取りする必要が生じることはもっと認識されていいでしょう。そこでL1を使ってほしくないという思いがあるならば,task managementに必要な汎用性の高い表現は与えてしまって,それが使えるようにしてあげることはしても良いんじゃないかなと思います。そうでなければ,進め方を話し合わせなくてもタスクができるように具体的な指示を与えるべきでしょう。

そういったことまで含めて,大事なことはtask単体の複雑さどうこうの効果というよりも,授業の構成でそこをどうカバーするかだと思うし,授業の前後になにをやるかのほうがよっぽど授業内のL1使用に影響を与えるのではないかなと(それもtask complexityのmanipulationだと言われたらそうなんですけどね)。だとしたら,そうやっていろんな要因がある中で1つだけを取り上げてこういう形の研究やることって理論への貢献もあるのかないのかわからないし(いろんな要因の+/-を操作してL1の使用を調べた研究がたくさん集まったらメタ分析ですか?),実践の参考にもなりそうでそんなにならないですよね。

それタスクか?

あとは,ナレーションするタイプのタスクはいいとしてもそれを2人でやるっていうのは状況がかなり特殊だし,そもそもそれタスクとしてどうなん?という指摘もあると思います。インタラクティブなタスクをやらせるならもっとそれに適したタスクはあるはずだし,コマ使うなら10コマをバラバラに渡して,コマをストーリーの順番に並び替えるような情報合成型のタスクにすればよかったんじゃないかなとか思うところもあります。

もっと授業に関しての記述を

あとは,この論文は授業に関する記述が明らかに少なすぎだと思います。タスクをどう実施したかが5行だけです。通常の授業の中でやられたとは書かれていますが,そうだとしたら普段どのような授業をしているのか,授業と関連させているのか(授業の成績とは関係あるのかないのか),どういうビリーフの教師が普段教えているのか,等が決定的に重要ですし,実践に近いことをやるならそういうことを詳しく記述しなければ実践者が参照することも他の研究結果と比べることも難しいでしょう。実践に近いことをやればやるほどそういう要因で結果が容易に変動することは誰しもが想像できるわけですから。査読者もそういうのちゃんと指摘してほしいなと思います。

ペアの差の考慮

結果の表を見ると,SDがかなり広いですよね。だとしたら,それはペアで傾向がかなり異なっていることを示しているわけですから,こういうときこそマルチレベルの分析しないといけないんじゃないかなと思います。まああんまりテクニカルな分析に関しての指摘はしたくないので,あくまでsuggestionて感じですけど。

おわりに

面白そうかなと思って読んだら面白くなかったというオチでした。タスクのことは知識として持っておかないとなと思う一方で,こういう論文はそろそろ読むのがつらいです。

なにをゆう たむらゆう。

おしまい。

追記

Twitterで反応をもらったので追記します。やや複線化してますけど。

上のレビューでは先行研究のレビューの部分をがっつり端折ってしまっていますが,最初のイントロの部分で,インタラクション中のL1使用はL2 learningにポジティブなインパクトをもつという前提にいることを書いてはいます。

(前略)a growing body of research supports that students’ L1 use can be a social and cognitive tool (Alegría de la Colina & García Mayo, 2009; Antón & DiCamilla,1998; Storch & Aldosari, 2010; Thoms, Liao & Szustak, 2005). That is, judicious use of L1 can enhance L2 learning, giving full play to it as a mediating tool to analyse language and perform tasks. Specifically, L1 contributes to supporting peer interaction, helping learners’ negotiation of social identities and pro- moting the exchange of more meaningful and sophisticated ideas (Al Masaeed, 2016) (p.2)

で,このあとに,L1使用に影響を与える要因として熟達度があることを指摘し,それに加えてタスク要因もあるんじゃないかということで本研究がそこを見るよという流れですね。

ただ,そうであっても個人的にはタスクを用いる理由とその背後にある理論を考えれば,L2使用にこだわる理由があると考えるので上の「そもそも」に書いたようなことを思ったということになります。そういうバイアスで読んでいたので,「L1使ったからどうだっての?」という亘理先生の指摘は最もです。

とりあえず一旦ここまで。また加筆するかもしれないです(2021/04/28 19:15)。

2020年度に更新したオンライン授業関係の記事まとめ

大阪はここ数日感染者数がどんどん増えていて,大阪府からの要請で勤務先も4/19から遠隔授業となりました。昨年度春学期に色々とこのブログでオンライン授業関係の記事を書いたので,備忘録と,オンライン授業関係の情報を求めている方に少しでも助けになればと思いここに関連記事をまとめておきます。

オンラインで語学の授業をする際に取り入れたい「やりとり」のためのSlack活用

語学の授業にSlackを導入してみましょうというときに必要となる情報をまとめました。

オンライン授業と対面授業の差分から見えるもの

これオンライン授業に慣れた今でも考えたいことですね。

オンライン授業での「顔出し」問題 (1)

ビデオ会議システムを利用した際に,学生がカメラをオフにすることについて。

オンライン授業での「顔出し問題」(2)

左の記事の続き。主に,コミュニケーション上生じる問題について。

ペアやグループでの「会話テスト」もテキストチャット (Slack) なら効率的に回せるかもという話

擬似的スピーキングテストをSlackのテキストチャットでやろうという話。

Slackを授業で使ってみてわかった課題

授業で実際に使ってオンライン授業をやってみて,うまくいかなかったことについて書いています。

slackを利用して,「全員の前で」スピーチさせるスピーキング活動

個人的にはこれは対面授業でも活用できるテクニックかなと思っています。

slackでテキストチャット型テストをやってみた感想

上の記事で書いたアイデアを実際にやってみての報告です。

slackの通話機能でスピーキング活動しよう(案)

これは対面授業でもSlack使おうという話。実際に2020年度秋学期はここで考えたことを実践しました。

Task-basedなレッスンにおける教員が与えるインプット

以前,タスク教材集が出ましたという記事を書きました。これに関連する話です。

この本では,タスクそのものをタイプ別に掲載してあります。一応そのままでも授業に使えるように,デフォルトの「レシピ」的なものは書いてあります。ただし,これを使って例えば大学の90分の授業を「真面目に」成立させようと思うと,タスクの前の活動(pre-task)とあとの活動(post-task),タスクの繰り返し(task repetition)等も考えないといけないのでひと手間かかります。今年は自分が担当する授業のうちの1つでこの本に掲載されているタスクでシラバスを作ってやろうと思っています。というわけで,掲載されているタスクをレッスンプラン的なものに落とし込むようなことをやっています。

そこで,私としては最も重要視したいと思っているのが「まずはインプットから」という大原則。学習者同士のやりとりがメインだとしたら,その前にインプットをたくさん与えたいわけです(もちろんメインがinput-taskでもその前にinputがほしい)。その際に重要になるのが,教師自身がinput providerになれるかどうかということだなと感じています。教員が教室内で話す(または書く)英語が,挨拶,”Open your textbook…”みたいな指示英語,repeat after meのモデルというだけではなく,いわゆるインプットの素材として,学習者が聞いたり読んだりする意味のあるものであることが非常に重要ではないかと思っています。そして,既製の音源ではなく教師がやれば,活動の幅がぐっと広がる上に,学習者のレベルに合わせてインプットを調整することもできるわけです。授業をやっていく上でこのことの利点を活かさない手はありません。学習者に描写させるのであれば,教師自身がまず描写してみせる,というように。これって言ってることは簡単なんですが,実際にはそれなりにchallengingであり,教員のスキル(英語そのもののスキルと指導のスキル)が要求されます。そこに自信がないのであれば,自分が達成する自信がないと思うような課題を学習者に与える教員てどうなの?ってなりますよね。そこはプライドを持って教員もトライしたいところです。ただ,そういう意味でいうと,task-basedなレッスンをやるのは敷居が高いと敬遠されてしまうのも理解できるかもしれないと思ったりしてしまいました。

英語の先生になると信じて疑わなかった学部生の自分に要求できるかというと,正直難しいなと思ってしまったことも事実です。学部3年で教育実習に行ったとき,英語で授業することに非常に苦労をして自分の英語力に絶望し(もともと英語が得意だと思っていたからこそ英語教員を目指そうと思ったのに),このままじゃ自分に自信がないからと教員採用試験を受けずに学部を卒業してから北米の大学院に行って英語教授法の修士号を取り,中学校で臨時任用教員として10ヶ月勤務し,そこからさらに博士課程に進学し,非常勤講師として専門学校や大学で英語を教えました。今の職場に来て今年で4年目です。それでも,まだまだ学習者にとってベストなインプットを与えられるような授業ができているかと問われると,まだまだ改善すべき点は多いなと毎週感じます。

実際に授業をやってみたリフレクションなんかの記事も今年度は更新していけたらいいなと思います。

なにをゆう たむらゆう。

おしまい。

J-SLA2020で共同発表します

Photo by Anna Tarazevich on Pexels.com

3月27-28日にオンライン開催される第20回 日本第二言語習得学会 国際年次大会(J-SLA2020)設立20周年記念大会で,共同研究の発表があります。

2020年度の終わりに,2020年度の初めての研究発表ということになりました。プログラム等の詳細は下記の大会のウェブページから閲覧できます。

第20回 日本第二言語習得学会 国際年次大会(J-SLA2020)設立20周年記念大会

発表の形式としては,発表自体はビデオ視聴で,質疑応答はzoomでリアルタイム実施ということになっています。参加するためには年会費の支払いが必要ですので,発表聞いてみようかなという方は会員登録をして頂く必要があります(参加費の徴収はありません)。

J-SLAはクレジットカードでの年会費納入もできます。詳しくは下記のページを御覧ください。2021年3月25日までに年会費を払わないと参加ができないようですので,ご注意ください。

入会・変更・問合わせ

私たちの発表は,27日の一番最終枠(17:10–17:45)で,17:10–17:30がビデオ視聴時間,7:30–17:45が質疑応答の時間となっています。

発表に関する情報は以下のとおりです。名古屋大学の後輩の寺井くんが第一著者の発表です。寺井くんは,彼がB4のときに,私個人あてに名大に進学を考えていると連絡してきたんですよね。それで,入学前に研究計画書を見たり,名古屋に彼が来て当時名大にいた他の院生と一緒に飲みに行ったりしたことがありました。残念ながら,私が関大に就職すると同時に名大の修士課程に入学したので,直接大学院で一緒だったわけではありません。ただ,それ以降も今回の発表メンバーの3人で毎週Skypeでゼミのようなことをやっていて,論文を読んだり,研究のアイデアを練ったりしていました。その中で出てきた研究のアイデアから生まれたのが今回の研究です。

正直言って寺井くんはまだまだ未熟なD生で,今回の研究発表に関してもアブストラクトも何回も修正のやりとりをしましたし,投影資料,発表のビデオについても何時間もかけて3人でやりとりしました。でも,彼は今後の名大を背負っていってほしい人材です(し実際に2022年度には彼が実質一番上になるはず)。学会発表や論文発表もいくつかしていると思いますが,J-SLAみたいな怖い人も結構来る学会での発表はないんじゃないかと思います。そういった意味でもここでしっかり発表をやりきってほしいなと(親心&プレッシャーをかける)。たくさんの方の参加をお待ちしています。よろしくお願いします。

タイトル

Learnability of L2 Collocation and L1 Activation in L2 Collocational Processing

発表者

Masato Terai (Nagoya University), Junya Fukuta (Chuo University), & Yu Tamura (Kansai University)

要旨

In the literature on L2 collocational processing, the influence of L1 activation has been subject to considerable discussion. Using an acceptability judgment task, this study assesses the effect of L1 activation in three different types of collocations: (a) English-only collocations that cannot be directly translated into Japanese (e.g., flat rate-??平らな割合), (b) congruent collocations (e.g., cold tea-冷たいお茶), (c) Japanized collocations (e.g., ??yellow voice-黄色い声援). The results indicated that L1 activation was evident regardless of both the proficiency level and the collocation types. The learners were more likely to accept collocations that they thought were easily translated into Japanese even for English-only collocations. Moreover, even highly-proficient Japanese learners of English did not properly reject the Japanized collocations, suggesting that those items are difficult to acquire without negative evidence that is not available in natural input.

自分の生い立ち

NHKテキストから出てるブルデューのディスタンクシオンの解説を読んだ。100分de名著シリーズ。こういう社会学の話を読むと,やっぱり自分という存在がどう作られたのかを振り返ることになる。

自分が若い時はそういう社会学的視点というか,メタ的な視点がないので,自分が育った環境についてあまり考えたことがなかったし,自分が環境の影響を受けているという視点を持ってなかった。でも,自分のハビトゥスはこうやって作られていったのだなと思う要因はたくさんある。

正直,小さい時は自分の家系のこともよくわからなかった。母方は祖母も祖父も学校の先生で,祖母が家庭科,祖父は社会科の先生だったと思う。祖父が先生だったのはよく知っていて,それは家に写真が飾られてあったりしたからだ。また,母の姉にあたる叔母も音楽の先生だった。はなれにピアノが置いてあったし,それはいつしか客間に置かれるようになって,それでたまに練習していた従妹は幼稚園の先生になった。

叔母の子どもである従兄姉とは歳が8つ?とかは離れていたけど昔からよく一緒に遊んだり旅行に行ったりしていた思い出もある。2人とも勉強がよくできて,埼玉県の進学校を出ていて,従兄の方は都内の国公立大学に進学して修士課程まで出ていたんじゃなかったかなと思う。理系だったので,大学に進学することが決まった時に入学に際してどんなパソコンを買ったらいいか相談に乗ってもらったのを今でも覚えている。

とまあ自分が教職を志すというか,少なくとも勉学に取り組む事に何らかの価値を置いて生きてきたのは,自分の選択ではなく,母方の親戚の影響が大きいのかもしれない。

最近までそうやって思っていたのだが,実は父方の,というか,父の影響も大きいということに最近になって気づいた。父方は商売人の家系で(といっても祖母の父だか祖父だかが東京に出てきて始めたくらいでそれより前のことはよく知らない),祖父母が始めたお店を父が継いで,街の小さな食堂をやっていた。お新香とお味噌汁とご飯に焼き魚とか,あるいはフライ,生姜焼きとか何かのメインのおかずが,キャベ千とからしの効いたマカロニサラダの載った皿に載って出てくるような。短冊に書かれたメニューがずらっと壁に貼ってあって,ホッピーのポスターやビールのポスターが貼ってあるような。ガラスケースの冷蔵庫には瓶のコーラやオレンジジュースが入っていて,たまに遊びに行ったら飲んでいた。厨房の裏には地下への急な階段があって,そこを下るとホシザキの冷凍庫があったと思う。

昼は定食屋で,夜は飲み屋のようにもなっていたので,父の帰りはいつも23時くらいだったと思う。自分が起きてる時に帰ってきたら,今日は暇だったのかなと心配したような気がする。昼の営業が終わってから夜の営業が始まるまでは父は家に帰ってきていて,多摩川にウォーキングしに行ったり,家で自重トレーニングをしたり,ダイニングテーブルで本や新聞を読んでたりしていたと思う。

そういう父の姿を見ていると,自宅でヨガをしたり筋トレしたり,神崎川沿いに走りに行く今の自分とダブる。でもそれだけではない。父は飲食店を営んでいたが,だからといって決して勉強することの価値を低くみるようなことはなかった。むしろ,そのことの価値を家族の中で最も高く見積もっていたのではないかと今になっては思う。驚くべきなのは,それでも私が父親に勉強をしろと言われた記憶がないからだ。

新聞を読めとは言われたことはあるような気がするし,新聞の切り抜きが自分の勉強机の上に定期的に置いてあったり,なんなら新聞の切り抜きをノートに貼り付けたものを渡されたこともあったかもしれない。でも,勉強しろとか,いい学校に行けとか,学歴が大事だなんて言われたことがなかったと思う。むしろそういうことを言うのは母親のイメージで,父親はあまり口うるさいタイプではなかった。そうやってバランスを取っていたのかもしれない。

でも背中を見せるではないけれど,行動としてそれを示してくれていたようにも思う。思い返してみれば,小学校の低学年の頃から,よく図書館に行っていた記憶もある。手提げ袋をもって,姉と一緒に図書館に行っていた。家でダラダラしていると,図書館にでも行ってきたらと母親に言われたような記憶もある。姉は昔から読書が好きで,私がまだ読むのが難しいような本を読んでは面白いと言っていて自分も負けじと挑戦するのだが難しくて内容がわからなかったみたいなこともあった気がする。

小学校の高学年の時だったか,姉の部屋にあった『おいしいコーヒーのいれ方』シリーズの小説を興味本位で読んだら,刺激が強すぎて頭が沸騰して眠れなくなったような記憶もある。そのまま自分の部屋の机の上に置いておいたら何も言わずに姉が没収していたと思う。

中学校と高校はとにかくバスケに明け暮れていて,自分から進んで本を読むなんてことはまったくといっていいほどしていなかったように思う。でも,それはとにかく自分の最優先がバスケがうまくなることだったからひたすら部活に精を出していたから本なんぞ読んでる暇がないというだけで,本なんか読んだってしょうがないということではなかったと思う。

話を戻そう。父は私が大学生の頃だったか,いきなりタイ語を勉強し始めた。もともと若い時にアメリカに語学留学した経験があって,多少は英語ができるのだが,それにしたって新しい言語,それも書記体系の全く異なるタイ語の勉強をするなんて。へー趣味ができてよかったねなんて思っていたが,そこから地道に勉強を重ね,現地の長期滞在も何度もするうちに「タイの看板はほぼ全部読めるようになった」と豪語するまでになった。すごすぎる。

私がアメリカに留学していた頃は東南アジアのバックパック旅行にハマっていて,アメリカで住んでたアパートに綺麗な写真と汚い字の絵葉書が定期的に届いていた。「今は〇〇にいて,□□から△△を経由して今度は◇◇に行きます」とか聞いたこともない地名が列挙されていて,Googleマップでいちいち調べていたような気がする。当時にもTwitterで,父が冒険家のような人生を生きてることを呟いていた気がする。

還暦を超えた今では体力的にしんどくなったことと,祖母の面倒を見ないといけないということで海外にはしばらく行ってないと思うが,それでもあくなき探究心というか,自分が知らない世界を見たい,もっといろんなことを知りたいという欲が滲み出ている人生を送っているように感じられるのは息子としても嬉しい。自分が育ってきた間,きっといろんなことを我慢して仕事して自分の好きなこともなかなかできなかったであろうから,こうして私も,そして姉も一人前のおとなとして生きている今は(自分の母親の心配をしないといけないというのはあるだろうけど)それでも自分の好きなような生きていって欲しいなと思う。

そういう父親の生き様みたいなものが,私の人生に与えた影響は無限大だろうし,母親とその親戚も含めて,私のハビトゥスをそこに感じずにはいられない。

教職を志したことについては,もちろん自分が受けた学校教育の影響もあるのは間違いない。小学校の高学年で自分のクラスの担任になった先生のインパクトはすごかった。なんでもできる,なんでも知ってる。話も面白いし,本当に好きな先生だった。こんな人になりたい,学校の先生になりたいと思ったのはそこからだと思う。現に,数年前に小学校の同窓会で集まった時,自分の思っていた以上に先生をやってる人が多くて驚いた。一般的にどれくらいなのかとかわからないし,地域的なものとかいろんな要因はあるだろうけれど,やっぱりあの先生(ともうひとクラスの先生もいい先生だったし人気だった)の影響はあったんじゃないだろうか。

中学校では,中三の時にお世話になった先生達のことをよく覚えている。私の通っていた中学校は,当時は市内ではまあ割と有名な荒れた学校だったので,いわゆる不良な生徒も多かったし,「ヤバい」奴も結構いた。中三になった時,学年団の先生が主任以外全員入れ替わるという前代未聞の配置換えで,他校から指導力のある先生が何人も来た。私は学級委員長をしていて,そのやんちゃな学年をまとめる役割を仰せつかっていたのだけれど,不良ともまあまあ仲が良かったので,立場上難しいこともあった。トイレでタバコを吸うことを注意しないといけないけれど,なかなか難しいだったりとか。

ある日,何かの時に教室に置いてあった自分のカバンがなくなり,担任の先生と探したらトイレの小便器の中に置いてあったというようなこともあった。あれ地味に結構きつかったな。でも,なんて言われたかは覚えてないけどその先生のことは信頼していて,味方でいてくれているのがわかったから乗り越えられたんだと思う。サバサバしてる人だったけど,めちゃくちゃ感謝してるからその先生の影響もある。

修学旅行の時も,持ってきてはいけない携帯持ってきてる奴がいるとか,自由行動で酒飲んでる奴がいるとかいうのがあって,そういうのも正義感で先生に報告してたらハブられるみたいな感じになった。まあ当然と言えば当然なんだが,友達として仲良くすることと,誰かがルールを破ることに対する責任感みたいなのが自分の中でぐっちゃぐちゃになって,夜に先生たちの部屋に呼び出されてもう辛いですって先生たちの前で号泣したの今でも覚えてる。主任の先生は英語科の先生で,その人が唯一一年生の時から見てくれてる先生だった。いわゆるオーラルイントロダクションをしてPPP型の授業をするいい先生で,新聞の見出しを解説するコーナーだったり,映画を見せてフレーズを解説するコーナーとかがあって授業も工夫されてる方だった。「一人で抱え込まなくていいんだぞ」ってその先生に言われてさらに涙が止まらなくなった。

中学を卒業して,高校に行って,3年の時だったかに中学校の進路イベントみたいなのに先輩として呼ばれて話すことになって久しぶりにお世話になった先生達に会ったのも嬉しかった。中3の時の担任の先生と,あともう一人キャラがめちゃくちゃ濃かった女性の体育の先生。修学旅行の実行委員会とかでお世話になった気がする。「次に田村に会う時は教採の面接練習かな?」みたいなこと言われた気がするんだけど,結局大学4年の時には教採は受けず,アメリカから帰ってきて受けた教採では面接練習もしてもらわずに2次で撃沈しちゃいました。もし練習してもらえてたら教採に受かって,今とは全く違う人生を歩んでいたかもしれない。

中学校の時のその修学旅行の実行委員会で,今でも覚えてる学びがあって,そういう先生や学校で過ごせて幸せだったなと今だから思うできごとがあった。ある時,修学旅行先の京都でのルール作りみたいなことをしていたときのこと。修学旅行中の班別自由行動では,昼食時をのぞいて,いわゆる食べ歩きみたいなことは禁止というのが基本線でした。お菓子を持っていくことも確かできなかったんじゃないかなと思う。そこで私は,京都でしか食べられないものもあるはずだし,そういうものを味わうことだって修学旅行の趣旨に反していないはずだから,節度を守っていれば昼食時以外にも例えば抹茶ソフトクリームとか食べたっていいんじゃないですかと言った。聞く人が聞いたら「昔からそういう性格なんだね」とか言われそうな発言だなと今は思う。そこで,その私の担任だった先生と,前述の女性の体育の先生に言われたのが,「自由には責任が伴うんだよ」ということだった。これを教わったことはその後の私の人生にものすごい影響を与えたと思うし,学校の生徒指導のほとんどの問題(は言い過ぎかもしれないが)ってこの一言に集約されるんじゃないかなと今は思う。当時の私にもビビッと響いて,何でもかんでもあれがいいこれがいいあーしたいこーしたいじゃだめで,自由を求めることはその結果生じたことに自分が責任を負うことなんだと学んだわけだ。まあ結果として,今考えたらこのことを重く受け止めすぎたからこそ,自由度をあげたことに対して生じた問題の責任を強く感じすぎて号泣するハメになったんだろうと思うのだが。

推敲せずに飲みながらiPhoneでダラダラ書き殴ったらまあまあな長さになったので,とりあえずここでやめて人知れず夜中に公開します。あとで読み直して消すかもしれないし,続きを加筆するかもしれないですけど。

なにをゆう たむらゆう。

おしまい。


2021.02.12 追記

途中から文体が「です・ます」になっていたり,主語に僕と私が混ざっていたり,「、」と「,」が混ざっていたりしたので直しました。

就活で「AIに代替されるぞ」って言われてぐうの音も出なくなってしまう外国語学部の学生さんへ

Photo by Markus Winkler on Pexels.com

はじめに

最初に断っておくと,私はまだ現在の勤務先である関西大学の外国語学部に着任して3年目で,なおかつ3, 4年次生の授業を担当したことがありません。よって,この記事で書くことは見聞きした話と想像だけで書いています(自分が直接就活している学生に聞いたわけでもなく,就活している学生の指導(授業担当)はしていません)。一応念頭に置いているのは自分の所属先の学生ですが,どんな外国語学部の学生さんにももしかすると参考になるかもしれません。いや,ならないかもしれません。

もう一つ断っておくと,私自身はいわゆる一般的な意味での企業への就職を目指した就職活動を経験したことがありません。採用の面接の経験というのは,教員採用試験時の面接と,現在の勤務先の採用面接のみです。よって,タイトルの「AIに代替されるぞ」も聞いただけの話(後述)です。

背景

先日(といっても結構前),弊学のキャリアセンターの方から,近年の就職状況の話みたいなのとともに,うちの学部生の就活に関する「ホンネ」というような話も聞きました。その中で,「語学をアピールしようとしても,『そんなのAIに代替されてしまう』と言われてしまう」(大意)みたいなのがありました。

これに対してのアプローチは私の中ではとりあえず2つあって,1つは語学×somethingのsomethingを就活の前までに身につけようというものです。やっぱり語学とあとなにか一つ自分の強みがあれば,そしてその掛け合わせを持っている人があまりいないのであれば,それは自分の強みになるし,需要もあると思います。ただ,今回はそちらの話はあまりしません。むしろ,「AIって言葉にビビらないように知識を持っておこう」という話です。

今回の記事では,外国語学部の学生とか,自分の語学力をアピールポイントにして就活をしようと考えている学生さんを念頭に書くので,AI(人工知能)というのも,画像認識とかよりも言語理解が関わるようなところにだけフォーカスします。

川添愛さんの本を読め

とりあえず,難しい専門書とかをいきなり読む必要はないかなと。まずはこの本を読んでおけば,AIのこととか,言語を理解することとはどういうことなのかというのが理解できると思います。同時に,いま現段階でのAIの限界点もわかってくると思うので,そうなれば「AIに代替されるぞ」なんて言われても,少しは反論(就活で反論していいのかは知らない)もできるかと思うのです。見た目が結構難しそうなのですが,かなり易しく書かれているので就活に臨む段階の学部生の知識レベルであれば問題なくついていけると思います。むしろ,後半部分の言語に関わる部分で理解が難しいと感じるならば,メタ言語的知識というか,言語学的な知識をつけることが必要かもしれません。

うちの学部に限って言えば,カリキュラム上1年生で語学のスキル系の授業を履修し,2年次に留学し,という感じで,どちらかというと「言語を使う」方を重視する傾向にありますが,言語に関する知識を持っているというのは,AIがこれからもっと精度があがっても重要となる知識だと思います(今のカリキュラムはそれはそれでいいところもあるし,現状2年になったときに留学に耐えられる英語力を身に着けさせようと思ったらやむを得ないところもあるので否定はしませんけども)。

あとは,以下の本(物語)も面白いです。

これを読むと,機械への命令(入力する言葉)がいかに重要か,そして機械は世の中の誰でもが使いこなせるものでもない(もちろん訓練すればできるようになるわけですけど)ということが理解できると思います。できれば,物語を読む中で王子の命令がうまくいかないのはなぜか,自分なりの答えを考えてから先に読み進めていってもらいたいなと思います。そういう思考訓練をすると,自分の言語の知識も再構築されるのではないでしょうか。そして,その知識は「AIに(簡単には)代替されないだろう」ということもわかると思います。

別に,私はAIについて楽観論というか,別に大したことないという意見を持っているわけではなくて,言語の理解ってめちゃくちゃ難しくて,まだまだ明らかにされていないことだらけなのだということを言っています。

そもそも,人間の言語に関わる謎って,めちゃくちゃいっぱいあるんですよ。もちろん,それが全部明らかにならないと人工知能がうまくいかないわけではないのですけど。でも今のディープラーニングの技術でいくのであれば,中身は人間にも理解できない仕組みで動くわけですから,エラーが起こったときの原因を突き止めたりできません。これは色んなところでも指摘されていることですね(上述の『ヒトの言葉・機械の言葉』の72-75ページとか)。

入力と出力の関係がわかってないということはつまり,出力がうまくいっているのかを人が判断しないといけない場面はどれだけディープラーニングを使った翻訳ソフトが発展してもなくならないということではないでしょうか。その判断ができるのは,言語の知識を持っている人に限られるわけで,その知識がある,と言えるのであれば,就活で脅されても対応できるのではないでしょうか。

おまけ

で,もう少しビジネス方面にも目を配っておこうとしたら,次の新書も読んだらどうでしょうか。

こちらの本はもっと人工知能の実装の部分の話も多いですが,基本的な理解の部分では『ヒトの言葉・機械の言葉』の第一章と重なる部分もあります。こういう話でもっと知識を得たいと思ったら,参考文献欄に載ってる本を読んでみたらいいのではないでしょうか。

おわりに

別にここで紹介した本を読んだら万事解決ってわけではないんですけど,AIって言われたら全知全能の神みたいな存在だと思ってしまってる人って採用側の人にもいたっておかしくないと思うのです。そのときに,怯まず冷静に会話できるくらいの知識はもっていてほしいなというのが私の願いですね。知識だけ知ってたって現場じゃ役に立たないぞとか言われるのかもしれないんですが,人工知能のことをよくわかってもいないのにAIのことを語る人のほうがよっぽど役に立たないんじゃないのかなとか思いますけどね。

この記事で言いたかったのは,新書レベルでも本を読んで知識を持っておくことは(それがある程度自分の専門である「言語」という部分にも関わるのであるからなおさら)大事ですよということが1つです。もう一つは,「言語のプロフェッショナル」という謳い文句を体現しようと思ったら,言語そのものについての知識(言語学的知識)も大事ですよということです。うちの学部でも言語学系の科目は開講されてますし,曜限があわないとかだったら文学部の授業に出させてもらうとかもありだと思いますよ。私も学部のときに,ゼミで扱ってた統語論の授業に興味を持って,違う学部の言語学の授業に出させてもらったことがありました。そこまで熱意をもってやるのは難しいなぁという方は,『ヒトの言葉・機械の言葉』だけでも読んでみてほしいなと思います。

なにをゆう たむらゆう。

おしまい。

活動の足し算と引き算

Photo by Pixabay on Pexels.com

はじめに

大学で使用されることを想定とした教科書を作るっていうのを考えたとき,必要最小限の核となる部分だけを提供して,あとは自由にやってくださいねっていうスタンス,つまり教師に足し算な考え方を要求する場合と,逆に盛り盛りにアクティビティを盛り込んで適宜飛ばしてくださいっていう引き算的な思考を要求する場合(注),どちらがいいんだろうなっていう話です。

足し算のメリット・デメリット

メインだけ決まっていてあとは自分で,という場合,当然ながら教師が考えることは多くなりますよね。事前にどういう活動をやるか,あるいは事後にどういう活動をやるか,みたいなことも含めて。これって自分の中にある程度こういう授業をやりたいみたいな軸があって,それに合わせて教科書を選ぶような人だったら授業をやりやすいでしょうね。今日のメインは唐揚げです!ってだけ言われたら,揚げ物に合わせてなんかさっぱり目の副菜作ろうかなとか,むしろ唐揚げをアレンジして酢鶏的なもの作ろうかなとか,そういうの考えるの好きな人だったり,自分が食べたいものがはっきりしている人だったらその考える過程も楽しめるでしょう。自由にできるというのはメリットです。一方で,考えたいけど考える時間はない,準備する時間もない,とにかくすぐにご飯を食べたい(食べさせたい)という人にとっては,献立が全部きっちり書いてあったり,あるいはもうすぐに食べられるようなお惣菜がある方が便利なわけですよね。つまり,同じことを別の角度から見たらデメリットにもなります。

「授業を考えることを放棄するなんて知らん!メニューくらい自分で考えろ!」と思う気持ちは一定程度理解する一方で,何校も非常勤掛け持ちしている先生だったり週に10-12コマとか教えている先生に支えられて成り立っている自分の勤務先の英語教育のことを考えたらそこまで突き放す気にもなれません(おそらく色んな所でも似たような状況なのではないでしょうか)。

引き算のメリット・デメリット

いろんな大学用教科書見てきていますけど,その多く,というかほぼすべてはどちらかというとこちらのスタンスなのではないかと思うことが多いです。こんな盛り盛りでいろんな活動が載っててこのユニット数あったら,どう頑張っても時間足りなくないですか?みたいな。私はどちらかというと自由度が高めであるほうが嬉しいタイプです。ところが,「どの教科書を選んでもとにかくてんこ盛り,なおかつ活動自体は別に面白くもなくてドリル的なものが多めでつまらなそう。」って思うことが多いです。そうなると,いわゆる素材というかテーマというか,扱っている内容が面白いものを選択することが多いです。それが面白ければ,あとはこっちでそれをもっと面白くするようなタスクに落とし込んで授業を考えればいいからです。そういう視点でみたら,わざわざ引き算するのめんどくさいからもう素材だけくださいってなります(教科書を使う縛りがなかったら使わないと思います)。

ただし,上述したように足りなくて足すよりは何も考えなくても教科書に載っている活動をやれば授業として成立するほうが嬉しいと思う方もたくさんいらっしゃるのでしょう。だからこそそういう教科書が売られていて,そういうのが売られているということはそれが売れるから,ということだと思いますし。あれもこれもついてきますみたいなのどんどん増えてきている気もしますもんね。オンラインで学習させられるとか,テストがついているとか。

おわりに

確かにありがたいのはありがたいと思うし,自分が作る教材だったりタスクだったりテストだったりがそんなに優れているのかと問われたらそこまで自信を持ってはいと答えられるわけではないのですが,一応英語教師としても飯食ってるわけですから,自分で授業を考えることだけはやめたくないなと個人的には思います。それを自分以外の人にどれだけ求めていいのか,というのが悩ましいと思っているところです。自由度が高すぎることを不親切だと思う人も絶対いると思うので。

でも,本当のところ,(一般的な意味での)ミニマリスト的教科書と活動が豊富に掲載されている教科書どちらがいいんでしょうね。というわけでアンケート置いてみました(初の試み)。Twitterでやったほうが回答集まりそうですけどねw

なにをゆう たむらゆう。

おしまい。


注:いや飛ばしてほしいと思ってないです。全部やってもらいたいと思っていますということで教科書作られているかもしれないですけどね。

【R】JSON形式で刺激リスト作成

はじめに

この記事では,よくある刺激のリストをJSON形式で保持するということをRを使ってやってみます。ただのデータフレームをJSON形式に変換するのはそれほど難しいことではありません。むしろ,Rを使わなくてもウェブ上で変換してくれるサービスがあります。
https://tableconvert.com/

こういうのを使うと,下記のようなテーブル形式のデータをcsvで持っていたとしたら,それをJSON形式に変換するのは一瞬です。

id name age gender
1 Roberta 39 M
2 Oliver 25 M
3 Shayna 18 F
4 Fechin 18 M
#JSON形式
[
    {"id":1,"name":"Roberta","age":39,"gender":"M"},
    {"id":2,"name":"Oliver","age":25,"gender":"M"},
    {"id":3,"name":"Shayna","age":18,"gender":"F"},
    {"id":4,"name":"Fechin","age":18,"gender":"M"}
]

問題の所在

じゃあ別にそのウェブサービスでいいじゃんということになるんですが,問題は少しこれより複雑です。というのも,私は今 jsPsychを使って実験ができるようにと勉強しています。jsPsychではJSON形式で刺激を読み込むのですが,その際に,データに階層性が必要になってくるようです。別に,反応の取得だけを目的とするなら必要ないのですが,のちのデータ分析を楽にすることを考えると,これは実験の前の段階でやっておきたいです1jsPsychのページでは以下のように例が示されています。

var test_stimuli = [
  { stimulus: "img/blue.png", data: {test_part: 'test', correct_response: 'f'}},
  { stimulus: "img/orange.png", data: {test_part: 'test', correct_response: 'j'}}
];

この例では,刺激として画像を提示するので,“stimulus”として画像ファイルが指定されています。そして,その後ろにdataという変数があって,要するに,実際に表示される刺激と,その刺激に付随する情報(正誤,刺激の種類等)が分かれていて,付随する情報は一つ階層が下のレベルに入っているということです。リストの中にリストがあるということですね。こうなると,ただのデータフレームからの変換というわけにはいかないので,先ほど紹介したようなウェブブラウザで変換というわけにもいきません。というわけで,Rを使って,できるだけ簡単にデータフレームから階層性のあるリストをゲットしましょう。というのが今回の目標です。実は,リスト->データフレームという話は,rlistパッケージ周りでやってる方が結構いらっしゃるようです(Googleで「rlist データフレーム 」と検索してみてください)。ところが,今回のようにデータフレーム->リストはあまり例が見つかりませんでした。ということでやってみましょう。結論から先にいうと,めちゃくちゃ単純でした。

1. データの準備

まずは,わかりやすい刺激リストの例として自分が最近実験で使った刺激リストを読み込みます。

dat<-read.csv("stimuli.csv")
head(dat)

一応,各列に何が入っているかを簡単にまとめると,以下のようになります。

  1. itemID: 刺激のID(かぶりがありますが,nonwordは分析から最初に外すのでとりあえずOK。ほんとは連番のがいいですけど)
  2. type: 刺激の種類
  3. word: ターゲットとなる英単語
  4. kana: 対応するカタカナ語
  5. pic: 提示する画像
  6. lang: 提示する言語
  7. prime: プライミング条件
  8. answer: 正答
  9. form: フォーム
  10. freq_J: カタカナ語の頻度
  11. freq_E: 英単語の頻度

この実験では,まずはじめに画像を提示して,参加者はその画像を見ます。画像を理解したら次に注視点が表示されます。その後に提示された文字列が実在語かどうかを判断する語彙性判断課題です。プライミングの条件がshare, spec, baseと3条件あります。さて,プログラム上では,

  1. 画像(pic)を提示
  2. 語(word)を提示

ということで,上で紹介した例と異なって,提示する刺激が2種類あります(ここでは,提示刺激は英単語のみとして進めます。カタカナ語の場合は英単語の部分をカタカナ語の列に置き換えれば良いと考えます)。つまり,

{ pic: "img/2_C_sh.jpg", word: "interview", data: {itemID: '2', kana: 'インタビュー', lang: 'eng', prime: 'share',answer: 'TRUE',form: 'A',freq_J: '29.5098', freq_E: '17.5744'}}

というのを読み込んだデータフレームのすべての行において作ることができれば成功となります。

2. パッケージの準備

とりあえず,これ入れとけばいいかなということでtidyverseパッケージと,最後にJSON形式に変換する際に使うjsonliteパッケージ。

install.packages("tidyverse")
install.packages("jsonlite")
library(tidyverse)
library(jsonlite)

3. データハンドリング

tibbleという比較的新しいデータ形式を使います。tidyrとかdplyrとか使うようになって,数年前からこのtibble形式がよく出てきてたんですが,私もいまいちよくわかってませんでした。というか,データフレームを扱うことがほとんどなので,データフレーム形式しか受け付けない関数にtibbleで出力された結果をうっかり渡してエラー吐くみたいなことが頻発したのでいちいちas.data.frame()でデータフレーム型に強制的に直すみたいなことをしてました。

ところが,今回みたいな階層性のある形については,tibble型が便利なようですね。tibbleでは,リスト型の列を持つことができるので,“data”の列に刺激の情報をまとめたリストを入れていけばいいということになります。そう考えて,次のようにやってみました。

tibble::tibble(
  pic=dat$pic,
  word=dat$word,
  data=list(dat[,c(1,2,4,6,7,8,9,10,11)])
)->dat2

ところが,これで中身を見てみると…

head(dat2)
## # A tibble: 6 x 3
##   pic         word        data             
##   <fct>       <fct>       <list>           
## 1 2_C_sh.jpg  interview   <df[,9] [48 × 9]>
## 2 3_C_sp.jpg  court       <df[,9] [48 × 9]>
## 3 6_C_sh.jpg  alien       <df[,9] [48 × 9]>
## 4 7_C_sp.jpg  appointment <df[,9] [48 × 9]>
## 5 10_C_sh.jpg stamp       <df[,9] [48 × 9]>
## 6 14_C_sh.jpg channel     <df[,9] [48 × 9]>
head(dat2$data,3)
## [[1]]
##    itemID    type               kana lang prime answer form   freq_J
## 1       2  target       インタビュー  eng share   TRUE    A  29.5098
## 2       3  target             コート  eng  spec   TRUE    A 100.7255
## 3       6  target         エイリアン  eng share   TRUE    A  17.4314
## 4       7  target   アポイントメント  eng  spec   TRUE    A  30.5686
## 5      10  target           スタンプ  eng share   TRUE    A   5.9216
## 6      14  target         チャンネル  eng share   TRUE    A  24.4118
## 7      15  target           クロール  eng  spec   TRUE    A  12.0392
## 8      18  target             センス  eng share   TRUE    A 131.8039
## 9      19  target             ベンチ  eng  spec   TRUE    A   9.6667
## 10     22  target     プロモーション  eng share   TRUE    A  10.9216
## 11     23  target               ツナ  eng  spec   TRUE    A   8.0000
## 12      1  target           アイロン  eng  base   TRUE    A  17.9412
## 13      4  target         グラウンド  eng  base   TRUE    A  72.4706
## 14      5  target           アドレス  eng  base   TRUE    A  52.2745
## 15      8  target       プレッシャー  eng  base   TRUE    A  53.1176
## 16      9  target         プロポーズ  eng  base   TRUE    A  13.0000
## 17     12  target         ボリューム  eng  base   TRUE    A   6.9412
## 18     13  target             ベース  eng  base   TRUE    A  35.3725
## 19     16  target       エクスプレス  eng  base   TRUE    A  17.9216
## 20     17  target           ストーブ  eng  base   TRUE    A   7.5882
## 21     20  target           リコール  eng  base   TRUE    A  19.6667
## 22     21  target             レター  eng  base   TRUE    A  82.6078
## 23     24  target             ガッツ  eng  base   TRUE    A  23.7451
## 24     25  target             バイク  eng  base   TRUE    A  25.8824
## 25     17 nonword     ドートレギング  eng  <NA>  FALSE <NA>       NA
## 26     18 nonword     フィスティレド  eng  <NA>  FALSE <NA>       NA
## 27     19 nonword       ストネヘンデ  eng  <NA>  FALSE <NA>       NA
## 28     20 nonword   ポリディフィエス  eng  <NA>  FALSE <NA>       NA
## 29     21 nonword   メストレイヤーズ  eng  <NA>  FALSE <NA>       NA
## 30     22 nonword         ドンスーン  eng  <NA>  FALSE <NA>       NA
## 31     23 nonword           スプラム  eng  <NA>  FALSE <NA>       NA
## 32     24 nonword ティソベディエント  eng  <NA>  FALSE <NA>       NA
## 33     25 nonword             ムイン  eng  <NA>  FALSE <NA>       NA
## 34     26 nonword           ドソーム  eng  <NA>  FALSE <NA>       NA
## 35     27 nonword             ヘイド  eng  <NA>  FALSE <NA>       NA
## 36     28 nonword         オンテナー  eng  <NA>  FALSE <NA>       NA
## 37     29 nonword         タンサック  eng  <NA>  FALSE <NA>       NA
## 38     30 nonword           フロール  eng  <NA>  FALSE <NA>       NA
## 39     31 nonword アンチヒスタモーネ  eng  <NA>  FALSE <NA>       NA
## 40     32 nonword         パラックス  eng  <NA>  FALSE <NA>       NA
## 41     33 nonword     ハイプノジスト  eng  <NA>  FALSE <NA>       NA
## 42     34 nonword       クロリエイジ  eng  <NA>  FALSE <NA>       NA
## 43     35 nonword         コラプソス  eng  <NA>  FALSE <NA>       NA
## 44     36 nonword             ビキナ  eng  <NA>  FALSE <NA>       NA
## 45     37 nonword スティメレーション  eng  <NA>  FALSE <NA>       NA
## 46     38 nonword         スキマッド  eng  <NA>  FALSE <NA>       NA
## 47     39 nonword     ディロクトネス  eng  <NA>  FALSE <NA>       NA
## 48     40 nonword         ケグファグ  eng  <NA>  FALSE <NA>       NA
##     freq_E
## 1  17.5744
## 2  21.4056
## 3   0.5272
## 4   0.5272
## 5   3.3743
## 6  20.8784
## 7   0.3163
## 8  11.7045
## 9  13.9541
## 10  2.4253
## 11  5.2020
## 12  3.6555
## 13  9.2793
## 14 31.5284
## 15  5.7292
## 16  2.2847
## 17 14.9382
## 18 40.7726
## 19  2.5307
## 20  3.5852
## 21  0.7030
## 22  3.5500
## 23  3.6906
## 24 13.8135
## 25      NA
## 26      NA
## 27      NA
## 28      NA
## 29      NA
## 30      NA
## 31      NA
## 32      NA
## 33      NA
## 34      NA
## 35      NA
## 36      NA
## 37      NA
## 38      NA
## 39      NA
## 40      NA
## 41      NA
## 42      NA
## 43      NA
## 44      NA
## 45      NA
## 46      NA
## 47      NA
## 48      NA
## 
## [[2]]
##    itemID    type               kana lang prime answer form   freq_J
## 1       2  target       インタビュー  eng share   TRUE    A  29.5098
## 2       3  target             コート  eng  spec   TRUE    A 100.7255
## 3       6  target         エイリアン  eng share   TRUE    A  17.4314
## 4       7  target   アポイントメント  eng  spec   TRUE    A  30.5686
## 5      10  target           スタンプ  eng share   TRUE    A   5.9216
## 6      14  target         チャンネル  eng share   TRUE    A  24.4118
## 7      15  target           クロール  eng  spec   TRUE    A  12.0392
## 8      18  target             センス  eng share   TRUE    A 131.8039
## 9      19  target             ベンチ  eng  spec   TRUE    A   9.6667
## 10     22  target     プロモーション  eng share   TRUE    A  10.9216
## 11     23  target               ツナ  eng  spec   TRUE    A   8.0000
## 12      1  target           アイロン  eng  base   TRUE    A  17.9412
## 13      4  target         グラウンド  eng  base   TRUE    A  72.4706
## 14      5  target           アドレス  eng  base   TRUE    A  52.2745
## 15      8  target       プレッシャー  eng  base   TRUE    A  53.1176
## 16      9  target         プロポーズ  eng  base   TRUE    A  13.0000
## 17     12  target         ボリューム  eng  base   TRUE    A   6.9412
## 18     13  target             ベース  eng  base   TRUE    A  35.3725
## 19     16  target       エクスプレス  eng  base   TRUE    A  17.9216
## 20     17  target           ストーブ  eng  base   TRUE    A   7.5882
## 21     20  target           リコール  eng  base   TRUE    A  19.6667
## 22     21  target             レター  eng  base   TRUE    A  82.6078
## 23     24  target             ガッツ  eng  base   TRUE    A  23.7451
## 24     25  target             バイク  eng  base   TRUE    A  25.8824
## 25     17 nonword     ドートレギング  eng  <NA>  FALSE <NA>       NA
## 26     18 nonword     フィスティレド  eng  <NA>  FALSE <NA>       NA
## 27     19 nonword       ストネヘンデ  eng  <NA>  FALSE <NA>       NA
## 28     20 nonword   ポリディフィエス  eng  <NA>  FALSE <NA>       NA
## 29     21 nonword   メストレイヤーズ  eng  <NA>  FALSE <NA>       NA
## 30     22 nonword         ドンスーン  eng  <NA>  FALSE <NA>       NA
## 31     23 nonword           スプラム  eng  <NA>  FALSE <NA>       NA
## 32     24 nonword ティソベディエント  eng  <NA>  FALSE <NA>       NA
## 33     25 nonword             ムイン  eng  <NA>  FALSE <NA>       NA
## 34     26 nonword           ドソーム  eng  <NA>  FALSE <NA>       NA
## 35     27 nonword             ヘイド  eng  <NA>  FALSE <NA>       NA
## 36     28 nonword         オンテナー  eng  <NA>  FALSE <NA>       NA
## 37     29 nonword         タンサック  eng  <NA>  FALSE <NA>       NA
## 38     30 nonword           フロール  eng  <NA>  FALSE <NA>       NA
## 39     31 nonword アンチヒスタモーネ  eng  <NA>  FALSE <NA>       NA
## 40     32 nonword         パラックス  eng  <NA>  FALSE <NA>       NA
## 41     33 nonword     ハイプノジスト  eng  <NA>  FALSE <NA>       NA
## 42     34 nonword       クロリエイジ  eng  <NA>  FALSE <NA>       NA
## 43     35 nonword         コラプソス  eng  <NA>  FALSE <NA>       NA
## 44     36 nonword             ビキナ  eng  <NA>  FALSE <NA>       NA
## 45     37 nonword スティメレーション  eng  <NA>  FALSE <NA>       NA
## 46     38 nonword         スキマッド  eng  <NA>  FALSE <NA>       NA
## 47     39 nonword     ディロクトネス  eng  <NA>  FALSE <NA>       NA
## 48     40 nonword         ケグファグ  eng  <NA>  FALSE <NA>       NA
##     freq_E
## 1  17.5744
## 2  21.4056
## 3   0.5272
## 4   0.5272
## 5   3.3743
## 6  20.8784
## 7   0.3163
## 8  11.7045
## 9  13.9541
## 10  2.4253
## 11  5.2020
## 12  3.6555
## 13  9.2793
## 14 31.5284
## 15  5.7292
## 16  2.2847
## 17 14.9382
## 18 40.7726
## 19  2.5307
## 20  3.5852
## 21  0.7030
## 22  3.5500
## 23  3.6906
## 24 13.8135
## 25      NA
## 26      NA
## 27      NA
## 28      NA
## 29      NA
## 30      NA
## 31      NA
## 32      NA
## 33      NA
## 34      NA
## 35      NA
## 36      NA
## 37      NA
## 38      NA
## 39      NA
## 40      NA
## 41      NA
## 42      NA
## 43      NA
## 44      NA
## 45      NA
## 46      NA
## 47      NA
## 48      NA
## 
## [[3]]
##    itemID    type               kana lang prime answer form   freq_J
## 1       2  target       インタビュー  eng share   TRUE    A  29.5098
## 2       3  target             コート  eng  spec   TRUE    A 100.7255
## 3       6  target         エイリアン  eng share   TRUE    A  17.4314
## 4       7  target   アポイントメント  eng  spec   TRUE    A  30.5686
## 5      10  target           スタンプ  eng share   TRUE    A   5.9216
## 6      14  target         チャンネル  eng share   TRUE    A  24.4118
## 7      15  target           クロール  eng  spec   TRUE    A  12.0392
## 8      18  target             センス  eng share   TRUE    A 131.8039
## 9      19  target             ベンチ  eng  spec   TRUE    A   9.6667
## 10     22  target     プロモーション  eng share   TRUE    A  10.9216
## 11     23  target               ツナ  eng  spec   TRUE    A   8.0000
## 12      1  target           アイロン  eng  base   TRUE    A  17.9412
## 13      4  target         グラウンド  eng  base   TRUE    A  72.4706
## 14      5  target           アドレス  eng  base   TRUE    A  52.2745
## 15      8  target       プレッシャー  eng  base   TRUE    A  53.1176
## 16      9  target         プロポーズ  eng  base   TRUE    A  13.0000
## 17     12  target         ボリューム  eng  base   TRUE    A   6.9412
## 18     13  target             ベース  eng  base   TRUE    A  35.3725
## 19     16  target       エクスプレス  eng  base   TRUE    A  17.9216
## 20     17  target           ストーブ  eng  base   TRUE    A   7.5882
## 21     20  target           リコール  eng  base   TRUE    A  19.6667
## 22     21  target             レター  eng  base   TRUE    A  82.6078
## 23     24  target             ガッツ  eng  base   TRUE    A  23.7451
## 24     25  target             バイク  eng  base   TRUE    A  25.8824
## 25     17 nonword     ドートレギング  eng  <NA>  FALSE <NA>       NA
## 26     18 nonword     フィスティレド  eng  <NA>  FALSE <NA>       NA
## 27     19 nonword       ストネヘンデ  eng  <NA>  FALSE <NA>       NA
## 28     20 nonword   ポリディフィエス  eng  <NA>  FALSE <NA>       NA
## 29     21 nonword   メストレイヤーズ  eng  <NA>  FALSE <NA>       NA
## 30     22 nonword         ドンスーン  eng  <NA>  FALSE <NA>       NA
## 31     23 nonword           スプラム  eng  <NA>  FALSE <NA>       NA
## 32     24 nonword ティソベディエント  eng  <NA>  FALSE <NA>       NA
## 33     25 nonword             ムイン  eng  <NA>  FALSE <NA>       NA
## 34     26 nonword           ドソーム  eng  <NA>  FALSE <NA>       NA
## 35     27 nonword             ヘイド  eng  <NA>  FALSE <NA>       NA
## 36     28 nonword         オンテナー  eng  <NA>  FALSE <NA>       NA
## 37     29 nonword         タンサック  eng  <NA>  FALSE <NA>       NA
## 38     30 nonword           フロール  eng  <NA>  FALSE <NA>       NA
## 39     31 nonword アンチヒスタモーネ  eng  <NA>  FALSE <NA>       NA
## 40     32 nonword         パラックス  eng  <NA>  FALSE <NA>       NA
## 41     33 nonword     ハイプノジスト  eng  <NA>  FALSE <NA>       NA
## 42     34 nonword       クロリエイジ  eng  <NA>  FALSE <NA>       NA
## 43     35 nonword         コラプソス  eng  <NA>  FALSE <NA>       NA
## 44     36 nonword             ビキナ  eng  <NA>  FALSE <NA>       NA
## 45     37 nonword スティメレーション  eng  <NA>  FALSE <NA>       NA
## 46     38 nonword         スキマッド  eng  <NA>  FALSE <NA>       NA
## 47     39 nonword     ディロクトネス  eng  <NA>  FALSE <NA>       NA
## 48     40 nonword         ケグファグ  eng  <NA>  FALSE <NA>       NA
##     freq_E
## 1  17.5744
## 2  21.4056
## 3   0.5272
## 4   0.5272
## 5   3.3743
## 6  20.8784
## 7   0.3163
## 8  11.7045
## 9  13.9541
## 10  2.4253
## 11  5.2020
## 12  3.6555
## 13  9.2793
## 14 31.5284
## 15  5.7292
## 16  2.2847
## 17 14.9382
## 18 40.7726
## 19  2.5307
## 20  3.5852
## 21  0.7030
## 22  3.5500
## 23  3.6906
## 24 13.8135
## 25      NA
## 26      NA
## 27      NA
## 28      NA
## 29      NA
## 30      NA
## 31      NA
## 32      NA
## 33      NA
## 34      NA
## 35      NA
## 36      NA
## 37      NA
## 38      NA
## 39      NA
## 40      NA
## 41      NA
## 42      NA
## 43      NA
## 44      NA
## 45      NA
## 46      NA
## 47      NA
## 48      NA

このように,各行にすべての情報が入ってしまいます。よって,行ごとに入れることを考えないといけません。これを一発できれいにできたらかっこいいんですが,思いつかなかったので,とりあえずfor関数でi行目を取り出してtibbleに入れる,を繰り返すことにしました。まずは,dataのところがリスト型になるようにtibbleを作ります。

tibble::tibble(
  pic=dat$pic,
  word=dat$word,
  data=list()
)->dat3
head(dat3)

しかしここでもまた失敗。dataの列の長さがあってないと怒られてしまいます。これを解決するためにlistの中に空のリストを入れます(正直ここで入れる要素はなんでもOK)。

tibble::tibble(
  pic=dat$pic,
  word=dat$word,
  data=list(list())
)->dat3
dat3
## # A tibble: 48 x 3
##    pic         word        data      
##    <fct>       <fct>       <list>    
##  1 2_C_sh.jpg  interview   <list [0]>
##  2 3_C_sp.jpg  court       <list [0]>
##  3 6_C_sh.jpg  alien       <list [0]>
##  4 7_C_sp.jpg  appointment <list [0]>
##  5 10_C_sh.jpg stamp       <list [0]>
##  6 14_C_sh.jpg channel     <list [0]>
##  7 15_C_sp.jpg crawl       <list [0]>
##  8 18_C_sh.jpg sense       <list [0]>
##  9 19_C_sp.jpg bench       <list [0]>
## 10 22_C_sh.jpg promotion   <list [0]>
## # … with 38 more rows

できあがった dat3 という変数の“data”列に,pic( dat の5列目)とword( dat の3列目)を除いたものを1行目から順にとってきてlistにして,それを dat3 の“data”列に順番にいれていきます。

for (i in 1:length(dat3$pic)){
  dat3[i,3][[1]]<-list(dat[i,c(1,2,4,6,7,8,9,10,11)])
}
head(dat3)
## # A tibble: 6 x 3
##   pic         word        data            
##   <fct>       <fct>       <list>          
## 1 2_C_sh.jpg  interview   <df[,9] [1 × 9]>
## 2 3_C_sp.jpg  court       <df[,9] [1 × 9]>
## 3 6_C_sh.jpg  alien       <df[,9] [1 × 9]>
## 4 7_C_sp.jpg  appointment <df[,9] [1 × 9]>
## 5 10_C_sh.jpg stamp       <df[,9] [1 × 9]>
## 6 14_C_sh.jpg channel     <df[,9] [1 × 9]>

こうすると,できあがったtibbleのdata列には1行目から順に,interview, court,…の刺激の情報が入ることになります。確認のために見てみましょう。

dat3$data[[1]];dat3$data[[2]]
##   itemID   type         kana lang prime answer form  freq_J  freq_E
## 1      2 target インタビュー  eng share   TRUE    A 29.5098 17.5744
##   itemID   type   kana lang prime answer form   freq_J  freq_E
## 2      3 target コート  eng  spec   TRUE    A 100.7255 21.4056

ちゃんと入ってますね。最後に,このtibbleをJSON形式に変換すれば完成です。

toJSON(dat3)
## [{"pic":"2_C_sh.jpg","word":"interview","data":[{"itemID":2,"type":"target","kana":"インタビュー","lang":"eng","prime":"share","answer":true,"form":"A","freq_J":29.5098,"freq_E":17.5744}]},{"pic":"3_C_sp.jpg","word":"court","data":[{"itemID":3,"type":"target","kana":"コート","lang":"eng","prime":"spec","answer":true,"form":"A","freq_J":100.7255,"freq_E":21.4056}]},{"pic":"6_C_sh.jpg","word":"alien","data":[{"itemID":6,"type":"target","kana":"エイリアン","lang":"eng","prime":"share","answer":true,"form":"A","freq_J":17.4314,"freq_E":0.5272}]},{"pic":"7_C_sp.jpg","word":"appointment","data":[{"itemID":7,"type":"target","kana":"アポイントメント","lang":"eng","prime":"spec","answer":true,"form":"A","freq_J":30.5686,"freq_E":0.5272}]},{"pic":"10_C_sh.jpg","word":"stamp","data":[{"itemID":10,"type":"target","kana":"スタンプ","lang":"eng","prime":"share","answer":true,"form":"A","freq_J":5.9216,"freq_E":3.3743}]},{"pic":"14_C_sh.jpg","word":"channel","data":[{"itemID":14,"type":"target","kana":"チャンネル","lang":"eng","prime":"share","answer":true,"form":"A","freq_J":24.4118,"freq_E":20.8784}]},{"pic":"15_C_sp.jpg","word":"crawl","data":[{"itemID":15,"type":"target","kana":"クロール","lang":"eng","prime":"spec","answer":true,"form":"A","freq_J":12.0392,"freq_E":0.3163}]},{"pic":"18_C_sh.jpg","word":"sense","data":[{"itemID":18,"type":"target","kana":"センス","lang":"eng","prime":"share","answer":true,"form":"A","freq_J":131.8039,"freq_E":11.7045}]},{"pic":"19_C_sp.jpg","word":"bench","data":[{"itemID":19,"type":"target","kana":"ベンチ","lang":"eng","prime":"spec","answer":true,"form":"A","freq_J":9.6667,"freq_E":13.9541}]},{"pic":"22_C_sh.jpg","word":"promotion","data":[{"itemID":22,"type":"target","kana":"プロモーション","lang":"eng","prime":"share","answer":true,"form":"A","freq_J":10.9216,"freq_E":2.4253}]},{"pic":"23_C_sp.jpg","word":"tuna","data":[{"itemID":23,"type":"target","kana":"ツナ","lang":"eng","prime":"spec","answer":true,"form":"A","freq_J":8,"freq_E":5.202}]},{"pic":"1_C_b.jpg","word":"iron","data":[{"itemID":1,"type":"target","kana":"アイロン","lang":"eng","prime":"base","answer":true,"form":"A","freq_J":17.9412,"freq_E":3.6555}]},{"pic":"4_C_b.jpg","word":"ground","data":[{"itemID":4,"type":"target","kana":"グラウンド","lang":"eng","prime":"base","answer":true,"form":"A","freq_J":72.4706,"freq_E":9.2793}]},{"pic":"5_C_b.jpg","word":"address","data":[{"itemID":5,"type":"target","kana":"アドレス","lang":"eng","prime":"base","answer":true,"form":"A","freq_J":52.2745,"freq_E":31.5284}]},{"pic":"8_C_b.jpg","word":"pressure","data":[{"itemID":8,"type":"target","kana":"プレッシャー","lang":"eng","prime":"base","answer":true,"form":"A","freq_J":53.1176,"freq_E":5.7292}]},{"pic":"9_C_b.jpg","word":"propose","data":[{"itemID":9,"type":"target","kana":"プロポーズ","lang":"eng","prime":"base","answer":true,"form":"A","freq_J":13,"freq_E":2.2847}]},{"pic":"12_C_b.jpg","word":"volume","data":[{"itemID":12,"type":"target","kana":"ボリューム","lang":"eng","prime":"base","answer":true,"form":"A","freq_J":6.9412,"freq_E":14.9382}]},{"pic":"13_C_b.jpg","word":"base","data":[{"itemID":13,"type":"target","kana":"ベース","lang":"eng","prime":"base","answer":true,"form":"A","freq_J":35.3725,"freq_E":40.7726}]},{"pic":"16_C_b.jpg","word":"express","data":[{"itemID":16,"type":"target","kana":"エクスプレス","lang":"eng","prime":"base","answer":true,"form":"A","freq_J":17.9216,"freq_E":2.5307}]},{"pic":"17_C_b.jpg","word":"stove","data":[{"itemID":17,"type":"target","kana":"ストーブ","lang":"eng","prime":"base","answer":true,"form":"A","freq_J":7.5882,"freq_E":3.5852}]},{"pic":"20_C_b.jpg","word":"recall","data":[{"itemID":20,"type":"target","kana":"リコール","lang":"eng","prime":"base","answer":true,"form":"A","freq_J":19.6667,"freq_E":0.703}]},{"pic":"21_C_b.jpg","word":"letter","data":[{"itemID":21,"type":"target","kana":"レター","lang":"eng","prime":"base","answer":true,"form":"A","freq_J":82.6078,"freq_E":3.55}]},{"pic":"24_C_b.jpg","word":"guts","data":[{"itemID":24,"type":"target","kana":"ガッツ","lang":"eng","prime":"base","answer":true,"form":"A","freq_J":23.7451,"freq_E":3.6906}]},{"pic":"25_C_b.jpg","word":"bike","data":[{"itemID":25,"type":"target","kana":"バイク","lang":"eng","prime":"base","answer":true,"form":"A","freq_J":25.8824,"freq_E":13.8135}]},{"pic":"17_n.jpg","word":"dootlegging","data":[{"itemID":17,"type":"nonword","kana":"ドートレギング","lang":"eng","answer":false}]},{"pic":"18_n.jpg","word":"fistilled","data":[{"itemID":18,"type":"nonword","kana":"フィスティレド","lang":"eng","answer":false}]},{"pic":"19_n.jpg","word":"stonehende","data":[{"itemID":19,"type":"nonword","kana":"ストネヘンデ","lang":"eng","answer":false}]},{"pic":"20_n.jpg","word":"polidifies","data":[{"itemID":20,"type":"nonword","kana":"ポリディフィエス","lang":"eng","answer":false}]},{"pic":"21_n.jpg","word":"mestroyers","data":[{"itemID":21,"type":"nonword","kana":"メストレイヤーズ","lang":"eng","answer":false}]},{"pic":"22_n.jpg","word":"donsoon","data":[{"itemID":22,"type":"nonword","kana":"ドンスーン","lang":"eng","answer":false}]},{"pic":"23_n.jpg","word":"splum","data":[{"itemID":23,"type":"nonword","kana":"スプラム","lang":"eng","answer":false}]},{"pic":"24_n.jpg","word":"tisobedient","data":[{"itemID":24,"type":"nonword","kana":"ティソベディエント","lang":"eng","answer":false}]},{"pic":"25_n.jpg","word":"muin","data":[{"itemID":25,"type":"nonword","kana":"ムイン","lang":"eng","answer":false}]},{"pic":"26_n.jpg","word":"dothorme","data":[{"itemID":26,"type":"nonword","kana":"ドソーム","lang":"eng","answer":false}]},{"pic":"27_n.jpg","word":"hade","data":[{"itemID":27,"type":"nonword","kana":"ヘイド","lang":"eng","answer":false}]},{"pic":"28_n.jpg","word":"ontener","data":[{"itemID":28,"type":"nonword","kana":"オンテナー","lang":"eng","answer":false}]},{"pic":"29_n.jpg","word":"tansack","data":[{"itemID":29,"type":"nonword","kana":"タンサック","lang":"eng","answer":false}]},{"pic":"30_n.jpg","word":"frool","data":[{"itemID":30,"type":"nonword","kana":"フロール","lang":"eng","answer":false}]},{"pic":"31_n.jpg","word":"antihistamone","data":[{"itemID":31,"type":"nonword","kana":"アンチヒスタモーネ","lang":"eng","answer":false}]},{"pic":"32_n.jpg","word":"parracks","data":[{"itemID":32,"type":"nonword","kana":"パラックス","lang":"eng","answer":false}]},{"pic":"33_n.jpg","word":"hypnojist","data":[{"itemID":33,"type":"nonword","kana":"ハイプノジスト","lang":"eng","answer":false}]},{"pic":"34_n.jpg","word":"croilage","data":[{"itemID":34,"type":"nonword","kana":"クロリエイジ","lang":"eng","answer":false}]},{"pic":"35_n.jpg","word":"collapsos","data":[{"itemID":35,"type":"nonword","kana":"コラプソス","lang":"eng","answer":false}]},{"pic":"36_n.jpg","word":"bikina","data":[{"itemID":36,"type":"nonword","kana":"ビキナ","lang":"eng","answer":false}]},{"pic":"37_n.jpg","word":"stimelation","data":[{"itemID":37,"type":"nonword","kana":"スティメレーション","lang":"eng","answer":false}]},{"pic":"38_n.jpg","word":"skimmud","data":[{"itemID":38,"type":"nonword","kana":"スキマッド","lang":"eng","answer":false}]},{"pic":"39_n.jpg","word":"diroctness","data":[{"itemID":39,"type":"nonword","kana":"ディロクトネス","lang":"eng","answer":false}]},{"pic":"40_n.jpg","word":"kegfug","data":[{"itemID":40,"type":"nonword","kana":"ケグファグ","lang":"eng","answer":false}]}]

テキストファイルとして保存する場合は,以下のようにします。

toJSON(dat3) %>%
write(.,file = "json.txt")

おわりに

この記事では,データフレーム形式のものを階層性をもった形でJSON形式に変換するということをやってみました。tibbleという形式ができたことで,データフレームの中にリスト型変数を持つということができます。これができれば,あとは toJSON関数 で一発で変換ができました。もしかしたらもっとエレガントな方法もあるかもしれませんが,とりあえず現状の課題は解決できました。

なにをゆう たむらゆう。

おしまい。


  1. 注: 私はこれまで,大学院で習ったHot Soup Processorというゲームを作る目的で使われることが多いプログラミング言語を使って実験プログラムを作っていました。その際にも,特にRでのデータハンドリングに習熟するようになってからは,刺激を読み込む際に,その刺激の情報も一緒に読み込んで,実験結果の出力時にロング型で表示されるようにしていました。

2020年の振り返り

毎年恒例の振り返り記事です。28日に仕事納めの予定が今日まで出勤して実験やったので,ブログも今日のうちに書いてしまおうということで30日に更新です。これまでの振り返り記事も興味がお有りの方はどうぞ。

過去の振り返り記事

ブログのこと

この記事を書いている2020年12月30日時点でのこのブログのpage viewは121,733です。ついに累計10万アクセス超えました(祝100,000PV)。2019年は年間20,000アクセス切っていましたが,今年は25,000アクセスを超えてこのブログを始めてからの最多アクセスを記録しました。ありがたいことです。

今年も昨年と同様に,平均すると月2本のペースでブログを更新しました。ただ,今年の前半あたりに投稿が集中していたので,毎月2本書いていたわけではありません。主に,新型コロナウィルスの影響で春学期がすべて遠隔授業となったことで,それに関する記事をたくさん書いたことでそうなりました。私はSlackを授業で使ったので,主にそれ関係の記事を多く書きました。

閲覧が多かった記事の上位も,R関連の記事だけではなく下記のような記事も入ってました。

42.5インチディスプレイの記事も今年に入って急にアクセスが増えたので,今年ディスプレイを新調した方が多かったのかもしれませんね。個人的には,もうあの大きさより小さい画面で仕事できないですね。

仕事のこと

3年目は2年目よりももっと仕事をうまく回せるようになるというか,学内の業務だったり授業準備の負担も減って研究に割ける時間が増えるだろうと思っていました。ところが,前述のように遠隔授業の実施に伴ってすべてが一変したので,昨年度の継続を活かすことはほとんどできなかったと言っていいかもしれません。自分のことだけでも手一杯でしたが他の先生達のヘルプもしなければいけない立場でしたので,毎日掲示板をチェックして,メールの問い合わせに返信して…みたいなことも春学期はやっていました。自分の授業に関しても,同じ教科書を使っていたとしても遠隔ではできることがまったく異なるので,すべて新しく準備することになってしまいました(多くの先生がそうだったでしょう)。

対面授業に戻った秋学期も,これまでの対面授業のようにはできない部分が多く,この状況下でできる対面授業というのを考えなくてはいけなくなりました。加えて,担当している授業がすべて異なるので(担当数=タイプ数),それもあって授業の負担感は2年目の昨年度よりもやや高かったなと思っています。

ただし,今年度は時間割のことにメインで関わっていないので,秋学期にその仕事で時間を奪われるということはなくなりましたし(たまに心苦しい気持ちになりつつ見守っています),学部のライティングの授業も持っていないので,3年目にして初めて研究室で徹夜した日数がゼロになりました(これまでも年間数日というレベルでしたけど)。

研究の面では,今年は学会がなくなったりオンラインになったりしたこともあって,停滞した感じがあります。昨年度,SLRFに行ってるときに申請書を書いていた科研費(若手研究)が採用されて,関大に着任してからようやく科研費を初めて獲得しました。それで意気込んでいたところでしたが,2020年度は研究をほとんど進められず。ウェブ実験をできるようになっておいたほうが今後データ収集がしやすくなるだろうと思って,jsPsychを勉強し始めました。

ガンバ大阪のこと

今年もガンバ大阪の年間チケットを購入していましたが,新型コロナウィルスの影響でJリーグも中断し,再開後は座席の間隔をあけたり入場人数が制限されていたので,年間チケットは払い戻しになりました。それでもホーム戦は最終節の清水エスパルス戦以外は行きました。この話題については別に記事を書いたのでそちらをお読みください。

2020シーズンに観戦したG大阪の試合

運動習慣

今年に起こった最大の変化といえば,Apple Watchを買って肉体改造に取り組んだことかなと思います。Apple Watchを買う前から,Nike Training ClubNike Run Clubで筋トレだったりランニングだったりはたまにしていましたが,Apple Watch Series3が安価で手に入るようになり,4月初旬にそれを購入してからはとにかくApple Watchのアクティビティリングを完成させることと,毎月の「チャレンジ」を達成することが生きる目的みたいになりました。特に,春学期はほとんど在宅ワークで体を動かす機会が激減したこともあって,意識的に体を動かす機会を作り出さないといけないと強く感じていました。やっぱり一日中家にこもっているのってメンタル的にもよろしくないんですよね。体を動かすことでリフレッシュするようになって,それが習慣になったので対面授業になって平日は毎日職場に来ないといけないようになっても自転車に乗る,走る,筋トレする,ヨガ,のうちのどれか2つ以上は必ずするようになりました。

だいぶ流行に乗り遅れてリングフィットアドベンチャーを買ってからは,家での運動も気軽にできるようになりました。雨の日に走りに行ったことも夏の時期は何回かありましたが,冬の雨の日のランニングはハードルが高くてなかなか行けません。そういうときに,ゲーム感覚で身体を動かして,しかもそれなりに負荷の高いことができるのはいいですね(最近リングフィットはあまりやれてませんけど)。

あとは,自転車も寒いから冬は無理だと以前は思っていましたが,意外と乗れています。漕ぎ出したらあったまるぞということと,家を出る前にウォームアップすればよいという2つを自分が学習したことが大きいと思っています。自転車だと電車通勤の半分くらいの時間で行けるので,いつもより遅い時間に家を出ても間に合います。そうしてできた時間でヨガをやるようになりました。まず10分弱のヨガ(私はいつもNTCのSimple Morning Energy Flowをやってます)をやって身体をあたためてからいくと,自転車を漕ぎ出してすぐに身体が温かくなるのでそこまで辛さを感じていません。もちろん,まだそこまで寒くないというのもあるでしょうけれど。あとは,筋肉がついて基礎代謝があがったので寒さに強くなったというのもあるかもしれません。

健康維持という目的に加えて,こういう社会情勢の中で,なにか1つでもいいから継続してやっていることで,自分の精神的な支えとしているということもあります。自己肯定感を保つために意識してやっているといいますか。続けていることが自信になってくるというのは大いにありました。運動ってなかなか継続してやるのが難しかったのですが,2020年はそれを継続してできるようになったのが自分の中で成長したと感じる部分です。

2021年度も対面授業が継続になるので,特に春学期中にどうやって運動を継続していけるのかは正直まだ全然わかりませんが,2021年度も継続していければと思います。

おわりに

最後になりましたが,みなさん,今年1年お世話になりました。来年もよろしくお願いいたします。

なにをゆう たむらゆう

おしまい。

2020シーズンに観戦したG大阪の試合

2020シーズンに観戦したG大阪の試合をまとめる完全自分用のメモ記事です。昨年度の記事↓

2019シーズンに観戦したG大阪の試合

リーグ戦

  1. 7/18 vs大分 (Home) ○2-1
  2. 7/22 vs広島 (Home) ○1-0
  3. 8/1 vs川崎F (Home) ●0-1
  4. 8/19 vs浦和 (Home) ●1-3
  5. 8/29 vsFC東京 (Home) ●1-3
  6. 9/13 vs湘南 (Home) ●0-1
  7. 9/23 vs名古屋 (Home) ○2-1
  8. 10/3 vs鹿島 (Home) ○2-0
  9. 10/14 vs横浜FM (Home) △1-1
  10. 10/24 vs柏 (Home) ○2-1
  11. 10/31 vs札幌 (Home) ○2-1
  12. 11/11 vs神戸 (Home) ○1-0
  13. 11/14 vs仙台 (Home) ●0-4
  14. 11/29 vs鳥栖 (Home) △1-1

今年はアウェイは一度も行きませんでした。Jリーグ再開後はそもそもアウェイ観戦不可能でしたが,アウェイ席が設けられるようになってからも行きませんでした。よって観に行った試合はすべてホーム戦でしたが,ホーム戦は最終節の清水戦以外有観客試合はすべて観に行ったことになります。来年度もガンバ大阪の年間チケットは販売されないことが決まっているので,2020シーズン同様に毎回チケットを買って観戦することになりそうです。

スタジアムは人が集まる場所ですが,観客が入れるようになってしばらくは2席ずつ間隔が空いていたのでかなりスペースに余裕があり,むしろ大学の授業の方がよほど密な空間だよなと思っていました。スタジアムは外ですしね。今は1席ずつ空いていますが,それでもこれまで前後左右に人がいたことを思えばそこまで密ではないですね。声を出しての応援もまだできませんし。

カップ戦

上記14試合以外にも,YBCルヴァンカップのグループステージ柏戦と,つい先日行われた天皇杯準決勝徳島戦も行きました。柏戦はリーグ戦開幕前で,2019シーズンのホーム開幕戦でした。この試合は妻と一緒に見に行きましたが,得点王になったオルンガ選手に決められて0-1の敗戦でした。結局今年のルヴァンカップはグループステージ敗退となってしまいました。

一方で,今年は優勝チームと2位チームに天皇杯の出場権が与えられるというレギュレーションとなりました。リーグ戦を2位で終えたガンバ大阪は準決勝から出場し,J2の1位で準々決勝を勝ち上がった徳島ヴォルティスと対戦しました。

徳島にボールを握られる展開でしたが,決定機をしっかり決めきって2-0の勝利でした。敵チームながら徳島はビルドアップがとてもうまかったですね。いいチームでした。

福田湧矢選手はホームで初ゴール。彼は今後ガンバの中心になってもらいたい選手です。

天皇杯決勝に勝ち進み,元日に川崎フロンターレと戦うことになりました。今年の川﨑は本当に強くて,ガンバも0-5で敗戦して目の前で優勝を見させられることになりました。簡単ではないですが,そのリベンジとしてなんとか天皇杯優勝をして今シーズンをしめくくってほしいなと思います。

印象に残っていること

2020シーズンは声を出しての応援ができなかったことや,スタジアムが満員でなかったこともあって,2019シーズンのように心に焼き付いたシーンというか劇的…!みたいな試合ってあまりなかったのですが,10/24の柏戦のアデミウソン選手の決勝ゴールは興奮しましたね。残念ながら,この試合の次の日に酒気帯び運転と事故を起こしてしまい,つい先日契約解除となってしまいましたが…。

また,今年も若手の成長が著しく,大卒ルーキーの山本悠樹選手は特にこの1年で飛躍的に伸びたなと感じます。開幕前から注目されていましたが,序盤戦は途中交代で出場してもなかなかいいパフォーマンスを見せていませんでした。ところが,先発に抜擢されたアウェイ仙台戦で初スタメン初ゴールを記録し,この試合以降ガンバ大阪に欠かせない選手になりました。

山本悠樹選手のゴールシーンは1分10秒あたりから

今シーズンスタメンに定着したのは山本選手くらいですが(高尾選手,福田選手は2019シーズンもスタメンで出てたので),シーズン後半からはレギュラークラスの選手(井手口選手,宇佐美選手,小野瀬選手)の故障もあって,奥野選手,唐山選手,川﨑選手,塚元選手なんかもベンチ入りしたりスタメンを飾る試合もありました。あとは,飛び級でU23チームで試合に出ていた中村仁朗選手も最終節で途中出場していいプレーしてましたね。彼は2003年生まれの17歳ですが,J1でも活躍できる逸材なんじゃないかと思いました。来シーズンが楽しみですね。

関西大学に勤務している私としては,関大卒のサイドバックである黒川選手の活躍を期待していましたが,残念ながら今シーズンはほとんどトップチームに絡めませんでした。特別指定選手として2019シーズンのルヴァンカップグループステージの試合に出場していたのを見たときにめちゃくちゃうまいなと思ったのですが…。2021シーズンの奮起を期待したいです。

というわけで,今日はガンバ大阪のお話でした。

なにをゆう たむらゆう。

おしまい。