私はfindatapyを使用してDukasCopyからFXレートを取得しています。パッケージは素晴らしいです。これは私が使用しているスクリプトです:私は時間ごとに周波数を持っている点が唯一興味パンダで特定の頻度にDatetimeIndexベクトル
from findatapy.market import Market, MarketDataRequest, MarketDataGenerator
market = Market(market_data_generator=MarketDataGenerator())
md_request = MarketDataRequest(start_date='01 Feb 2017', finish_date='03 Feb 2017', category='fx', fields=['bid', 'ask'], freq='tick', data_source='dukascopy', tickers=['EURUSD'])
df = market.fetch_market(md_request)
print(df)
print(len(df))
print(df.index)
print(len(df.index))
(00:00:00 1時00分00秒、2時00分00秒というように)。これは、フィルタリング後、1日に24ポイントしか取得できないことを意味します。
今、結果として得られるのはこれです。
DF:
df.index:私が今したいのですが、私はそれに、にある方法について完全に無知だ何
時間ごとの頻度を使用してインデックスをフィルタリングし、対応するポイントを選択します。
私はすべきことは、希望のインデックスを持ったパンダを使ってアレイを作成し、それを使ってメインアレイをスライスすることですが、どうしたらいいですか? pandas.date_rangeでこの「望ましい」配列を作成できますか?あるいはこれを行うもっと簡単な方法がありますか?
お時間をいただきありがとうございます。あなただけのpd.TimeGrouper
オブジェクトを使用して、各時間のグループのために、このような何か最初の行を抽出することができます
を、これは私が探していた結果でした。私はインデックスベクトル(これは私の 'Date'ベクトル)を分割したいと思っていますが、もっと簡単に思えるので、私はその方法を見つけるつもりです。どうもありがとう! –
分割方法を説明できますか?私はその点ではっきりしていない。 –
@cᴏʟᴅs '' df.index 'の結果のみが表示された場合は、曜日+空白スペース+時間が表示されます。私はそれを別々に「日」と「時間」に分割したいと思います。 –