yskma’s blog

日々の作業の備忘録@株式会社ビズオーシャン

ネストのあるjsonデータをpandasでフラットに扱う

ネストの深いデータ 簡単にデータを取り込んで扱えるpandasだが、下記のようにネストが深いと勝手が悪い。 nested.json { col1:{row1:1,row2:x,row3:{id:1,age:20,data:{a:1,b:2}}}, col2:{row1:2,row2:y,row3:{id:2,age:23,data:{a:3,b:4}}} } そのままとり…

fortigate cliからの管理者追加

fortigate cliからのユーザー追加 現在使用しているUTMのfortigateだが、GUIからだとなぜか管理者追加ができなかったので、CLIから操作する。 参考:Fortinet Docs Library - FortiOS 6.0 CLI Referenceconfig, edit, setと階層構造になっているので、順番に…

gspreadで指定行にまとめて書き込み

googleスプレッドシートにコードからアクセスして指定した行を編集したい。(設定についてはあちこちで説明されているので割愛)今回はgspreadを使ってみる。 Referenceを参考にいろいろためす https://gspread.readthedocs.io/en/latest/ import gspread sc…

bq loadで正規表現が使えないのでxargsでなんとかしてみる

大量にあるcsvファイルから特定の複数ファイルを対象にコマンドライン上からbig queryにインポートしたい。 bq loadと正規表現でどうにかなるかと思ったが、bq loadはワイルドカードしか使えなかった。正規表現を含めるとエラーになる。 下記ならOK。 bq --l…

jedi-vimの補完がpandasだと遅い問題

プラグイン管理にdein.vimを利用してjedi-vimを入れて使っているのだが、pandasの自動補完が遅くて辛かったので設定を変更。 import pandas as pd pd.上記のようにピリオドを入力したときに自動で補完が働くのだが、候補が出てくるのが妙に遅く、ピリオドを…

pandasでの正規表現の否定

pandasを利用中、下図のようなデータに対してid列の文字列が混ざっている行だけを削除したい場面があった。 id color 1 red 2 orange 3test blue 4 yellow 3行目のidにtestの文字が混ざってしまっている。 contains()で正規表現の否定の記述 これをcontains(…