Nos derniers articles

La baseline : L’art de capturer l’essence en quelques mots

Prédire le trafic SEO avec Prophet et Python

Afficher Masquer le sommaire

Découvrez comment prédire le trafic SEO de manière efficace et précise grâce à l’utilisation de Prophet et Python. Dans cet article, nous vous expliquerons comment ces outils peuvent vous aider à optimiser votre stratégie de référencement naturel et à maximiser le retour sur investissement de votre site web. Plongez dans l’univers de la prédiction du trafic SEO pour booster la visibilité en ligne de votre entreprise !

Comprendre l’importance de la prédiction du trafic SEO

Fixer des objectifs et évaluer leur réalisation au fil du temps est essentiel pour déterminer l’efficacité de votre stratégie SEO. Cela implique de faire des prévisions précises, une tâche qui peut sembler complexe. Heureusement, grâce à Python et à la bibliothèque Prophet, il est possible de simplifier ce processus et d’obtenir des prévisions fiables.

Qu’est-ce que Prophet?

Prophet est une procédure de prévision développée par l’équipe de Data Science de Facebook. Disponible en Python et en R, Prophet gère efficacement les valeurs aberrantes et les effets saisonniers pour fournir des prédictions rapides et précises. Cela en fait un outil particulièrement utile pour prévoir le trafic SEO.

Collecter des données avec Google Analytics

Extraire les données depuis un fichier Excel

La méthode la plus simple pour obtenir des données de Google Analytics est d’exporter un fichier Excel. Allez dans la section “Canaux” de la barre latérale, cliquez sur “Organique” et exportez les données en sélectionnant les sessions comme variable d’analyse.

Utiliser l’API de Google Analytics

Pour utiliser l’API de Google Analytics, créez un projet sur la console des développeurs de Google, activez le service de Reporting de Google Analytics et obtenez les identifiants. Authentifiez-vous avant de faire une requête pour obtenir les sessions organiques sur une période spécifique.



from apiclient.discovery import build
from oauth2client.service_account import ServiceAccountCredentials

SCOPES = ['https://www.googleapis.com/auth/analytics.readonly']
KEY_FILE_LOCATION = 'path_to_your_key_file.json'
VIEW_ID = 'your_view_id'

credentials = ServiceAccountCredentials.from_json_keyfile_name(KEY_FILE_LOCATION, SCOPES)
analytics = build('analyticsreporting', 'v4', credentials=credentials)

response = analytics.reports().batchGet(body={
  'reportRequests': [{
  'viewId': VIEW_ID,
  'dateRanges': [{'startDate': '2020-09-01', 'endDate': '2021-01-31'}],
  'metrics': [
    {"expression": "ga:sessions"}
  ], "dimensions": [
    {"name": "ga:date"}
  ],
  "filtersExpression":"ga:channelGrouping=~Organic",
  "includeEmptyRows": "true"
}]}).execute()

list_values = []
for x in response["reports"][0]["data"]["rows"]:
    list_values.append([x["dimensions"][0], x["metrics"][0]["values"][0]])


Adapter les données pour Prophet

Pour utiliser Prophet, il est nécessaire de formater vos données dans un DataFrame avec deux colonnes nommées “ds” (date) et “y” (valeurs).



from pandas import DataFrame

# Si les données proviennent d'un fichier Excel
df["ds"] = pd.to_datetime(df["date_column"])
df["y"] = df["sessions_column"]

# Si les données proviennent de l'API Google Analytics
df_sessions = DataFrame(list_values, columns=['ds', 'y'])
df_sessions['ds'] = pd.to_datetime(df_sessions['ds'])


Entraîner le modèle

Une fois les données formatées correctement, le modèle Prophet peut être entraîné.



import fbprophet
from fbprophet import Prophet

model = Prophet()
model.fit(df_sessions)


Faire des prédictions

Après l’entraînement du modèle, il est temps de faire des prédictions. Créez une liste avec la période de temps souhaitée et ajustez le format datetime.



from pandas import to_datetime, DataFrame

forecast_days = []
for i in range(1, 28):
    date = "2021-02-" + str(i)
    forecast_days.append([date])

forecast_days = DataFrame(forecast_days)
forecast_days.columns = ['ds']
forecast_days['ds'] = to_datetime(forecast_days['ds'])

forecast = model.predict(forecast_days)


Évaluer le modèle

Pour évaluer l’exactitude du modèle, retirez quelques jours de la base de données, faites des prédictions pour ces jours et comparez les valeurs prédites avec les valeurs réelles. Le calcul de l’erreur absolue moyenne (MAE) est une méthode efficace d’évaluation.



from sklearn.metrics import mean_absolute_error
from numpy import array

train = df_sessions.drop(df_sessions.index[-12:])
future = df_sessions.loc[df_sessions['ds'] > train.iloc[-1]['ds']]['ds']

model = Prophet()
model.fit(train)

future = DataFrame(future)
future.columns = ['ds']

forecast = model.predict(future)

y_true = df_sessions['y'][-12:].values
y_pred = forecast['yhat'].values

mae = mean_absolute_error(y_true, y_pred)

import matplotlib.pyplot as plt

plt.plot(array(y_true), label='Actual')
plt.plot(array(y_pred), label='Predicted')
plt.legend()
plt.show()

print('Mean Absolute Error:', mae)


Source: www.oncrawl.com

Catégories Seo

Réagissez à cet article