将数组映射到更高维度 - Python

Mapping array into higher-dimension - Python

我必须将 R^2 数组 X=[x1, x2] 映射到 R^3 数组 X'=[x1, x2, x1^2]

有什么紧凑的方案吗?

添加:我的起始数组是一个 numpy 数组,例如x = numpy.array([2, 3])。我想以另一个 numpy 数组结束,例如x' = numpy.array([2, 3, 4]).

如果您的数组是形状为 (2,) 的 numpy 数组,添加额外成员的一种方法是

xx = numpy.append(x, x[0]**2)

不幸的是,如果您尝试 x + [x[0]**2] 之类的操作,numpy 会将元素加在一起,而不是追加新元素。如果你尝试像 [x[0], x[1], x[0]**2] 这样的东西,你最终会得到一个列表而不是一个 numpy 数组。