Chargement de données

import pandas as pd

# Lire un fichier CSV
df = pd.read_csv(csv_file_path, sep=',')

Manipulation de colonnes

# Retirer une colonne
df_sans_colonne2 = df.drop(columns='colonne2')

# Retirer plusieurs colonnes
df_sans_colonnes23 = df.drop(columns=['colonne2', 'colonne3'])

# Ajouter une colonne
df['Date'] = today

# Renommer une colonne
df_renomme = df.rename(columns={'ancien_nom': 'nouveau_nom'})

# Ajouter une colonne calculée
df['containsCategory'] = df['decodedURL'].apply(contains_category_in_url)

Manipulation de lignes

# Retirer les lignes dont un champ vaut NA
df_cleaned = df.dropna(subset=['pageValue'])

# Filtrer les données
urls_data = urls_data[urls_data['name'] != 'Notice PDF']

Types et informations des données

# Récupérer le type des colonnes
types_colonnes = df_cleaned.dtypes
print(types_colonnes)

Jointures de DataFrames

# Jointure externe (outer join)
merged_data = pd.merge(urls_data, data_selected, on='url', how='outer')

# Jointure gauche (left join)
merged_data = pd.merge(urls_data, data_selected, on='url', how='left')

# Jointure droite (right join)
merged_data = pd.merge(urls_data, data_selected, on='url', how='right')


#Jointure quand le nom de la clé de jointure diffère dans les 2 dataframes
merged_data = pd.merge(terms, temp, left_on='term', right_on="keyword", how='inner')

Transformation de données

# Transformer une liste en DataFrame
existing_articles = pd.DataFrame(existing_articles, columns=['domain','keyword','datePublication',"url","type","champ2"])

# Ajouter une colonne avec une fonction appliquée
df['panierCount'] = df['fileName'].apply(lambda filename: count_panier(filename, directory_path))

Manipulation de dictionnaires

# Récupérer toutes les valeurs d'un dictionnaire
temp = data.values()

# Retirer un champ d'un dictionnaire
df_cleaned.pop('ips', None)

# Transformer un dictionnaire en DataFrame
df_cleaned = pd.DataFrame(df_cleaned, index=[0])

Informations supplémentaires et fonctions utiles

# Afficher les 5 premières lignes du DataFrame
print(df.head())

# Obtenir des informations générales sur le DataFrame
print(df.info())

# Résumé statistique des données
print(df.describe())

#Parcourir le dataframe

for index, row in all_data.iterrows():

    site = row[‘site’].strip()

Exemple complet d’utilisation

import pandas as pd
from datetime import datetime

# Lire un fichier CSV
csv_file_path = 'path/to/your/csvfile.csv'
df = pd.read_csv(csv_file_path, sep=',')

# Retirer des colonnes
df = df.drop(columns=['colonne2', 'colonne3'])

# Ajouter une colonne avec la date d'aujourd'hui
today = datetime.today().strftime('%Y-%m-%d')
df['Date'] = today

# Retirer les lignes où 'pageValue' est NA
df_cleaned = df.dropna(subset=['pageValue'])

# Renommer une colonne
df_renomme = df_cleaned.rename(columns={'ancien_nom': 'nouveau_nom'})

# Ajouter une colonne calculée
df_renomme['containsCategory'] = df_renomme['decodedURL'].apply(contains_category_in_url)

# Filtrer les données
urls_data = df_renomme[df_renomme['name'] != 'Notice PDF']

# Jointure externe
data_selected = pd.read_csv('path/to/another/csvfile.csv')
merged_data = pd.merge(urls_data, data_selected, on='url', how='outer')

# Transformation de liste en DataFrame
existing_articles = [{'domain': 'example.com', 'keyword': 'example', 'datePublication': '2021-01-01', 'url': 'http://example.com', 'type': 'article', 'champ2': 'valeur'}]
df_existing_articles = pd.DataFrame(existing_articles)

# Ajouter une colonne avec une fonction personnalisée
directory_path = '/path/to/directory'
df_existing_articles['panierCount'] = df_existing_articles['fileName'].apply(lambda filename: count_panier(filename, directory_path))

# Afficher les 5 premières lignes du DataFrame
print(df_existing_articles.head())

Catégories : Python SEO

0 commentaire

Laisser un commentaire

Emplacement de l’avatar

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *