あなたにもできる!ハーバード留学!!~アラフォーからのボストン留学体験記

アラフォー研究者のボストン留学体験ブログ。
研究・生活・英語・ITを中心に留学ライフハックスをお教えします!

ハーバード留学英語3年目編004:TOEFL100点をとるためには?

2015-08-27 16:49:06 | ハーバード留学英語3年目編


TOEFL100点の壁
もし有名大学の学部そしてビジネススクールなどの大学院に行きたい場合に立ちはだかるのが英語力特にTOEFLの点数である。大体ハーバードなどの有名大学だとTOEFL100点以上が科せらえることが多いが、Reading, Listening, Speaking, Writingの4カテゴリーからなるTOEFLは、日本人にとって、100点をとることは至難の業である(特にSpeaking)。

今回知人に紹介していただいて、TOEFL100点を目指す会というのに参加してきた。講師は現在ハーバード留学中で日本にいるときに1年間の間にTOEFL40点から95点まで伸ばした猛者の方である。もともとの目的は語学学校に留学中でハーバードロースクールを目指す若者にTOEFL100点を取らせようというのが趣旨なのだが、そこにおじさんたちがのっかった形である。

音読&写経がTOEFL上達の極意
その猛者の方の極意はとにかく力技である。

1)TOEFL模擬問題の量をこなす
2)音読
3)書き写し(写経)

の3つがその極意となる。まずはTOEFLの模擬問題をこなすこと。基本は4日1セットをこなすとして、初日にざっと問題を解く2日目以降はReading1セットずつ&リスニング全部を繰り返し復習するというものであり。

Readingの復習は音読しながらの書き写し(”写経”と彼は呼んでいる)

Listeningはシャドーイングと可能ならばディクテーションもしくはスクリプトを見ながらの写経

が主なメニューとなる。
またこの基本メニューにスピーキングのためのレアジョブとwritingコースが入る。

基本的には小学生が日本語を習得するのに必要なアプローチをまねているというわけである(*)。

積み重ねが肝心!平均一日0.1点の向上

講師の方は奇特なことにほぼ2週間に一回TOEFLを受けておられたため、その向上の奇跡をシェアしていただいた。その奇跡を回帰分析させていただくと、R^2が0.7196なので着実な上昇が認めらるのはいうまでもないのだが、回帰式はY=0.1256X+60.05なので、平均一日0.13点上がった計算である(**)。

基本30点あげるのにほぼ1年かかるということであり、その猛者のいうようにやれば英語力は着実にあがるもの、時間はかかることはいうまでもない。

またいうまでもないことであるけれど、日々のちょっとした向上を積み重ねていくことが何事においても重要あるというのが実感できる。

ちなみに日数、総得点、各カテゴリの点数の相関係数を出してみると、



であるから、Speakingがのびづらいことはいうまでもない。

一方でそのほかのカテゴリは伸ばしやすく、特にReadingはやればやっただけの効果がでたようであるし、総得点への寄与も高いようである。

勉強の配分としてはある程度18点前後Speakingが取れるようであれば、そのほかのカテゴリを重点的にするのが効果的であるようだ。

実際にTOEFL勉強を開始してみると
最初聞いたときはそんなことできるか!と思ったのだけれど、実際にちょっと試しにやってみると結構よくてはまってしまう。

特にTOEFLは大学生として必要な英語力があるかどうかの試験なので、大学の講義の内容がReadingやListeningに出てきたりする。これがどれもよい文章で、いろいろなところで使えそうなものなのだ。

書き写したり、シャドーイングすることで少なくともミーティングや学会発表に必要な英語表現、いいまわしのバリエーションは頭に入りそうなので、やればTOEFLの点数だけでなくいろいろと副産物がありそうである。


(*)その方は言語学者の方について英語のレッスンをうけていたのであるが、その言語学者の方曰く、非常に理にかなった方法ではあるが、普通の人はできないでしょうとのこと。。

(**)統計サマリーはこんな感じ!

Call:
lm(formula = x[, 2] ~ x[, 1])

Residuals:
Min 1Q Median 3Q Max
-6.460 -5.235 1.054 3.728 9.487

Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 60.05300 2.86834 20.937 8.17e-11 ***
x[, 1] 0.12593 0.02148 5.862 7.69e-05 ***
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 5.334 on 12 degrees of freedom
Multiple R-squared: 0.7412, Adjusted R-squared: 0.7196
F-statistic: 34.36 on 1 and 12 DF, p-value: 7.695e-05

(追記)回帰分析に使用したR scriptは簡単ですが備忘録がてら載せておきます。

> setwd("c:/Username/yourfolder")

#ファイル読み込み
> x <- read.table(file="TOEFL.csv",header=T,sep=",")

#グラフ作成
> plot(x[,1],x[,2],ylim=c(40,100), xlab="days")
> plot(x[,1],x[,2],ylim=c(40,100), xlab="Days", ylab="Score")
> abline(lm(X[,2]~x[,1])

#グラフ作成2
plot(x[,1],x[,3],ylim=c(0,30), main= "Reading", xlab="Days", ylab="Score", col=2)
abline(lm(x[,3]~x[,1]))


#相関係数計算&表示
> data.model <- lm(x[,2]~x[,1])
> data.model

#Call:
#lm(formula = x[, 2] ~ x[, 1])

#Coefficients:
#(Intercept) x[, 1]
# 60.0530 0.1259

#統計分析詳細表示
> summary(data.model)

#Call:
#lm(formula = x[, 2] ~ x[, 1])

#Residuals:
# Min 1Q Median 3Q Max
#-6.460 -5.235 1.054 3.728 9.487

#Coefficients:
# Estimate Std. Error t value Pr(>|t|)
#(Intercept) 60.05300 2.86834 20.937 8.17e-11 ***
#x[, 1] 0.12593 0.02148 5.862 7.69e-05 ***
#---
#Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

#Residual standard error: 5.334 on 12 degrees of freedom
#Multiple R-squared: 0.7412, Adjusted R-squared: 0.7196
#F-statistic: 34.36 on 1 and 12 DF, p-value: 7.695e-05

#相関係数マッピング
#パッケージ'psych'インストール
> install.packages("psych")

#パッケージ呼び出しとマッピング
> library(psych)
> cor.plot(cor(x), numbers=T)

(追記2)多変量解析は草薙の研究ログの記事がusefulで参考にさせていただきました。

またplot関数の色指定は、統計解析フリーソフト R の備忘録頁 ver.3.1さんの記事がわかりやすいです。

医療関係者用英文推薦状ひな形(Drafting Your Chief's Letterセミナー資料)

2015-08-20 14:32:12 | 奨学金&キャリアディベロップメント

Reference Letter Exceptsより引用(一部改変)。

MGHのfaculty用のセミナー"Drafting Your Chief's Letter"の資料です。

facultyの昇進のための推薦状なので量や内容はちょっと大目ですが、書き出しなどの言い回しは参考になりますね。

またHarvard Medical Schoolのサイト Administrator Resources/Appointments and Promotions/Forms, Guidelines and Tools 資料も参考になるかもしれない。

追記:こういう本もよさそうですね。
Instant Recommendation Letter Kitのページ紹介

追記
http://gsi.berkeley.edu/media/sample-recommendation-letter.pdf
や以下にあげるような
https://www.med.illinois.edu/facultydev/letterofref/stronglettersample.phpもよさそうなサイトです。

Letters of Reference
Letter Sample
Information about writing the letter
STRONG Letter of Recommendation for a Good Student

Source: University of Washington, Family Medicine Residency Selection & Career Advising http://www.fammed.washington.edu/predoctoral/advising/LORgood.html(多分リンク切れ)

July 12, 2000

Dear Residency Program Director:

I am pleased to write a letter of recommendation for Margaret Beaufort who is applying to your family medicine residency program. Margaret participated in our 4-week maternal and child health elective program in the Department of Family Medicine.

During the MCH elective Margaret worked closely with the MCH team which consists of the resident staff, maternal and child health fellows, attendings in family medicine, pediatrics, and obstetrics and gynecology. The MCH team cares for over 700 mothers and infants per year. During this elective she worked in the outpatient setting in a consortium of community health centers serving mostly underserved women and children from a variety of cultural backgrounds. In the inpatient setting Margaret worked with the team in caring for the needs of laboring women and continued to care for them on the postpartum floor and cared for their babies in the Nursery. Margaret was a very motivated and hard working student and by the end of the rotation was serving in the first year resident role. She worked extremely well with the residents and fellows and was well accepted by the nursing staff. She was a conscientious student and showed an excellent fund of knowledge and a willingness to go beyond the usual role of students, demonstrating a commitment to continuity in caring for her patients. Margaret also participated in our MCH fellowship seminar series where we attempt to introduce policy level issues focusing on the broader issues facing the delivery of MCH care.

In summary, I highly recommend Margaret Beaufort for residency training in family medicine. I think she will be an outstanding resident and will positively contribute to whatever residency program is able to recruit her.

Sincerely,

Richard D. York, M.D.

This letter received a high rating because the writer knew the student well and was able to give specific examples and clinically relevant information.
https://www.med.illinois.edu/facultydev/letterofref/stronglettersample.phpより引用)

histgram by R

2015-08-12 18:29:47 | バイオ系のためのR覚え書
Rでhistgramは簡単に生成できるが、結構厄介な点もある。
まず基本的なhist()関数での生成を簡単に書いておく。

デモデーターを生成

> a <- rnorm(100,20,5)
> b <- rnorm(60, 10,3)
> c <- rnorm(80, 5,3)
> d <- rnorm(100,20,5)
> e <-rnorm(60,10,4)
> f <- rnorm(80,5,5)

まずはテストで
>hist(a)
と入力すると白黒のヒストグラムを簡単に作ってくれる。

これだと芸がないので、色をつけて、X軸のレンジとピッチサイズをbreaksで指定する。

>hist(a, col="blue", breaks=seq(-5,40,2.5))



同様にデーターb、cについても

>hist(b, col="red", breaks=seq(-5,40,2.5))

で、


>hist(c, col="green", breaks=seq(-5,40,2.5))


とここまでは簡単に生成できる。

次に重ね合わせ、二つ目以降の式でadd=Tとすればよいから、

>hist(a, col="blue", breaks=seq(-5,40,2.5))
>hist(b, col="red", breaks=seq(-5,40,2.5), add=T)
>hist(c, col="green", breaks=seq(-5,40,2.5), add=T)



Y軸のレンジをylim=c(1,40)で指定してちょい修正。

>hist(a, col="blue",ylim=c(1,40),breaks=seq(-5,40,2.5))
>hist(b, col="red", breaks=seq(-5,40,2.5), add=T)
>hist(c, col="green", breaks=seq(-5,40,2.5), add=T)



やはり重ね合わせはうまくいかない。
特に6つのグラフが重なるような状況になると悲惨である。

>hist(a, col="blue",ylim=c(1,40),breaks=seq(-15,40,2.5))
>hist(b, col="red", breaks=seq(-15,40,2.5), add=T)
>hist(c, col="green", breaks=seq(-15,40,2.5), add=T)
>hist(d, col="orange", breaks=seq(-15,40,2.5), add=T)
>hist(e, col="yellow", breaks=seq(-15,40,2.5), add=T)
>hist(f, col="purple", breaks=seq(-15,40,2.5), add=T)



とまあひどい感じの重ね合わせになる。

一応biostaticsのページにreshape2とggplot2をつかってやる綺麗にhistgramを重ね合わせる方法がでているのであるが、このページと同じ内容をおこなってもmelt()がうまく働いてくれない(*)

(*)なんとなくバグっぽい!!!


ANOVA by R

2015-08-12 01:26:11 | バイオ系のためのR覚え書
あまり詳しくないのですが、多変量解析もRでわりと簡単にできるのでやり方を書いておきます。フリーソフトでなんでもできるっていうのは、ある意味驚愕ですねぇ。

まずデモデーターをこれにて
#乱数で、サンプル数100, 平均20, 標準偏差5のデーターをつくる
> a <- rnorm(100,20,5)
#乱数で、サンプル数60, 平均10, 標準偏差3のデーターをつくる
> b <- rnorm(60, 10,3)
#乱数で、サンプル数80 平均5, 標準偏差3のデーターをつくる
> c <- rnorm(80, 5,3)
#乱数で、サンプル数100, 平均20, 標準偏差5のデーターをつくる
> d <- rnorm(100,20,5)
#乱数で、サンプル数60, 平均10, 標準偏差4のデーターをつくる
> e <-rnorm(60,10,4)
#乱数で、サンプル数80 平均5, 標準偏差5のデーターをつくる
> f <- rnorm(80,5,5)

ここではa-fはそれぞれ別々の実験条件、データーは例えば各細胞ごとのある遺伝子の発現とする(シングルセルの遺伝子解析みたいな)。

ANOVAをおこなうには、基本的には各実験条件a-fごとの数値データの複数のベクトルから、数値データの一続きのカラムとそれに対応した実験条件のカラムが入ったデーターシートをつくればよい。

詳しくはRにもともとはいっているChickWeightのデーター構造を参考にすればよい。
ChickWeightをみてみると

>ChickWeight
weight Time Chick Diet
1 42 0 1 1
2 51 2 1 1
3 59 4 1 1
4 64 6 1 1
5 76 8 1 1
6 93 10 1 1
(中略)
574 175 14 50 4
575 205 16 50 4
576 234 18 50 4
577 264 20 50 4
578 264 21 50 4

とこのようになっており数値データー(weight)と実験条件(Diet)からなる2カラムのデーターフレームをつくるような感じである。

まずデーターカラムの作成をおこなう。
>  z <- c(a,b,c,d,e,f)

次に実験条件カラムの作成をおこなう。a,b,c,d,e,fそれぞれのデーター数ごとに、実験条件を割り振ることが目標である。
まず各実験条件ごとのデーター数の把握。
> times <- c(length(a),length(b),length(c),length(d),length(e),length(f))
次に繰り返し関数rep()を用いて、各種事件条件の割り振り。
> condition <-factor(rep(c("control","treatment1","treatment2","treatment3","treatment4","treatment5"),times))


そしてANOVA解析

>Data <- data.frame(z,condition)
でデータシートを作って
>head(Data)
で確認

z condition
1 23.246773 control
2 3.831205 control
3 27.163325 control
4 26.225653 control
5 22.088505 control
6 21.728285 control

こんな感じ。。

>fm1 <- aov(z~condition, data=Data)
>anova(fm1)

Analysis of Variance Table

Response: z
Df Sum Sq Mean Sq F value Pr(>F)
condition 5 20578.7 4115.7 217.81 < 2.2e-16 ***
Residuals 474 8956.9 18.9
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

有意差ありとでる。

そこでサブ解析も行うと、

>pairwise.t.test(z, condition, p.adjust="bonferroni")

Pairwise comparisons using t tests with pooled SD

data: z and condition

control treatment1 treatment2 treatment3 treatment4
treatment1 < 2e-16 - - - -
treatment2 < 2e-16 6.4e-10 - - -
treatment3 1 < 2e-16 < 2e-16 - -
treatment4 < 2e-16 1 1.2e-07 < 2e-16 -
treatment5 < 2e-16 1.3e-08 1 < 2e-16 1.7e-06

P value adjustment method: bonferroni

実験条件のどれとどれの間に差があるのかわかるようになる。なお使用する統計量は何も書かなければ、適当にソフトが選んでくれるようだ。

box plotとdot plotの重ね合わせ(How to overlay your box plot with dot plot by R?)

2015-08-11 23:57:07 | バイオ系のためのR覚え書
次にやりたいのは、boxplotとdotplotの重ね合わせでしょうか?

#乱数で、サンプル数100, 平均20, 標準偏差5のデーターをつくる
> a<-rnorm(100,20,5)
#乱数で、サンプル数60, 平均10, 標準偏差3のデーターをつくる
> b<-rnorm(60,10,3)
#乱数で、サンプル数80 平均5, 標準偏差3のデーターをつくる
> c<-rnorm(80,5,3)

ここで問題となるのは、dotplotを生成する関数stripchart()が複数のオブジェクトを入れられないことです。
そこでdata.frame()をつかってデーターフレームを作りたいところですが、このケースのようにサンプル数が違う場合data.frameが働きません。そこでb, cのあまりの部分に空の値である。NAを放り込んで、サンプル数を同じにしてデーターフレームをつくってみます。

#b[61]~b[100]にNAを入れる
> b[61:100]<-NA
#c[81]~c[100]にNAを入れる
> c[81:100] <-NA
#ベクトルa,b,cからなるデーターフレームを作る
> data<- data.frame(a,b,c)

#確認
> data

ここまでくればだいたいOKでしょう。




といったグラフが得られるでしょう。
このままだとやはりみにくいので、

> boxplot(data, ylim=c(0,35),outline=F,col=c("Blue", "Red", "Green"),names=c("control","Treatment1", "Treatment2"),plot=T,ylab="% of CD34+ cells")

> stripchart(data, vertical = TRUE, pch = 21, col = "black", bg =NA,method = "jitter", add = TRUE)
として


とか

> boxplot(data, ylim=c(0,35),outline=F,col=c("Blue", "Red", "Green"),names=c("control","Treatment1", "Treatment2"),plot=T,ylab="% of CD34+ cells")

> stripchart(data, vertical = TRUE, pch = 21, col = "maroon", bg ="orange",method = "jitter", add = TRUE)
として



とかグラフをつくってみるとよいのではないでしょうか?

*Rスクリプトをうまくブログに乗せる方法がわからず、以前の表記に戻しました。