R データフレームからより高速にデータを抽出する方法

Reference - https://twitter.com/RLangTip/status/712671695228768257
Script
library(performanceAsLeader) #日本国債金利取得パッケージ
jgb(10)
nrow(jgbData);head(jgbData);tail(jgbData)
jgbData$JapaneseGovernmentBond.10Y[10000]
jgbData[10000,"JapaneseGovernmentBond.10Y"]
system.time(for(lll in 1:10^5)jgbData$JapaneseGovernmentBond.10Y[10000])
system.time(for(lll in 1:10^5)jgbData[10000,"JapaneseGovernmentBond.10Y"])
system.time(for(lll in 1:10^5)jgbData[10000,"JapaneseGovernmentBond.10Y"])
system.time(for(lll in 1:10^5)jgbData$JapaneseGovernmentBond.10Y[10000])
Result
> nrow(jgbData);head(jgbData);tail(jgbData)
[1] 10740
        Date JapaneseGovernmentBond.10Y
1 1974-09-24                         NA
2 1974-09-25                         NA
3 1974-09-26                         NA
4 1974-09-27                         NA
5 1974-09-28                         NA
6 1974-09-30                         NA
            Date JapaneseGovernmentBond.10Y
10735 2016-03-15                     -0.025
10736 2016-03-16                     -0.054
10737 2016-03-17                     -0.054
10738 2016-03-18                     -0.101
10739 2016-03-22                     -0.100
10740 2016-03-23                     -0.111
> jgbData$JapaneseGovernmentBond.10Y[10000]
[1] 0.618
> jgbData[10000,"JapaneseGovernmentBond.10Y"]
[1] 0.618
> system.time(for(lll in 1:10^5)jgbData$JapaneseGovernmentBond.10Y[10000])
   ユーザ   システム       経過  
      1.22       0.00       1.21 
> system.time(for(lll in 1:10^5)jgbData[10000,"JapaneseGovernmentBond.10Y"])
   ユーザ   システム       経過  
       2.4        0.0        2.4 
> system.time(for(lll in 1:10^5)jgbData[10000,"JapaneseGovernmentBond.10Y"])
   ユーザ   システム       経過  
       2.4        0.0        2.4 
> system.time(for(lll in 1:10^5)jgbData$JapaneseGovernmentBond.10Y[10000])
   ユーザ   システム       経過  
      1.22       0.00       1.22 
>