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

numpy concatenate拼接数组报TypeError标量索引错误排查

报错原因

报错的核心是numpy.concatenate函数的参数传递不符合语法规则:

  1. np.concatenate要求第一个传入参数必须是待拼接数组构成的元组或列表,你直接将arr1、arr2作为两个独立参数传入,函数会将第二个位置传入的arr2识别为axis参数的传值。axis参数仅接受整数标量(用来指定拼接维度),传入数组时就会触发TypeError: only integer scalar arrays can be converted to a scalar index报错。
  2. 你写的代码里axis = 0被放在了np.concatenate()的括号外部,根本不会被识别为该函数的参数,属于无效的参数位置。
修正方案

将待拼接的两个数组包裹为元组作为第一个参数传入,同时把axis参数放到函数括号内部,修正后的完整代码如下:

import numpy as np
arr_bis = np.array([[1,2,3],[7,1,6],[9,6,3]])
arr1 = arr_bis[:,1]
arr2 = arr_bis[:,2]
print(f"ARR1{arr1}")
print(f"ARR2{arr2}")
print(np.concatenate((arr1, arr2), axis=0))
运行结果说明

修正后代码会按0轴方向(一维数组默认首尾相接)完成拼接,输出结果为:

ARR1[2 1 6]
ARR2[3 6 3]
[2 1 6 3 6 3]

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.27 13:54:25