NDJSON を XLSX に変換

ここで NDJSON を XLSX に変換できます。無料、アカウント不要です。ファイルを上の枠に落とせば、数秒で結果がダウンロードできる状態になります。 変換はお使いのブラウザーの中で行われるので、ファイルはアップロードされません。Windows でも macOS でも Linux でも、iPhone でも Android でも同じように動き、通信を切っても動き続けます。

  • 処理される場所 ブラウザーの中です。ファイルがアップロードされることはありません。
  • 作り直し XLSXはNDJSONとは仕組みが違います。非可逆コーデックのような段階的な劣化ではありません。XLSXが表現できるものは忠実に再現され、対応するものがないものはまったく残りません。
  • ファイルサイズの上限 1ファイルあたり100MBまで。無料、アカウント不要です。
  • 知っておきたいこと 入れ子のオブジェクトは平らにされて列になります。深く入れ子になったデータは形を失います。

一度に100ファイルまで。フォーマットが混ざっていても構いません。

ログをそのまま Excel で開きたいときに

アプリケーションのログや API のイベント記録が NDJSON 形式で出力されることがあります。1 行ずつ独立した JSON のままでは表計算ソフトで集計できないため、この変換で表に変えます。

1 行の JSON が 1 行の表になる

NDJSON の各行は独立した JSON なので、この変換はその行ごとに読み取り、それぞれを表の 1 行として書き出します。行によって持っているキーが違っていても、それぞれの行が持つ値がその行の列に反映されます。

入れ子構造はドット区切りの列になる

各行の JSON がオブジェクトの中にオブジェクトを持つような入れ子構造の場合、この変換は `event.user.id` のようにドットでつないだ列名に平坦化します。表形式の XLSX には、もともと入れ子を表す仕組みがないためです。

配列も同様に、要素の位置を示す番号がパスの一部として列名に組み込まれます。

書き出されるのは 1 枚のシートだけ

この変換が作る XLSX は常に 1 枚のシートで、シート名は元のファイル名から作られ、31 文字を超える場合は切り詰められます。書式や列幅の装飾は付かず、値がそのまま並ぶ簡素な表になります。

行によって列がそろっていなくても処理は止まらない

ログのように行ごとに持っているキーが違う NDJSON でも、この変換は特定の行にないキーを空欄として扱い、処理を止めません。表全体では、すべての行に現れたキーの和集合が列として並びます。

1 つでも例外があると列全体が文字列になる

同じ列の中に数値と文字列が混在している場合、この変換器はその列全体を文字列として書き出します。ログの値の型が行によってばらついていると、この現象が起こりやすくなります。

往復させても元の構造には戻らない

いったん XLSX に変換したファイルを再び NDJSON に戻しても、列として平坦化する前の入れ子構造がそのまま復元されるわけではありません。

まとめて変換する場合

複数の NDJSON ファイルを一度に置いても、順番に処理されて ZIP にまとめて返ってきます。行数の多いログファイルほど処理に時間がかかりますが、実際の制約は端末の空きメモリーです。

NDJSON を XLSX に変換する手順

  1. お手元の NDJSON ファイル をこのページに落とすか、押してファイルを選んでください。
  2. 変換先に XLSX を選びます。変換はブラウザーの中で行われ、ファイルはアップロードされません。
  3. できあがった XLSX ファイル をダウンロードします。

NDJSON と XLSX——何が変わるか

NDJSONとXLSXの比較
NDJSONXLSX
正式名称Newline-Delimited JSONExcel ブック
拡張子.ndjson, .jsonl.xlsx
メディアタイプapplication/x-ndjsonapplication/vnd.openxmlformats-officedocument.spreadsheetml.sheet
最初の公開20132007
発行元Microsoft
仕様ECMA-376
ライセンスオープン標準オープン標準
現在の位置づけ現行現行
ブラウザで開けるか対応なし対応なし
代わりに検討される形式JSON, CSVCSV, ODS, Parquet

結果を開く

開くプログラムが重なりません。NDJSON はjqとpandasで、XLSX はMicrosoft Excel、LibreOffice Calc、Google Sheetsで開きます。結果を渡す相手には後者のどれかが要ります。

どちらの形式が何のためのものか

2 つは狙っている用途が違います。NDJSON はプログラム間のデータ受け渡しとストリーミング、XLSX は編集です。ここは考える価値があります。一方が存在する理由が、そのままもう一方が使いにくい理由になっていることが多いからです。

XLSX は Microsoft の形式で、2007 年から使われています。規定は ECMA-376 です。Microsoft Excel、LibreOffice Calc、Google Sheetsがこの形式を読めます。

NDJSON から XLSX:よくある質問

NDJSON ファイル はどこかにアップロードされますか。

いいえ。この変換は完全にブラウザーの中で行われるので、ファイルが端末から出ることはありません。ご自分で確かめられます。開発者ツールのネットワークタブを開いて、何か変換してみてください。ページそのものと、このサービスの費用をまかなっている分析・広告のリクエストは見えますが、あなたのファイルを運んでいるリクエストはひとつもありません。

NDJSON から XLSX への変換は無料ですか。

はい。アカウントも透かしもなく、消費される 1 日の割り当てもありません。お使いの機械の上で動くので、何度でも戻ってきていただけます。ブラウザーが扱えるのは 100 MB までのファイルで、一度に 100 本です。

NDJSON を XLSX に変換すると品質は落ちますか。

NDJSON と XLSX は、内容の表し方が根本から違います。ですからこの変換は複製ではなく再構築です。誠実ではありますが、1 バイトも同じというわけではありません。 入れ子のオブジェクトは平らにされて列になります。深く入れ子になったデータは形を失います。

できあがった XLSX ファイル を開くのに、何かインストールが必要ですか。

変換には要りません。すでに開いているブラウザーの中で行われます。そのあと結果を開くには、お使いの端末がふだん Excel Workbook を表示するのに使っているソフトが必要です。

これらのフォーマットについて