2017-01-12 11 views
1

Q1:毎日周波数を持つ行の膨大な数(データ列)でパンダ日時日間の周波数

enter image description here

: 私は、次のパンダのデータフレームを持っています。 私は週単位でデータフレームを変換したいと思います。つまり、頻度は日記ではなく週単位です。これと一緒にまた、お金と労働者は "週の合計"です。

Q2: 週の開始日(日付)を定義することはできますか?

答えて

2

まず、「日付」列がdatetime型であることを確認します。我々はresample我々はリサンプリングれる時間単位を表す文字列を渡すことができる場合

tidx = pd.date_range('2012-01-01', periods=1000) 
df = pd.DataFrame(dict(
     Money=np.random.rand(len(tidx)) * 1000, 
     Workers=np.random.randint(1, 11, len(tidx)), 
     Date=tidx 
    )) 


この例を考えます。週にWを使用している場合は、W-MonからW-Sunまで実際に渡すことができます。ですから、日土曜日だった

date=pd.to_datetime('2012-03-31') 

を持っている場合、我々は

'W-{:%a}'.format(date) 

'W-Sat' 

正しいリサンプル単位の文字列を生成することができますその後、我々はそれ

df.resample('W-{:%a}'.format(date), on='Date').sum().reset_index() 

enter image description here

でリサンプリングすることができます

簡単な答えはそれなしでresampleです別の出発点。

df.resample('W', on='Date').sum().reset_index() 

enter image description here

関連する問題