Excel のテーブルを使ったデータ処理の例
2018/1/11執筆
Excel のテーブル機能があまりに知られていないので、簡単な使い方を書いてみる。工学的な使い方ならセル参照よりも圧倒的に楽だと思うのだが……。macOS で Numbers 使っている人ならこの便利さはわかるはず。
例: 高専1年生くらいでやりそうな正弦波のグラフ作成 (0.01秒刻みで0.1秒までの10Hzの正弦波波形)
dt の定義
あとで簡単に変えられるように dt を定義する。
A1 にラベルとして「dt」と記入
B1 にその値である 0.01 を記入。後で変更するような定数には色を塗っておくとわかりやすい
B1 を選択した状態で名前ボックスに「dt」と入力。
これでこの Excel ファイル内では dt と書くと B1 セルが参照される
https://gyazo.com/0ba6a03975e3ca15050c0cfee4afa415
テーブルの作成
時刻と電圧のタイトルを持つテーブルを作成する。
A3セルに時刻t[s]と記入
B3セルに電圧v[V]と記入
11個分のデータを作りたいので、A3からB14までの範囲を選択
挿入リポンの「表」をクリック
https://gyazo.com/5368ea975c96a3830a4deee31378f7ed
テーブルの作成というダイアログが開くので、「先頭行をテーブルの見出しとして使用する」をクリック
OKをクリック
範囲がテーブルに変換される
https://gyazo.com/af3a12459baba3b16a64bb54069d48cd
時刻の列を作る
時刻の列はインデックスにdtをかけ算すればよい。Numbers と異なりテーブル内のインデックスは得られないので、セル参照のROW()を使う。4行目のインデックスを0にしたいので、4を引き算する。
テーブルの時刻列のどこかをクリック
「=(row()-4)*」まで記入
B1のセルをクリック(左図)
名前参照である dt が表示される
もちろんタイプしてもよい
リターンキーを押すと列が全て同じ式で充填される(右図)
https://gyazo.com/b0f99c1a241344a968f9edae1ae5d04d → https://gyazo.com/284dfda1b5a3fffbf6698b7fe2cc16f6
周波数 f の定義
A2 のセルにラベルとして「f」を記入
B2のセルに周波数である「10」を記入。ここも後で変えることも考え色を付けておく
B2 を選択した状態で名前ボックスに「f」と入力。
これでこの Excel ファイル内では f と書くと B2 セルが参照される
https://gyazo.com/90e230de42e771b0ad582f0936a1c140
電圧の列を作る
テーブルの電圧列のどこかをクリック
「=cos(2*PI()*f*」まで入力 (f を入れただけで B2が選択された状態に見える)
A4セルをクリック
「)」を入力
リターンを押すと、右図のように列のデータが全部充填される
https://gyazo.com/5a776e1d0cc3248323ce2676f62b6cb8 → https://gyazo.com/ccbbd6c41156777ee196ef16a267d58c
グラフを描画
せっかくなので、時間-電圧グラフを描画してみる。
テーブル内のどこかのセルをクリック
挿入リボンの散布図ボタンをクリック
散布図(平滑線とマーカー)をクリック
https://gyazo.com/2bcc75a6a131c44e218d5fb61ad960e0
これだけで以下のようなグラフが作成される。範囲指定なども必要ないので楽だと思う。
https://gyazo.com/0dbdcea85c13517cfc352f62bb40404e