logo

Rでの商と余りの求め方 📂R

Rでの商と余りの求め方

概要

プログラミング言語の文法において、本当に統一されていないのが商と余りの演算子である。基本的には似ているように見えるが、逆にそれが混乱の原因となっている。Cでは商には/を、余りには%を使い、Pythonでは商には//を、余りには%を使うなど、混乱の例はいくらでも挙げられる。

統計と行列の計算に焦点を当てたRでは、商と余りを計算する機会がどこにあるかと思うかもしれないが、意外にも季節性に関するコーディングやカテゴリカルデータの扱いの際に、モジュロ演算がしばしば登場する。商は%/%で、余りは%%で計算する。以下の例を見てみよう。

20171111_152354.png

$13$ を $5$で割ると、商は$2$で、余りは$3$と、正確に計算されていることがわかる。Rでは、+、-、*、/、^の五つの基本演算と論理演算子以外は、全て%と%の間に何かを入れて新しい演算子を作る。%%は%の間に何もないと考えれば、例外なく適用されるルールなので、覚えやすいだろう。

幸いにも論理演算子は==、>、<、!=、&、|と、他の言語でも使われる一般的な形を共有している。

ちなみに、Rのユーザーが主に統計分析を目的としているため、あまり知られていないが、Rには複素数が実装されている。 20171111_164130.png str 関数を通じて構造を調べると、cplx(複素数)と確認できる。このような複素数も基本的な演算子で問題なく計算できる。