こちらもおすすめ
【2022年1月最新:全部受講】Udemyのおすすめ31選をカテゴリ別に紹介【データサイエンス/機械学習,Python/R/SQLプログラミング】 | Quant College
QuantLib-Pythonチュートリアル(導入編)をリリースしました。 | Quant College
【初心者から上級者まで】Pythonプログラミング独学におすすめの本6選 (難易度順)【感想あり】 | Quant College
【感想あり】C++プログラミングの独学におすすめの本4選【金融工学徒向け】 | Quant College
PythonとR言語の文法の違い
PythonとRはデータサイエンス界隈でよく比較されるが、コードを書く立場からすると文法も結構異なっており、Pythonユーザーが何となくRコードを書くとエラーに苦しんだりする。
文法の違いで注意したほうがいい点は以下の通り。
- 配列のインデックスが、Pythonは0始まりだが、Rは1始まり(実はJulia言語もRと同じく1始まり)
- 行列など多次元配列の要素にアクセスする際、Pythonは X[i][j] だが、Rは X[i, j] とカンマで区切る
- 行列の一行を切り出してベクトルとして関数func()に渡す際、Pythonは func(X[i]) だが、Rは func(X[i,]) としないといけない(カンマが必要)
- ifやforの制御構文で、Pythonは if x > y: だが、Rは if (x > y) { } としないといけない(RはC言語などと同じ書き方。{ }でブロックを表現する。)
- for文は、Pythonが for i in range(10):
に対し、Rは for (i in 1:10) { } と書く - 関数定義は、Pythonが def func():
に対し、Rは func <- function() { } と書く - += などの塁算代入演算子が、Pythonにはあるが、Rにはデフォルトではないと思われる
- 関数の返り値で、Pythonは return a だが、Rは return(a) としないといけない(かっこが必要)
- 変数への代入について、代入演算子がPythonは「=」だが、Rは「<-」が推奨されている
全体的にPythonのほうがシンプルで、Rは少々クセのある書き方、という印象である。先にPythonを学んでからRを学んだほうがいいかもしれない。
データサイエンス関連では特に、配列のインデックスが1始まりという点や、行列からベクトルを切り出す際に X[i,] とカンマが必要な点などは要注意だろう。
あわせて読みたい
主成分分析と因子分析の違いと使い分け【わかりやすく】 | Quant College
第一種過誤/第二種過誤とは?違いと覚え方をわかりやすく | Quant College
再現率/適合率とは?違い/覚え方【わかりやすく】 | Quant College
数学とプログラミングのどちらの能力を伸ばしておくべきか? | Quant College
金融工学の研究/実務で使うプログラミング言語10選 | Quant College
クオンツ業務で必要なプログラミング言語は? | Quant College
競技プログラミング経験はクオンツ就活で有利になるか | Quant College
こちらもおすすめ
【2022年1月最新:全部受講】Udemyのおすすめ31選をカテゴリ別に紹介【データサイエンス/機械学習,Python/R/SQLプログラミング】 | Quant College
QuantLib-Pythonチュートリアル(導入編)をリリースしました。 | Quant College
【初心者から上級者まで】Pythonプログラミング独学におすすめの本6選 (難易度順)【感想あり】 | Quant College