2016-08-31 9 views
0

これを行うためのすっきりした方法はありますか?または、新しい列を作成して、pandas - 列ヘッダーのルックアップテーブルを使用してPanelをDataFrameに変換します。

私はPanelに入れたデータの3次元配列を持っており、2つの軸を使用して2次元ルックアップテーブルに基づいて再構成したいので、ルックアップテーブルから取り出されたラベルを持つDataFrameになります最も近い値を使用します。方法の二重vlookupの種類の一種で。

私が達成しようとしている主なことは、ラベルに基づいて時系列のデータをすばやく見つけることができることです。より良い方法があれば教えてください!

私のデータは、アイテムの軸の緯度と経度の経度を使って、このように表示されます。

data 
Out[920]: 
<class 'pandas.core.panel.Panel'> 
Dimensions: 53 (items) x 29224 (major_axis) x 119 (minor_axis) 
Items axis: 42.0 to 68.0 
Major_axis axis: 2000-01-01 00:00:00 to 2009-12-31 21:00:00 
Minor_axis axis: -28.0 to 31.0 

と私のルックアップテーブル、このようなものです:

label_coords 
Out[921]: 
      lat  lon 
label      
2449 63.250122 -5.250000 
2368 62.750122 -5.750000 
2369 62.750122 -5.250000 
2370 62.750122 -4.750000 

私は途方に暮れて一種のです。昨日、一般的にはPythonにはまったく新しく、実際にはパンダを使い始めました。

事前に感謝します。申し訳ありませんが、これが重複している場合は、同じ種類の質問に関するものは見つかりませんでした。他の誰かが問題

のこのタイプを持っている場合には

はアンディ

答えて

0

は、私は私のラベルは、ラベルようにデータフレームが読み込まれていた座標方法を変更し、ループベースのソリューションを考え出したし、私も投稿することが考え、その後、ピボット機能カラムを使用した:

label_coord = label_coord.pivot('lat','lon','label') 

これはその後、ラベル、値及び緯度/経度が

インデックス/カラムであるデータフレームを生成します

は、このループを使用しました。ここでは、データは次のようなパネルです。

関連する問題