【发布时间】:2014-08-25 19:11:24
【问题描述】:
我有一个数组数组:
import numpy as np
from numpy import array
data = [[1.0,0.56,1.3,1.0],
[2.0,0.59,1.3,1.0],
[3.0,0.63,1.3,1.0],
[4.0,0.66,1.3,1.0]]
我正在尝试映射到这个 NumPy 表单:
[[array([ 0., 1.]), array([ 0., 0.56]), array([ 0., 1.3]), array([ 0., 1.])], [array([ 0., 2.]), array([ 0., 0.59]), array([ 0., 1.3]), array([ 0., 1.])], [array([ 0., 3.]), array([ 0., 0.63]), array([ 0., 1.3]), array([ 0., 1.0.])], [array([ 0., 4.]), array([ 0., 0.66]), array([ 0., 1.3]), array([ 0., 1.])]]
我已经尝试过以下操作:
s = Set([])
maxNDimValues = max(map(lambda x: len(s.union(Set(x))), transpose(data)))
valueMap = identity(maxNDimValues).astype(float64)
trainingitems = map(lambda x: map(lambda y: valueMap[y-1], x), data)
但它没有用。
【问题讨论】:
-
如果
data是一个列表列表,为什么np.array(data)不够用? -
为什么需要一维数组的列表,而不是单个二维数组?
-
出于某种原因,当我尝试这样做时,它以原始形式打印了数组,尽管我将 numpy 导入为 np 并从 numpy 导入数组
标签: python arrays numpy mapping