Charger les données de txt avec des pandas
Je charge un fichier txt contenant un mélange de données float et string. Je veux les stocker dans un tableau où je peux accéder à chaque élément. Maintenant, je fais juste
import pandas as pd
data = pd.read_csv('output_list.txt', header = None)
print data
C'est la structure du fichier d'entrée: 1 0 2000.0 70.2836942112 1347.28369421 /file_address.txt
.
Maintenant, les données sont importées en tant que colonne unique. Comment puis-je le diviser, afin de stocker différents éléments séparément (pour que je puisse appeler data[i,j]
)? Et comment puis-je définir un en-tête?
5 réponses
Vous pouvez utiliser:
data = pd.read_csv('output_list.txt', sep=" ", header=None)
data.columns = ["a", "b", "c", "etc."]
Ajoutez sep=" "
dans votre code, en laissant un espace vide entre les guillemets. Ainsi, les pandas peuvent détecter les espaces entre les valeurs et trier dans les colonnes. Colonnes de données est pour nommer vos colonnes.
Je voudrais ajouter aux réponses ci-dessus, vous pouvez directement utiliser
df = pd.read_fwf('output_list.txt')
Fwf signifie lignes formatées à Largeur fixe.
La solution de@Pietrovismara est correcte mais je voudrais juste ajouter: plutôt que d'avoir une ligne séparée pour ajouter des noms de colonnes, il est possible de le faire à partir de pd.read_csv.
df = pd.read_csv('output_list.txt', sep=" ", header=None, names=["a", "b", "c"])
Vous pouvez utiliser ceci
import pandas as pd
dataset=pd.read_csv("filepath.txt",delimiter="\t")
Vous pouvez faire comme:
import pandas as pd
df = pd.read_csv('file_location\filename.txt', delimiter = "\t")
(comme, df = pd.read_csv ('F:\Desktop\ds\text.txt', delimiter = "\t")