Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article?

普段、仕事で入れ子になっているデータを扱う必要のある時がぼちぼちあります(特に、スキーマレスのMongoDBのログであったりなどなど)。 BigQueryなどに入れてしまえば、WITHINなどを使ったクエリでいい感じに行列の形に変えてくれたりして簡単ではありますが、そうではない場合はPandasで大規模なデータを扱う際には結構苦労することがあります。 その辺りいい感じにやってくれるライブラリでも書くか・・と思ったところ、調べていたらPandasにjson_normalizeというAPIがあるようです。使ったことがなかったので、色々動かしつつ調べてみます。 早速動かしてみる。 まずはimport。 log_data_list = [{ 'id': 1, 'name': 'john', 'equipment_status': [{ 'equipment_id': 1, 'attack': 10
import pandas as pd df = pd.DataFrame([['a0', 'b0', 'c0'], ['a1', 'b1', 'c1']], index = ['taro', 'jiro'], columns = ['sono1', 'sono2', 'sono3']) print (df.to_json(orient = 'split')) print (df.to_json(orient = 'records')) print (df.to_json(orient = 'index')) print (df.to_json(orient = 'columns')) print (df.to_json(orient = 'values')) {"columns":["sono1","sono2","sono3"],"index":["taro","jiro"],"dat
はじめに 二度目の投稿になります。 今回は東大出版会の「基礎統計学Ⅰ 統計学入門」の第9章「標本分布」にある練習問題9.7をpythonで実装することを目指します。 今回の問題文は以下の通り。 1988年の統計によれば、同年における10万人当たりの交通事故死亡者数、交通事故死傷者数は、次の通りであった。 各都道府県において、人口10万人の都市を考えるとき、 i)1年間の交通事故死亡者数が10人未満である確率を求めよ。 ii)1日の交通事故死傷者数が5人未満である確率を求めよ。 開発環境 python3 Jupyter Notebook 基本事項の確認 ポアソン分布 非常に起こる確率が低い(たとえば、今回のような交通事故)場合、二項分布からnp→λとしてポアソン分布を考えることができます。 定義式及びグラフは以下のようになります。 $y=\frac{\mathrm{e}^{-\lambda}
はじめに Pythonをそこそこ使えるようになりたい ただただ勉強するのも面白くないので、課題探し ちょうどその頃に近隣(京阪電車)のダイヤ改正 駅.Lockyの時刻表が古くなり、手作業で時刻表データ作成 時刻表サイト ⇒ Pythonアプリ ⇒ 時刻表データ が出来たら一石二鳥! 調べてみた 駅.Lockyの時刻表データは、NextTrain形式の時刻表記述フォーマット えきから時刻表→NextTrainデータ(tbl形式)変換サイトでTBLファイルを作ってみた ファイルがどういうものか理解できた(ファイル名の形式等も) A:中之島行 B:淀屋橋行 a:区間急行() b:準急() c:急行() d:特急() e:ライナー f:通勤準急() g:通勤快急() h:快速急行() i:快速特急()洛楽 [MON][TUE][WED][THU][FRI] 京橋駅 京阪京阪本線 淀屋橋方面(下り)
日本株システムトレードプラットフォーム QuantX でn日足(終値)を扱うアルゴリズムを実装する 背景 Python による日本株システムトレードプラットフォームである QuantX ではデフォルトでアルゴリズムの実装をする際に、1日足の株価しか取得することができません なので、n日分の株価を扱えるようにしてみようと思い、実装してみました 実装したアルゴリズム https://factory.quantx.io/developer/bb3c6f7b6b7342d5b0c907dc90e2a762 にて公開 下記がその内容のプログラムとなります。 ちなみに、BETWEEN_DAY の値を n にすることで n日足の終値を取得することができます。 ボリンジャーバンドの上端、下端を跨いだときに売買をするアルゴリズムです。 株価が下がりすぎた時を検出した場合は買い、逆の場合は売り、というのを行っ
前回の反省 Kernelを眺めていると すばらしいまとめがありました。 https://www.kaggle.com/pliptor/how-am-i-doing-with-my-score によると僕が前回までに出した0.75598 というスコアは 全員死亡としてsubmit:0.62679 Sex, Embark, Pclass だけ考慮したら:0.76555 というわけで、僕のスコアは余計な処理をした割には凡人スコアでした。 Embark を使わなかったけど・・・ だいたい0.8が専門家との分かれ目という感じです。(0.8から何が書いてあるのかわからない) 前回断念した、名前の関連性(ファミリーか、親子か?)みたいなこともやってる方がいて、いい結果が出たそうです。 というわけで、 みんなのいいところをパクろう! Kernelでたくさんのいいね!をもらっている以下のkernelを写経し
Titanic: Machine Learning from Disaster タイタニック号の乗客名簿的なものから、生存者のデータを分析するチュートリアル的なやつです。 https://www.kaggle.com/c/titanic データ初見でやりながら記事を書いてるので、支離滅裂です。 素敵な解説 自分の好みに合わせて、つまみ食いします。 https://qiita.com/suzumi/items/8ce18bc90c942663d1e6 https://www.codexa.net/kaggle-titanic-beginner/ https://qiita.com/k2me14/items/ab9d71960d2b9d422c16 https://www.codexa.net/kaggle-titanic-beginner/ 道具 Python 3 Jupyter noteb
LTSVは主にログファイルの形式として最近好まれているテキストフォーマットです。 http://ltsv.org/ 一行一レコード、各セルをタブで区切っているところはTSVと同じなのですが、ヘッダ行に列タイトルを付ける代わりに各セルに直接ラベルをつけた形になっています。 host:example.com url:/api/users status:200 time:2018-01-01T00:00:00+09:00 host:example.com url:/api/users status:200 time:2018-01-01T00:00:01+09:00 このような見た目。 人の目にも読みやすく機械的にもパースしやすいのが利点です。 パースしやすさのためにあえて仕様にエスケープを含めていないほど。 さてこのLTSV形式、pandasに読み込み用メソッドが用意されていません。 pand
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く