2017-05-01から1ヶ月間の記事一覧
iPhoneをAndroidの両方を持っていて、ペアリング済のiPhoneが近くにあるとこの現象が起きるっぽい。 iPhoneのBlurtoothをOffにしてから背面ボタンを長押しすると認識してくれた。 注文から一ヶ月待ってようやくAirPods Proを手に入れましたが、最高です。
以下のように書くと、ブラウザが固まる現象が起きた。 ※pugで記述している validation-provider(v-if="!hasPreviousOrder" rules="required" v-slot="{ errors }") input.form-control.mt-2(v-if="!isPasswordVisible", type='password', v-model="order.lev…
EDAやってて欠損率の高いカラムを除去したい場合などに便利。 null_count = dataset.isnull().sum() null_rate = null_count / len(dataset) null_table = pandas.DataFrame({ 'null_couunt': null_count, 'null_rate': null_rate }) null_table.sort_values…
原因はValidation setの中に、正解ラベルの一部が含まれてなかったため。 通常は十分なデータ量があるのでそんなことないと思うが、動作確認のためデータの一部を使って学習している場合に発生しそう。
PyCharmのSSH Interpreterは手元のPCでコードを書いて、実行はリモートのEC2インスタンスなどで実行できる、しかも実行前に自動的にコードをアップロードしてくれる という大変便利な機能だけど、その実行前にコードをアップロードする機能が頻繁に動かなく…
Python3.7の新機能として@dataclassが紹介されているので、3.6だと使えないと思っていた。 qiita.com けど、以下のライブラリをインストールすればPython3.6でも同様の機能が使える。 github.com
Git for Windowsを更新する時のダイアログで次へをポチポチ押していくと、 意図せずautocrlfが変わってしまうことがあるので注意。 ちゃんと文章を読んで設定をする必要がある。 更新の時はautocrlfの設定をするステップいらないと思うんだけど。。 参考: q…
あるフォルダにあるpythonスクリプトを一括でimportする方法。 以下のようにimport_module関数を使うとできる。 for filename in os.listdir(dir_path): module_name: str = filename.replace(".py", "") importlib.import_module(f"module_path.{module_nam…
スクリプトは実行できるけど、PyCharm上で赤いニョロニョロが出るし、補完も効かないという状態。 以下のサイトを参考にsource rootを設定すると直った。 virgo.hatenadiary.jp
これ便利だった。Pythonはクラス名はPascalCase、変数名はsnake_caseにするのでそれぞれ変換したいことがちょくちょくある。 参考: plugins.jetbrains.com
定義してないメソッドを呼んでもエラーにならない MockもSpyもできる など、Mockでやりたいことは概ね出来そうな感じ。これは便利。 参考: note.crohaco.net
\ufeffはBOMで、BOM付きのファイルをBOM無しの前提で読み込んでいるのが原因。 encodingを以下のように指定すると直った。 open('file', mode='r', encoding='utf-8-sig') 参考: stackoverflow.com
Incoming Webhookの設定をするときに、投稿先のチャネルを選ぶ必要があったので、 チャネル固定で個人宛にDMはおくれないのか。。と悩んだが、これはデフォルトの投稿先を設定するだけで "channel": "@user_id" のように投稿先を上書き出来るし個人を指定す…
原因は、javaアプリ実行時のコマンドが長すぎてwindowsの制限(約3万文字)を越えているため。 そんなに長くなる理由はclasspathを依存するjarファイル毎に指定しているため。c:/A.jar;c:/B.jar・・・みたいなのが延々と続く。 これを解決するには、以下を行…
npm installを実行すると、package-locl.jsonが更新されることがある。 そのため、パッケージのバージョンが知らない間に変わっていて画面が崩れるという不具合が起きてしまった。 普段はnpm ciでパッケージをインストールし、パッケージのバージョンアップ…
最近、機械学習モデルの予測結果を説明する手法が話題になっているので いくつか調べてみた。 Azureには予測結果を説明する機能がある。テーブルデータを説明する場合はSHAPを使うのが一般的っぽい。 SHAPの実行結果をどうグラフに表示するかは参考になりそ…
2つのエラーが誤って検出された。 E701 multiple statements on one line (colon) は古いバージョンのpycodestyleに不具合があり、誤って検出されるっぽい。flake8/hackingは内部的にpycodestyleを使っている。 stackoverflow.com 以下を見ると既に修正版が…
3つのタイムアウトは以下。 connectionRequestTimeout コネクションプールからコネクションを取得するまでのTimeout時間 connectTimeout TCPコネクションがestablishedになるまでのTimeout秒数 socketTimeout データを相手に送信してからレスポンスが返って…
15分という数字を設定した覚えがなかったので謎だったけど、Linuxのデフォルト設定だと15分ぐらいでTimeoutになるっぽい。 詳細は以下を見て欲しいが、Exponential Backoffを15回繰り返すと合計926秒になる。Linuxのデフォルト設定では15回リトライするので9…
Redisは以下のルールで有効期限が切れたデータを削除しているらしい。 有効期限が切れたデータにアクセスするリクエストがきたら、そのタイミングで削除する。 10秒おきに20エントリをランダムの調べて、有効期限が切れていたら削除する。有効期限切れの割合…
nvidia-smi -l で定期的にwatchできる。他にも色々オプションがあるけど基本使うのは-lだなぁ。 参考: qiita.com
この現象はGPUが複数ある環境でのみ発生する。 学習が終わるタイミングで処理が止まってしまい、プロセスも終了することなく残る。 原因はtensorflowのバグっぽい。Issueでも似た現象が報告されているが、解決していない。(ちょっと違う現象なので別原因か…
原因はus-east-1リージョンはロケーションの制約がないため。get_bucket_locationはbucketのリージョンを返すと思っていたけど、 以下資料の「ロケーションの制約」を返すっぽい。 AWS サービスエンドポイント - AWS 全般のリファレンス なのでap-northeast-…
まずAWSコンソールからEBSの容量を変更する。手順は以下参照。 dev.classmethod.jp 次に、EC2にsshでログインして以下のコマンドを実行する。 lsblk # パーティション容量の確認 sudo growpart /dev/nvme0n1 1 # パーティションの拡張 lsblk # パーティショ…
原因はimportが循環参照になっていること。 つまりA.pyからB.pyをimportし、逆にB.pyからA.pyもimportしていると発生する。 importをメソッド内にうつし、local importにすると解消する。 ほんとは循環参照をやめた方が良いんだろうな。。 参考: qiita.com
YAMLは可読性が高く、コメントが書けるので設定ファイルなど人が読み書きするしプログラムも読むファイルに向いている JSONはより一般的なので、プログラム間のデータ連携に向いている 参考: stackoverflow.com
普通はwith open(path) as f: ...のように書くと思うけど、以下だとone linerでかける。 from pathlib import Path contents = Path(file_path).read_text() 細かいけどちょっと嬉しい。 参考: stackoverflow.com
tf.gfileは普通のファイルシステムの他にHDFS等に対応しているのがメリット。 ファイルシステムだけしか使わないならメリットはない。 参考: stackoverflow.com
dictに配列をネストさせたオブジェクトをyamlに出力すると以下のようになる。 dictionary: - A - B こうなってほしい。 dictionary: - A - B こうするためには、以下のようにする。 class FixIndentDumper(yaml.Dumper): def increase_indent(self, flow=Fal…
yaml.dump(ordered_dict)を実行するだけだと、Pythonのクラス名も出力されてしまうので以下のようにすると通常のyaml形式で出力される。 def represent_odict(dumper, instance): return dumper.represent_mapping('tag:yaml.org,2002:map', instance.items(…