Je l'utilise pour créer un fichier de données géant à partir de nombreux fichiers dans un répertoire: Les fichiers de ce chemin ont des noms comme p> aaa code> ou bbb code> à côté de toutes les lignes importées à partir de ce fichier, comme ceci: < / p>
3 Réponses :
Vous pouvez vérifier avec clés code> + réinitialiser_index code>
Cela ne fonctionnera pas car chaque nom de fichier a tout le chemin inclus dans celui-ci
@aws_apprentice Vérifiez la mise à jour, je emprunte votre pureWindowsPath code>
@Liquidité Vérifiez la mise à jour, cela devrait légèrement plus rapide que la boucle
Je change généralement le répertoire de travail actuel au chemin: Vous pouvez attribuer afin que votre code ressemblait à: p> si vous ne voulez pas Modifiez le répertoire de travail actuel, puis vous pouvez utiliser col3 code> pour être la partie du nom de fichier que vous souhaitez en utilisant Attribuer code>. p> os.path.basename (chemin) code> pour obtenir les noms de fichiers sur le chemin. Donc, votre code ressemblerait à: p>
Utilisation f.split ('.') Code> tronque le fichier, mais inclut le chemin d'accès avant, la colonne est donc c: \\ users \\ me \\ data \\ aaa code > au lieu de AAA code>.
Oh je vois. J'utilise habituellement os.chdir (chemin) code> pour modifier le répertoire de travail actuel sur le chemin. Je vais mettre à jour ma réponse un peu.
C'est une façon de le faire:
(pd.read_csv(f, sep='\t').assign(col3=PureWindowsPath(f).name.split('.')[0]) for f in all_files)
Quelle est la règle de savoir si [code> aaa code> ou
bbb code>?C'est le nom du fichier, comme il est importé. Comme i
.read_csv code> pour chaque fichier, avant de concaténer, je souhaite ajouter une colonne qui a le nom de fichier partiel.