2017-07-20 3 views
1

Veuillez voir le fichier de données ci-joint pour son format, il y a 6 lignes d'en-tête montrant les informations de la matrice de données, dans ce cas, 100 lignes et 100 colonnes. J'essaie d'utiliser les codes suivants:Comment puis-je lire ces données ASCII sans nom de colonne affecté à l'aide de Python?

path = "ArcGIS.txt" data = pd.read_csv(path, sep=" ", header = 6, index_col = False, na_values = -9999)

Mais les données que je reçois est pas 100 lignes et 100 colonnes. Je ne sais pas comment télécharger l'attachement, donc je viens d'utiliser une image pour afficher le format (données est délimité par un « espace »):

data capture

+0

combien de lignes et de colonnes y a-t-il lorsque vous y allez? – jacoblaw

+0

propriété de sa forme est (99, 100) – KarlHuang

+0

Bienvenue sur le site: vous pouvez lire [help/on-topic], [ask] et [mcve], et reformuler votre question en conséquence. – boardrider

Répondre

1
data = pd.read_csv(path, sep=" ", header = 5, names=[i for i in range(100)], na_values = -9999) 

Il faut ignorer les 6 premières lignes (header = 5 pour cela), puis donner des noms de colonnes de 0 à 99

Et vous avez mentionné que vous vouliez aussi l'en-tête. Je ne peux pas penser à une façon de le faire avec pandas géants, mais voici un moyen pratique:

Cela vous donnera un dict avec tous ces paramètres. J'espère que cela fonctionne pour toi.

+0

Merci beaucoup. Votre code fonctionne. Une autre question est est-ce que je peux extraire à l'information d'en-tête dans des variables séparées, comme le nombre de rangées? – KarlHuang

+0

@ JianWang-CHN s'il vous plaît marquer la réponse comme acceptée si cela a fonctionné pour vous :) Je vais donner un coup de feu et mettre à jour ma réponse avec elle – jacoblaw

+0

@ JianWang-CHN J'ai ajouté un moyen de les obtenir, mais il n'utilise pas les pandas. J'espère que cela fonctionne – jacoblaw