CSV 小技のメモ

仕事柄、データをCSV形式で眺めることが多いのだが、その際に使用する小技をまとめてみた。(といっても大したものではないが)

LibreOffice Calcが対象だが、Microsoft Excelに応用できるものもあると思われる。

  • フィルターを適用する
  • 行を固定する
  • 列を固定する
  • カラムから重複データを除いて一意のデータのみを抽出する
  • データをソートする
  • カラムの幅を変更する
  • 行を色分けしてデータを分析する
  • フィルターを適用する

    適当なセルを選択して、Data -> AutoFilter

    これでフィルターが適用される。

    フィルターを解除したい場合は、フィルターが適用されているカラムのドロップダウンよりClear Filterを選択。

    複数のカラムのフィルターを一括で解除したい場合は、Data -> More Filters -> Reset Filter

    行を固定する

    CSVデータは大抵の場合、1行目はヘッダーとなっている。データが大量にある場合、縦スクロールしていくうちにヘッダーが見えなくなり、「これ何の値だっけ?」となって1行目まで戻ってヘッダーを確認する。。。なんていう手間をかけたくないので、自分は必ずヘッダーの行を固定するようにしている。

    一番左隅にあるヘッダーの真下のセルを選択して、View -> Freeze Rows and Columns でヘッダーを固定できる。

    列を固定する

    自分が分析するCSVは一番左の列がタイムスタンプになっていることが多い。データを横スクロールしつつもタイムスタンプは常に把握したいので、自分は必ず一番左の列を固定する。

    セルを選択し、View -> Freeze Cells -> Freeze First Columnで列を固定できる。

    サンプルデータより、source IPカラムまでを固定したいとする。この場合、ひとつ隣のdestination IPカラムの一つ目のセルを選択して、View -> Freeze Rows and Columns

    source IPカラムまでが固定された。

    カラムから重複データを除いて一意のデータのみを抽出する

    対象のカラムを選択し、Ctrl+Shift+↓でデータを選択。

    Data -> More Filters -> Standard FilterよりStandard Filterウィンドウが立ち上がる。

    ウィンドウ下部のOptionsをクリック。

    ValueフィールドよりNot Emptyを選択。

    Copy results to: とNo duplicationsにチェックを入れる。

    Shrinkアイコンをクリック。

    データのコピー先のセルを選択。別シートのセルも選択可能。

    セルを選択したら、Expandアイコンをクリック。

    OKボタンをクリック。

    重複分を除いたデータがコピーされた。

    データをソートする

    対象のカラムのドロップダウンより、Sort Ascending (昇順)もしくは Sort Descending (降順)を選択。

    以下はタイムスタンプを降順にソートしたもの。

    カラムの幅を変更する

    カラムの幅を変更したい場合は、カラムの境界部分をドラッグすれば良い。

    しかし、以下の例のようにセルの中に大量のデータが含まれていた場合、その境界部分を見つけられないことがある。

    このような場合は、幅を変更したいカラムを列ごと選択し、右クリック -> Column Width

    ウィンドウより、任意の値を入力する。以下の例では幅を22.83から11.83に変更している。

    OKボタンをクリックして、幅が変更された。

    行を色分けしてデータを分析する

    自分はCSV形式のログを解析する際、気になったログには色をつけるようにしている。色分けの基準は以下の通り。

    • 赤:要注意
    • 黄:何か怪しい
    • 緑:正常・良性

    以下はサンプルデータを色分けしたもの。

    ぱっと見で、どのログが怪しいかが判別できる。もちろん色ごとにフィルターすることも可能。

    カラムのドロップダウンよりFilter by Colorでフィルターしたい色を選択。

    ただし、この方法だと一つの色しかフィルターできない。

    複数の色をフィルターしたい場合は、Data -> More Filters -> Standard FilterよりStandard Filterウィンドウから、ConditionフィールドよりBackground colorを選択し、Valueフィールドより色その1を選択。
    続いてOperatorフィールドよりORを選択。ConditionフィールドよりBackground colorを選択し、Valueフィールドより色その2を選択。

    OKボタンをクリックすると、フィルターが適用される。

    Leave a Reply

    Your email address will not be published. Required fields are marked *


    The reCAPTCHA verification period has expired. Please reload the page.