【问题标题】:numpy.loadtxt loading floats from single line file when ndmin=1当 ndmin=1 时,numpy.loadtxt 从单行文件加载浮点数
【发布时间】:2015-12-26 10:04:06
【问题描述】:

问题: 我有一个包含多个数字的文本文件。我试图抓住其中的一些并将它们加载到数组中。我想要数组,即使文件中只有 1 行。当只有一行时我有一个问题。这些值作为浮点数加载,而不是加载到数组中。

尝试过: 从 numpy 文档中,我希望在使用 ndmin=1 时,单行文本文件的数组长度为 1。但是,我仍然得到一系列浮动,见下文:

>>> ra_deg,dec_deg,l_deg,b_deg=np.loadtxt(args.infile,ndmin=1,usecols=[0,1,2,3],unpack=True)
>>> ra_deg
127.55905
>>> np.__version__
'1.8.1'

预期:

>>> ra_deg
array([127.55905])

示例 args.infile 输入:

127.55905 +00.00000 224.77661 +21.83227

我不确定这是我的错误,还是 numpy 有什么问题?在打开一个 numpy 问题之前的任何建议都会很棒,谢谢。

【问题讨论】:

  • 这是蟒蛇解包。 loadtxt 返回一组浮点数,解压为 4 个浮点数。试试 ndmin=2,它应该会给你一个 2d 数组,它可以解压成 4 个数组。
  • 太好了,谢谢。我尝试使用 ndmin=2 并且效果很好。我可以将您的评论标记为答案。谢谢。

标签: python arrays python-2.7 numpy


【解决方案1】:

只需将 ndmin=1 更改为 ndmin=2(在 loadtxt 函数的第二个参数中),它就会给你一个我认为你想要的二维数组。

【讨论】:

    猜你喜欢
    • 2021-09-12
    • 2014-06-26
    • 1970-01-01
    • 1970-01-01
    • 2018-07-16
    • 2018-10-07
    • 2015-05-03
    • 2014-11-30
    • 2017-10-03
    相关资源
    最近更新 更多