J'ai une feuille de calcul comme celle-ci:
Locality 2005 2006 2007 2008 2009
ABBOTSFORD 427000 448000 602500 600000 638500
ABERFELDIE 534000 600000 735000 710000 775000
AIREYS INLET459000 440000 430000 517500 512500
Je ne veux pas permuter manuellement la colonne avec la ligne. Serait-il possible d'utiliser des pandas lisant des données dans une liste comme ceci:
data['ABBOTSFORD']=[427000,448000,602500,600000,638500]
data['ABERFELDIE']=[534000,600000,735000,710000,775000]
data['AIREYS INLET']=[459000,440000,430000,517500,512500]
Réponses:
Oui, avec set_index vous pouvez créer
Locality
votre index de ligne.Si
inplace=True
n'est pas fourni,set_index
renvoie le dataframe modifié en conséquence.Exemple:
la source
Vous pouvez modifier l'index comme expliqué déjà en utilisant
set_index
. Vous n'avez pas besoin d'échanger manuellement des lignes avec des colonnes, il existe unedata.T
méthode transpose ( ) dans pandas qui le fait pour vous:vous pouvez ensuite récupérer les valeurs de la colonne dataframe et les transformer en liste:
la source
Vous pouvez définir l'index de la colonne à l'aide du paramètre index_col disponible lors de la lecture à partir d'une feuille de calcul dans Pandas.
Voici ma solution:
Tout d'abord, importez les pandas en tant que pd:
import pandas as pd
Lisez le nom de fichier en utilisant pd.read_excel () (si vous avez vos données dans une feuille de calcul) et définissez l'index sur 'Locality' en spécifiant le paramètre index_col.
df = pd.read_excel('testexcel.xlsx', index_col=0)
À ce stade, si vous obtenez une erreur «aucun module nommé xlrd», installez-le en utilisant
pip install xlrd
.Pour une inspection visuelle, lisez la trame de données à l'aide de
df.head()
laquelle imprimera la sortie suivanteVous pouvez maintenant récupérer les valeurs des colonnes souhaitées du dataframe et l'imprimer
la source