numpy.loadtxt跳过多行

 D调肥仔 发布于 2023-02-13 17:22
  • php
  • 我相信这个帖子的标题解释了我在寻找什么.我很想知道跳过多行的语法是什么; 我似乎无法在任何地方找到这样的信息.

    1 个回答
    • 使用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)
      

      2023-02-13 17:24 回答
    撰写答案
    今天,你开发时遇到什么问题呢?
    立即提问
    热门标签
    PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
    Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有