【发布时间】:2014-02-11 20:21:11
【问题描述】:
我有一个.txt 文件,我想使用pyhon 读取。该文件是array。它包含彗星的数据。我从 3000 行中复制了 3 行。
P/2011 U1 PANSTARRS 1.54 0.5 14.21 145.294 352.628 6098.07
P/2011 VJ5 Lemmon 4.12 0.5 2.45 139.978 315.127 5904.20 *
149P/Mueller 4 3.67 0.1 5.32 85.280 27.963 6064.72
我正在使用以下代码读取数组:
import numpy as np
list_comet = np.genfromtxt('jfc_master.txt', dtype=None)
我面临两个不同的问题:
首先,在row 1,彗星的名字是:P/2011 U1 PANSTARRS。如果我输入:
list_comet[0][1] 结果将是 P/2011。我应该如何告诉 python 如何读取每颗彗星的名称?请注意,最长的名称为 31 个字符。那么告诉pythoncolumn 1是31 characters long的命令是什么?
第二,在row 2中最后一列的值为*。当我阅读文件时,我收到一条错误消息:
Line #2941 (got 41 columns instead of 40)
(注意上面的数据不是完整的数据,我的原始数据总共有38列)。我想我收到此错误是由于在某些行中发现了*。我该如何解决这个问题?
【问题讨论】:
标签: python arrays delimiter missing-data