web-dev-qa-db-fra.com

Analyse des séries chronologiques dans Python - pandas erreur de formatage - modèles de statistiques

J'essaie d'analyser les données des étoiles. J'ai des séries temporelles légères des étoiles et je veux prédire à quelle classe (parmi 4 types différents) elles appartiennent. J'ai des séries temporelles légères de ces étoiles, et je veux analyser ces séries temporelles en faisant une désaisonnalisation, une analyse des fréquences et d'autres études potentiellement pertinentes.

L'objet time_series est un panda DataFrame, comprenant 10 colonnes: time_points_b, light_points_b (le b étant pour le bleu), etc ...

Je veux d'abord étudier la série chronologique de la lumière bleue.

import statsmodels.api as sm;
import pandas as pd
import matplotlib.pyplot as plt
pd.options.display.mpl_style = 'default'
%matplotlib inline

def star_key(slab_id, star_id_b):
    return str(slab_id) + '_' + str(star_id_b)

raw_time_series = pd.read_csv("data/public/train_varlength_features.csv.gz", index_col=0, compression='gzip')
time_series = raw_time_series.applymap(csv_array_to_float)


time_points = np.array(time_series.loc[star_key(patch_id, star_id_b)]['time_points_b'])
light_points = np.array(time_series.loc[star_key(patch_id, star_id_b)]['light_points_b'])
error_points = np.array(time_series.loc[star_key(patch_id, star_id_b)]['error_points_b'])

light_data = pd.DataFrame({'time':time_points[:], 'light':light_points[:]})
residuals = sm.tsa.seasonal_decompose(light_data);

light_plt = residuals.plot()
light_plt.set_size_inches(10, 5)
light_plt.tight_layout()

Ce code me donne une erreur d'attribut lorsque j'applique la méthode season_decompose: AttributeError: l'objet 'Int64Index' n'a pas d'attribut 'inferred_freq'

17
Robin

seasonal_decompose() attend un DateTimeIndex sur votre DataFrame. Voici un exemple:

enter image description here

23
Randy