6章環境
手元のデッキはブラックジャック(あるいはハーツ、戦争)に対応できるようになりましたが、shuffle
、deal
関数はそのレベルについていけているでしょうか。全然ダメです。たとえば、deal
は同じカードを繰り返し配っています。
deal(deck) ## face suit value ## king spades 13 deal(deck) ## face suit value ## king spades 13 deal(deck) ## face suit value ## king spades 13
そして、shuffle
関数は、実際にdeck
をシャッフルしているわけではありません。シャッフルされたdeck
のコピーを返しているだけです。一言で言えば、この2つの関数は、deck
を使ってはいるもののdeck
を操作していません。しかし、本当はdeck
を操作したいのです。
2つの関数を修正するためには、Rがdeck
のようなオブジェクトをどのようにして格納、検索、操作しているかを理解する必要があります。Rは、環境システムの力を借りてこれらのことを行っています。
6.1 環境
コンピュータがファイルをどのように格納しているのかについて少し考えてみましょう。すべてのファイルはフォルダに格納され、それらのフォルダはほかのフォルダに格納されて、全体として階層的なファイルシステムを形成しています。コンピュータがあるファイルを開こうとするときには、まずこのファイルシステムの中でファイルを検索しなければなりません。
ファイルシステムは、Finder(Mac)やエクスプローラ(Windows)を開けば見ることができます。たとえば、図6-1は、私のコンピュータのファイルシステムの一部を示しています。フォルダは山ほどありますが、その中の1つとしてDocumentsというものがあります。その中にはggsubplotというサブフォルダがあり、さらにその中にはinst、そしてその中にdocというサブフォルダがあって、docの中にはmanual.pdfというファイルがあります。 ...
Get RStudioではじめるRプログラミング入門 now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.