2016-11-16 12 views
1

こんにちはMorris jsを使用してブートストラップでグラフとテーブルを作成します。pandasデータフレームをブートストラップ用のMorrisデータセットに変換するには

 date   x  y 
0 2016-10-03 156 123 
1 2016-10-04 220 156 
2 2016-10-05 153 152 

が、私はこの形式でこれを取得する必要があります:

私は、次のデータフレームを持って

[ 
{ date: '2016-10-03',x:156, y:123 }, 
{ date: '2016-10-04',x:220, y:156 }, 
{ date: '2016-10-05',x:153, y:152 } 
] 

私はto_jsonをでこれを試してみましたが、これは正しい形式ではありません、それは変換しますisoを選択するときの日付はmsまたはdatetimesになります。

これにはbuildin関数がありますか、またはこの形式を得るためにforループを使ってカスタム関数を書く必要がありますか?

答えて

0

このようなものは、あなたが探している出力を得るはずです。

somelist = [] 
for n,i in df.iterrows(): 
    row = {'date': i.date, 'x': i.x, 'y': i.y} 
    somelist.append(row) 
2

使用to_json

print(df.to_json(orient='records')) 

[{"date":"2016-10-03","x":156,"y":123},{"date":"2016-10-04","x":220,"y":156},{"date":"2016-10-05","x":153,"y":152}] 
+0

これはデ正しい位置にそれを置くのおかげで、しかし、私はまだ日がミリ秒に変換されていることを持っています。これらの日付は、日付としてmysql DATE( 'timestamp')に由来します。 read_sql()を使用します。 date_format = 'iso'を設定すると、「2016-10-03T00:00:00.000Z」のように表示されます。 – user3605780

関連する問題