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

如何在Python中实现MATLAB式数组拼接,生成目标数值序列?

MATLAB数组拼接逻辑迁移到Python的实现方法

完整实现代码

要实现和MATLAB完全一致的数组(包括列向量形式),可以用NumPy的拼接函数完成,以下是两种常用方法:

方法1:使用np.concatenate

import numpy as np

N, y1, y2 = 4, 2, 6
n = np.arange(1, N)
y_part = ((y2 - y1)/N * n + y1)
# 拼接单个元素y2,需先转为数组;若要列向量则添加维度并指定axis=0
y = np.concatenate([y_part, np.array([y2])])
# 转为列向量(和MATLAB输出格式一致)
y_col = y.reshape(-1, 1)
print(y_col)

输出结果:

[[3.]
 [4.]
 [5.]
 [6.]]

方法2:使用np.append(更简洁)

import numpy as np

N, y1, y2 = 4, 2, 6
n = np.arange(1, N)
y_part = ((y2 - y1)/N * n + y1)
y = np.append(y_part, y2)
# 转为列向量
y_col = y[:, np.newaxis]
print(y_col)

关键说明

  • MATLAB中用;实现纵向拼接,对应Python里需要保证拼接的两个对象维度匹配:单个元素y2要先转为一维数组(np.array([y2])),再和已生成的y_part拼接。
  • 如果需要和MATLAB完全一致的列向量格式,通过reshape(-1,1)或[:, np.newaxis]将一维数组转为二维列向量即可。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.18 10:10:23