2017-12-10 14 views
-2

私はガイダンスが必要です。パンダのデータフレームをフィルタリング、平均化、削除する

次の問題に使用できるライブラリを教えてください。私はPythonでかなり新しいです。私はいくつかの株式取引データに関するいくつかの統計をしようとしています。私は文字通りどこから始めるべきかわからないので、サンプルコードを投稿しなかったことをお詫びします。

これらの断片に分割されており、合計3回の取引であり、目標は、さらなる分析のために3つの全体の別々の取引にそれらを組み合わせることである。

私が持っているデータは次のとおりです。

余分な日付はすべて同じであるため削除する必要があります。時間は平均化され、余分な記号は削除する必要があります。価格は平均化し、数量を追加する必要があります。ルートとBrokerが

B =買い、S =売る重要ではありません、SS =空売り

  Date  Time Symb Side Price Qty Route Broker 
0 2017-12-05 12:26:13 VRX B 2.2000 1000 PDQM  NaN  
1 2017-12-05 12:00:21 VRX SS 2.1700 200 EDGE  NaN  
2 2017-12-05 12:00:21 VRX SS 2.1700 100 EDGE  NaN 
3 2017-12-05 12:00:21 VRX SS 2.1700 500 EDGE  NaN  
4 2017-12-05 12:00:21 VRX SS 2.1700 200 EDGE  NaN 
5 2017-12-05 11:53:14 FRK S 2.4000 1000 EDGE  NaN  
6 2017-12-05 11:52:41 FRK B 2.4200 300 PDQM  NaN  
7 2017-12-05 11:52:41 FRK B 2.4200 700 PDQM  NaN  
8 2017-12-05 11:51:53 CUR B 2.3200 1000 PDQM  NaN  
9 2017-12-05 11:50:36 CUR SS 2.1900 710 EDGE  NaN  
10 2017-12-05 11:50:32 CUR SS 2.1900 290 SMAT  NaN 

最終的な結果は次のようになります。

合計3回の取引では、各取引など6行を買いと売り、またはショートセールと買いの2つの側面で構成されています。下部の最古の取引からトップ

  Date  Time Symb Side Price Qty 
0 2017-12-05 12:26:13 VRX B 2.2000 1000 
1 2017-12-05 12:00:21 VRX SS 2.1700 1000 
2 2017-12-05 11:53:14 FRK S 2.4000 1000 
3 2017-12-05 11:52:41 FRK B 2.4200 1000 
4 2017-12-05 11:51:53 CUR B 2.3200 1000 
5 2017-12-05 11:50:34 CUR SS 2.1900 1000 
+0

http://pandas.pydata.org/pandas-docs/stable/内のより新しいものに、データが後方で、注意してください – wwii

答えて

1
aggs = {"Price":"mean", "Qty":"sum","Time":"min"} 

df = df.groupby(["Date","Symb", "Side"])[["Price","Qty","Time"]].agg(aggs) 
df = df.reset_index() 
関連する問題