2017-01-18 7 views
0

Ziel Ich habe zwei Zeitreihen Datenrahmen, df_template und this_df. Beide haben unterschiedliche Abtastraten. Ich möchte this_df zu df_template interpolieren resample.Resampling und Interpolation Zeitreihe in Pandas 0.14.1

Problem: ich folgendes code haben, die in Pandas 0,19 arbeitet aber in Pandas 0.14.1 funktioniert nicht. Wie bekomme ich es zur Arbeit?

df_template = pd.DataFrame() 
this_df = pd.DataFrame() 

t1 = np.arange(1484664735415, 1484664735710, 30) 
t2 = np.arange(1484664735400, 1484664735700, 100) 

df_template['Time'] = t1 
this_df['Time'] = t2 

this_df['S2'] = random.sample(xrange(50), this_df.shape[0]) 

this_df.set_index('Time', inplace=True) 
this_idx = this_df.index.union(df_template.Time) 
df_new = this_df.reindex(this_idx).interpolate('index').reindex(df_template.Time) 
df_new.reset_index(inplace=True) 

Der Fehler tritt in this_df.index.union() auf.

AttributeError: 'Series' object has no attribute 'is_monotonic'

Ich denke, es in Pandas 0.14.1 keine solche Funktion ist. Also, wie kann ich das Endergebnis bekommen wie:

  Time  S2 
0 1484664735415 22.25 
1 1484664735445 26.75 
2 1484664735475 31.25 
3 1484664735505 33.95 
4 1484664735535 27.65 
5 1484664735565 21.35 
6 1484664735595 15.05 
7 1484664735625 14.00 
8 1484664735655 14.00 
9 1484664735685 14.00 

Irgendwelche Ideen für diese 0.14.1 in Pandas zu arbeiten?

Antwort

0

Outer-Join verwendet macht es

arbeiten
this_idx = pd.concat([df_template, this_df], axis = 1, join = 'outer').index 
df_new = this_df.reindex(this_idx).interpolate('index').reindex(df_template.index) 
Verwandte Themen