You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python中统计数组元素个数并生成新数组的实现问题

基于数组长度生成连续整数数组的解决方案

你需要根据数组y的长度,生成一个从1到该长度的连续整数数组x,当前代码仅生成了包含长度值的单元素数组,以下是正确的实现方式:

问题原因

原代码np.array([len(y)])的作用是将y的长度(13)作为单个元素存入数组,而非生成连续序列。

正确实现方法

方法一:使用np.arange(推荐)

np.arange可以直接生成指定范围的整数序列,注意设置左闭右开的区间:

import numpy as np

y = np.array([60.        , 57.71689783, 43.92696073, 41.27856221, 52.87672123,
        46.75800742, 40.36532134, 42.10047899, 44.65755342, 52.69407306,
        48.49316507, 53.78, 55.0        ])

x = np.arange(1, len(y) + 1)

执行后输出:

array([ 1,  2,  3,  4,  5,  6,  7,  8,  9, 10, 11, 12, 13])

方法二:使用np.linspace

如果需要通过指定起始、终止值和元素数量来生成序列,可以用linspace并指定整数类型:

x = np.linspace(1, len(y), len(y), dtype=int)

方法三:Python内置range转数组

利用Python原生的range生成序列后转为numpy数组:

x = np.array(range(1, len(y) + 1))

内容的提问来源于stack exchange,提问作者user20032724

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.17 19:30:53