我相信这个帖子的标题解释了我在寻找什么.我很想知道跳过多行的语法是什么; 我似乎无法在任何地方找到这样的信息.
使用help(np.loadtxt)
.你会发现skiprows
参数将允许你跳过第一N
行:
In [1]: import numpy as np In [2]: help(np.loadtxt) Help on function loadtxt in module numpy.lib.npyio: loadtxt(fname, dtype=<type 'float'>, comments='#', delimiter=None, converters=None, skiprows=0, usecols=None, unpack=False, ndmin=0) ... skiprows : int, optional Skip the first `skiprows` lines; default: 0.
因此,要跳过N
行,你会说
np.loadtxt(fname, skiprows=N)
如果你需要过滤除第一 N
行以外的行,那么使用np.genfromtxt
哪一行可以使用一个迭代器,它产生字符串作为第一个参数:
with open(filename, 'r') as f: lines = (line for line in f if predicate(line)) arr = np.genfromtxt(lines)
要跳过中间的一系列行,例如行47--50,您可以这样使用itertools
:
import itertools as IT with open(filename, 'r') as f: lines = IT.chain(IT.islice(f, 46), IT.islice(f, 4, None)) arr = np.genfromtxt(lines)