Take Your Time

仕事や研究、コンピューターとの付き合い方

python

行政区域データをbigqueryに入れる

分析のために行政区域データと緯度経度があるcsvファイルを空間結合したかった。 頼みのQGISはローカルだとおそすぎて無理。 こうなると空間データ対応のbigquery一択になる。 geojson対応だということでそのまま突っ込んでみるが、フォーマットエラー。 中…

GPUインスタンスの環境構築

AMI Ubuntu18.04 LT Deep Learning 用(元からnvidia driverが入っている) EC2 G4インスタンス 困ったこと インスタンス起動時はnvidia-smiするとしっかりドライバーが表示されるのだが、一旦停止して再起動するとドライバーが見つからなくなってしまう。 …

クラウドでjupyterを触る時のTips

前提 AWS EC2 (ubuntu) Python3.6.3 バックグラウンドで動かす ssh接続が結構切れるので基本バックグラウンドで動かすべし nohup jupyter notebook > /dev/null 2>&1 & Elastic IPにすべし EC2はデフォルトだとインスタンスを停止するたびにIPが変わる。いち…

pandas join merge concatではまったこと

pandasは便利だが、結合あたりが非常にわかりにくい。 いい感じにやっておいてほしいところが全然やってくれない。 concat: indexがビシッと揃ってる場合はこれで大丈夫。 join これが使いづらい。sqlの雰囲気でやるとハマる。近づかないほうがいいかもしれ…

UnicodeEncodeError

pandasのto_csvでencoding = 'SJIS'にするとよくなる。 エンコーディングできない文字を教えてくれるので、print('\uff5e')とかで何がエンコーディングできていないのか確認してリプレースしてやる。

jupyter (Python)で作業するときによくつかうコマンドなど

マジックコマンド編 ! シェルが使える !pip install hogehoge !ls !pwd など。 time %%time doSomeCalculation() 時間を計測する。 notify セルの計算が終わったらポップアップで知らせる %%notify doSomeCalculation() ライブラリ編 tqdm loopの進行状況を…

ビッグデータを分析するときのティップス

データが大きいということは様々なリスクがあるということ。基本はしっかりアセスメントを行ってから分析を実行すべきということ。 まずは、メモリ管理。せっかく計算ができてもメモリエラーで止まってしまっては意味がない。一気に計算させて大丈夫なのか、…

dict型を一部分だけ見る方法

#dat: dict partial_dat = dict(list(dat.items())[0:100])

GCPにJulia環境を構築する

環境 Google Cloud Platform (GCP) Compute Engine vCPUx4 15G Ubuntu 14.04.5 LTS (GNU/Linux 4.4.0-103-generic x86_64) (16.04でもできる) 手順 anaconda install wget https://repo.continuum.io/archive/Anaconda3-5.0.1-Linux-x86_64.sh bash Anaconda…

イテレーション、forloop、時間の扱い

概要 Pythonでイテレーションしてみた。クソむずかった。 やりたかったこと ある特定の日付からの秒数が入ったカラムを実際の日時時刻にしたい。 手順 まず、起点となる日時をstart_pointにdatetime型で入れる。この場合、2017年8月26日0時0分0秒。 次にデー…

国土数値情報 福祉施設データのxmlをcsv化する

久々に長いコードを書いたので。 概要 国土地理院の国土数値情報は豊富な位置情報があって楽しい。しかし、GISとか詳しくないと超使いづらいのでcsvファイルにしてしまいたい。 試行錯誤したが、名前空間とかめんどくさいのでエンジニアリング力低めの人間に…

jupyter notebook on windows10

戯れにwin10環境にjuoyter環境を構築してみた。 powershell でwindowsのパッケージマネジメントツールchocolateyをインストール。 Set-ExecutionPolicy AllSigned Set-ExecutionPolicy Bypass -Scope Process -Force; iex ((New-Object System.Net.WebClient…

はい。ここまで手を広げてみました。MATLABライクなフリーソフトspyderを組み込んだパッケージIndex of /をインストールしてみた。フリーソフトらしくググりながらひとつひとつ覚えていく感じがRに似ててまあしんどい。だが、帰国後GAUSSやMATLAB環境がある…