Python で表計算アプリを開発した。NumPy と pandas を利用している。
使い方
- ヘッダーのフォームに t を入力
- 左のテキストエリアにタブ区切りのデータを貼りつける
- 青い矢印のアイコンをクリックするか、カーソルがフォームにフォーカスされた状態でエンターキーを押す
説明のために次のデータを使う。
Country Area Population
Russia 17,098,242 145,934,462
Canada 9,984,670 37,742,154
United States 9,833,517 331,002,651
China 9,596,960 1,439,323,776
Brazil 8,515,770 212,559,417
Australia 7,741,220 25,499,884
データ出典 Countries in the world by population (2020)
列の抽出
[
と ]
の間に列名を入れるとその列が抽出される。カンマ区切りで複数の列を抽出できる。例えば t [Country,Area]
で Country と Area の列が抽出される。
行の抽出
[:3]
とすると 0 行目から 3 行目までが抽出される。[0:3]
とやっても同じ結果になる。
[2:]
と入力すると 3 行目からすべての行が抽出される。つまり 2 行目までの行が消される。
t [2]
と入力すると、下図のように 3 行目のアメリカだけが抽出される。
並び替え
ハイフン -
を列名につけると、その列でソートされる。ハイフン 1 つで昇順になる。
下図のように、ハイフン 2 つで降順になる。中国が一番上にきている。
新しい列の追加
&
の後に列名と式を入れると、新しい列が追加される。
上図では人口密度という列を追加している。式は Density=Population/Area
である。
今までの機能を組みあわせた例
人口密度の列を追加し、面積の列を消し、人口密度で並び替え、上位 3 国を抽出する例。
コマンド
t &Density=Population/Area [Country,Population,Density] --Density [:3]
統計
平均や分散などの関数をオプションで入力できる。a は平均。t a
と入力するだけで各列の平均が求まる。
オプション一覧
a 平均
median 中央値
mode モード
var 分散
std 標準偏差
数式
上の例は Density=Population/Area
という数式で列を追加したが、高度な関数も直感的に入力できる。
入れ子になった関数も対応済み。三角関数などの標準的な関数はだいたい入っている。べき乗は ^
でなく **
を使う。
図
これまで t
を使ってきたが、g
で図を表示できる。グラフは開発途中なため、Matplotlib の原始的なグラフしか表示されない。また t
コマンドと接続もできない。
グラフは g
コマンドに line
などのオプションを入力する。現在は 2 列のデータを棒グラフと折れ線グラフにしか表示できない。
このアプリの長所
- 無料
- オンラインで手軽に操作できる
- 余計なデザインがなく、操作に集中できる
- 機能が随時更新される
- 余計な中間データを作らずにデータを作成できる
- 出力データはタブ区切りであるため、簡単にエクセルに貼りつけられる
- 高度な数式を入力できる
- 図を表示できる
表計算アプリ
表計算
公式ページ
Math-Serif
このアプリの短所
- ドキュメントはすべて英語
- サーバーがアメリカ東海岸にあるため、レスポンスがほんの少し遅い
ドキュメントはすべて英語で書かれているが、表計算アプリは t
コマンドですべて動く。入力したデータ、出力されるデータはもちろんサーバー内に保存されない。