iT邦幫忙

DAY 23
1

成為資料工程師最初的 28 堂課系列 第 23

資料工程師第 22/28 課: 程式語言 R 與其他

[修讀原因]

工程師有三種: 一種是會出嘴巴的, 一種是會設定找問題的, 一種是會寫程式開發的, 雖然說這三種工程師都有其自己定位, 但身為一個 Data Engineer 在其描述不是電腦專才, 而是 Hacking Skill, 這指的是實作的能力, 因此若不會寫程式的話, 以這個 Hacking Skill 觀點是不夠的.

當然這會寫程式是不單純的, 其中還包含很多面項, 例如:

  • 對語言的熟悉度
  • 對函式庫的掌握度
  • 對開發環境的應用度
  • 對演算法的了解度
  • 對開發流程(版本控制)的實用度
  • 對工具的適用度
  • .........

等等等等都是一個好的 Developer (Programmer) 須要的條件.

除外, 語言的種類倒是在其次, 無論是用 PHP, Python, Java, R, ..... 都是可以的, 一種語言不可能有全面且壓倒性的適用度強過其他種, 而選擇一個語言要看的點有:

  • 函式庫是否有符合類似須求的方向
  • 社群是否有強而有力的支援
  • 開發環境是否足夠
  • 執行的速度與效能
  • ......

等等等等都是選擇開發使用語言的考慮因素.

這邊會拿出 R 是有原因的, 當然是 R 在統計方面的資源真的很多, 尤其是一些新的觀念的函式庫會讓開發時間與資源成本少很多, 但這個只適用對語言都不太熟的, 若是你最熟悉那個語言, 在大部份的經驗就是那個語言是最好的.

[基本資訊]

[基本介紹]

R 最強的地方有幾項:

  • 可以直接製圖
  • 許多統計函式庫

就如 R Project 所說的:

  • an effective data handling and storage facility,
  • a suite of operators for calculations on arrays, in particular matrices,
  • a large, coherent, integrated collection of intermediate tools for data analysis,
  • graphical facilities for data analysis and display either on-screen or on hardcopy, and
  • a well-developed, simple and effective programming language which includes conditionals, loops, user-defined recursive functions and input and output facilities.

而語言的學就是去用, 就建議大家找個題目去實作, 這樣就學會了.

[修習方式]

電子書:

開放課程:

關鍵字:

  • Programming with Big Data in R
  • Rmetrics

上一篇
資料工程師第 21/28 課: Information Retrieval / Software Agent / Crawler
下一篇
資料工程師第 23/28 課: 電腦與網路相關數學
系列文
成為資料工程師最初的 28 堂課30

1 則留言

0
ccshih
iT邦新手 4 級 ‧ 2 年前

我覺得 R 只是拿來選模型用的,資料量一大, R 就爆炸了。 雖然 R 有些 parallelization 的技巧,用起來還是不如有內建平行處理的框架來的方便啊。

我要留言

立即登入留言