J'ai un fichier .csv sur mon lecteur F: sous Windows 7 64 bits que j'aimerais lire dans les pandas et manipuler.
Aucun des exemples que je vois ne lit rien d'autre qu'un simple nom de fichier (par exemple, "foo.csv").
Lorsque j'essaie, je reçois des messages d'erreur qui ne clarifient pas le problème:
import pandas as pd
trainFile = "F:/Projects/Python/coursera/intro-to-data-science/kaggle/data/train.csv"
trainData = pd.read_csv(trainFile)
Le message d'erreur dit:
IOError: Initializing from file failed
Il me manque quelque chose de simple ici. Quelqu'un peut-il le voir?
Mettre à jour:
J'ai eu plus d'informations comme ceci:
import csv
if __== '__main__':
trainPath = 'F:/Projects/Python/coursera/intro-to-data-science/kaggle/data/train.csv'
trainData = []
with open(trainPath, 'r') as trainCsv:
trainReader = csv.reader(trainCsv, delimiter=',', quotechar='"')
for row in trainReader:
trainData.append(row)
print trainData
J'ai une erreur de permission en lecture. Lorsque j'ai vérifié les propriétés du fichier, j'ai constaté qu'il était en lecture seule. J'ai pu lire 892 lignes après l'avoir décochée.
Maintenant, les pandas fonctionnent aussi. Pas besoin de déplacer le fichier ou de modifier le chemin. Merci d'avoir regardé.
Je ne peux pas promettre que cela fonctionnera, mais ça vaut le coup:
import pandas as pd
import os
trainFile = "F:/Projects/Python/coursera/intro-to-data-science/kaggle/data/train.csv"
pwd = os.getcwd()
os.chdir(os.path.dirname(trainFile))
trainData = pd.read_csv(os.path.basename(trainFile))
os.chdir(pwd)
J'ai également eu le même problème et je l'ai résolu.
Vérifiez votre chemin pour le fichier correctement
J'ai d'abord eu le chemin comme
dfTrain = pd.read_csv("D:\\Kaggle\\labeledTrainData.tsv",header=0,delimiter="\t",quoting=3)
Cela a renvoyé une erreur car le chemin était incorrect. Ensuite, j'ai modifié le chemin comme ci-dessous. Cela fonctionne correctement.
dfTrain = dfTrain = pd.read_csv("D:\\Kaggle\\labeledTrainData.tsv\\labeledTrainData.tsv",header=0,delimiter="\t",quoting=3)
C’est parce que mon chemin précédent n’était pas correct.
Si vous êtes sûr que le chemin est correct, assurez-vous qu'aucun fichier n'a ouvert le fichier. J'ai eu cette erreur une fois, et la fermeture du fichier Excel a fait disparaître l'erreur.
Cela m'arrive assez souvent. Habituellement, j'ouvre le fichier csv dans Excel et l'enregistre en tant que fichier xlsx. Cela fonctionne.
alors au lieu de
df = pd.read_csv(r"...\file.csv")
Utilisation:
df = pd.read_Excel(r"...\file.xlsx")
Une meilleure solution consiste à utiliser des chaînes littérales telles que r'pathname\filename 'plutôt que' pathname\filename '. Voir Analyse lexicale pour plus de détails.