R言語

R言語 エクセルに色を塗る【自作関数】

  1. HOME >
  2. R言語 >

R言語 エクセルに色を塗る【自作関数】

スポンサーリンク

こんにちは、usagi-sanです。今回は、R言語でエクセルファイルに色を塗る方法を紹介します。

統計解析を行う中で、解析結果の表などをエクセルに保存することがあると思います。解析結果を見やすくするために、エクセルファイルを開いてセルの編集を行ったり、マクロを作成したりすることがあり、Rだけでこの一連の操作を実行したいなと思った人は少なくないでしょう。

この記事で紹介する関数を用いれば、エクセルファイルのセルの色やフォントなどをRスクリプトから実行するだけで変更することができます。

関数は以下からダウンロード可能です。

また、この間数は次の記事で紹介されているパッケージにも含まれています。

R言語 自作パッケージ UsagiSan

こんにちは、usagi-sanです。 R言語の自作パッケージを紹介します。 統計解析のアルバイトをしている中、暇な時間を見つけて自分でパッケージを作ってみました。 Rのパッケージには、統計解析用のパッ ...

続きを見る

関数colorCells_excel

関数colorCells_xlsxの説明をします。

colorCells_xlsx(dataName, fileName, sheetName, coloredCols, coloredCondition = NULL, cellColor, fontSize = 11, fontName = "Yu Gothic", fontColor = "#000000")

関数colorCells_xlsxの引数
dataName編集したいエクセルファイルの名前。
fileName編集後のファイル名。
sheetName色塗りをするエクセルシートの名前。
coloredCols色塗りをする列。numeric型のベクトル。
coloredCondition色塗りをする行。logical型のベクトル。
cellColorセルの編集の際に適用される色。"#000000"(黒)のようにcharacter型で指定。
fontSizeフォントサイズ。
fontNameフォントの名前。
fontColorフォントの色。

また、関数colorCells_xlsxは以下となります。

この後、関数colorCells_xlsxの使用例についてみていきます。実際に、解析結果を色塗りしていきます。

関数colorCells_xlsxの使用例

特定の行に色を加える

エクセルファイルの特定の行に色を加えていきます。

まず、関数やエクセルファイルの入出力に必要なパッケージを準備しましょう。

次のようにデータセットinfertを用いて重回帰分析を行います。この解析結果をwrite.xlsxを用いて、エクセルファイルを作成します。下を実行すると作業ディレクトリに"重回帰分析.xlsx"というファイルが作成されます。

解析結果であるresultTableは、次のように回帰係数やp値などで構成されています。この解析結果を見やすくするために、表のヘッダーの色塗やp値に関して色塗りをしていきます。

早速、"重回帰分析.xlsx"を編集していきます。まず、resultTableのヘッダーに対応する行を緑で塗っていきます。

次のようにcolorCells_xlsxの引数を指定すると、ヘッダーに対応する行に色を加えることができます。

次に、p値に関して色塗りをしていきます。p値が0.1未満、0.05未満、0.01未満に関して色塗りをしていきます。

次のように、色塗りを行う条件とそれに対応する色を指定します。

色塗りを行う行と色を指定した後はこれらをリストに格納し、for文で色塗りを繰り返すことでp値に関して色塗りを行うことが可能です。

上を実行すると、解析結果である"重回帰分析.xlsx"は次のように変化しています。ヘッダーは緑になり、p値が0.1未満の行は紫、0.05未満の行は水色、0.01未満の行はピンクに変わっています。

エクセル色塗り

エクセルファイルを開かなくても簡単に色塗りができました。

自由に色塗り

実用性はないですが、この間数を用いれば様々な模様や絵をエクセルファイルに描くことが可能です。

次のように繰り返しcolorCells_xlsxを実行することで、自由自在にエクセルファイルのセルを編集することができます。

上記を実行すると、次の画像にある幾何学的模様を描くことができます(実用性は多分ないです)。

色塗りをする行と列を指定する引数coloredConditioncolordColsを変更するだけで柔軟に編集できます。

幾何学的模様

まとめ

R言語でエクセルファイルのセルを色塗りする方法や実行例をみていきました。

この記事で紹介した関数を用いれば、エクセルファイルに出力した表などを簡単に編集することが可能です。

また、自由に色塗りで紹介したように、複雑な幾何学的模様を描くこともできます。

興味があったら是非使ってみてください。

スポンサーリンク

  • この記事を書いた人
  • 最新記事

usagi-san

統計学とゲームとかをメインに解説していくよ。 数式とかプログラミングコードにミスがあったり質問があったりする場合はコメントで受け付けます。すぐに対応します。

-R言語
-,