Python&R: コンピュータ英語IIのアンケートのデータをcopy&pasteで読み取る ver. 1

以前、RとPythonの両方で、copy & pasteの方法を書きました。

 

R:Webページの表をクリップボードでコピー, datapasta

 

Python: Webページの表をクリッポードでコピー

 

これらを使って、コンピュータ英語IIで実施した簡単なアンケートの結果をグラフにします。

 

I.Rの場合

 

授業はMOODLEを使用しています。このアンケートもMOODLEの機能を利用したものです。

アンケート結果はMOODLE上で次のように表示されます。担当者(私)からは、だれがどれを選んだかがわかる記名式アンケートです。ご覧のように私の回答も含まれていますので、私の画像がある項目は1人分差し引く必要があります。

 

 

表の黄色いマーカーのつけられた2行をコピーして、通常の手順でRに読み込もうとしましたがうまくいきません。いろいろためしたところ、行名に”“と”“があるためにエラーになることがわかりました。

自作のページでない限り、もとの表を書き換えることはできないので、ふつうは、ここで諦めてしまうところですが、datapastaのよいところは、スクリプトを実行するのではなく、tribbleのスクリプトを書書く機能であるという点です。

ですから、エラーがでたら、エラーの部分のスクリプトを手直して正しいスクリプトに修正することができます。カッコを削除し、全体を整えて次のようにすると正しく読み込むことができました。

 

library(datapasta)
library(tidyverse)
tribble_paste()
df0 <- tibble::tribble(
~Excelの使い方, ~Python入門, ~R入門, ~Inkscapeの初歩, ~Gimpの初歩,
~Blenderの始め方, ~Wordの使い方, ~PowerPointの使い方, ~newsの英語,
~popsの英語, ~programmingの英語,
15,11,6,4,5,5,9,9,7,2,7
)
 

 

 

次に、データ全体を、Questions列とその答えのNumber列に振り分けて縦長のデータをつくり、ggplot2でグラフを描きいます。データを縦長にするのは、ggplot2で簡単に扱えるようにするためです。

 

# from wide to long
df0_long <- df0 %>%
gather(Questions, Number)
# create a basic barplot
p<-ggplot(data=df0_long, aes(x=Questions, y=Number)) +
geom_bar(stat="identity")
p
 

 

次のシンプルなグラフを描くことができました。しかし、赤字で示した点を修正したいです。それから、transpose(たてよこ変換)するなら、降順にしたいですね。

 

 

スクリプトを次のようにすると、思ったとおりのグラフを描くことができました。

 

# create a full-blown barplot
p<-ggplot(df0_long, aes(x=reorder(Questions, Number), y=Number,
fill=Questions), family="HiraKakuPro-W3") +
geom_bar(stat="identity") +
geom_text(aes(label=Number), hjust = 1.8, vjust = 0.4, color="white", size=5) +
labs(x='Questions', y="number") + coord_flip() +
ggtitle("コンピュータ英語で学びたいこと") +
theme_bw(base_family = "HiraKakuProN-W3")
p
 

 

私の1票をPythonとBlenderから引いても、Pythonに10人、Blenderにも4人の学生が関心を持っていることがわかります。

Blenderは知っているだけでもすごいと思います。私のブログを読んだのかな?大学のコンピュータにインストールされていないので、授業では単に紹介するだけになります。

当然のことながら、MS OFFICE系のアプリケーションを学びたいという学生が多いです。

私はMOS資格をもっていせんが、スキルのレベルとしては、ExceltとWordとPowerポイントを教えることができます。でも、PowerPointって教えるような難しいところあるかな?

WordはMOS対策の授業をもっていたこともありますし、かなり使い込んだのでよく使えるほうだと思いますが、理系の人はWordを使えても不思議なくらい全く評価しませんよねえ。確かにWordよりExcelのほうが楽しいとは思いますが、、、。

確かに、Excelは関数やグラフを自由に描けるようになると楽しくなるのですが、RとかPythonを使うようになると、めちゃめちゃ手間をかけていたということがわかって、「PythonかRでやったら速いのに」とか「PythonやRならこんなこともできるのに」と思うようになります。

ということで、Excelのマクロとか難しい関数は取り上げません。マクロ覚えるなら、PythonやRを覚えた方がよいでしょう。

 

II.Pythonの場合

to be continued

Please follow and like us:
error

About shibatau

I was born and grown up in Kyoto. I studied western philosophy at the University and specialized in analytic philosophy, especially Ludwig Wittgenstein at the postgraduate school. I'm interested in new technology, especially machine learning and have been learning R language for two years and began to learn Python last summer. Listening toParamore, Sia, Amazarashi and MIyuki Nakajima. Favorite movies I've recently seen: "FREEHELD". Favorite actors and actresses: Anthony Hopkins, Denzel Washington, Ellen Page, Meryl Streep, Mia Wasikowska and Robert DeNiro. Favorite books: Fyodor Mikhailovich Dostoyevsky, "The Karamazov Brothers", Shinran, "Lamentations of Divergences". Favorite phrase: Salvation by Faith. Twitter: @shibatau

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.