为Keras/Theano重塑pyspark数据框架为4维numpy数组



我试图得到一个火花数据帧,训练成一个4-d numpy数组。我试过了:

traindf = sqlContext.createDataFrame([
    (1, 1, 2, 3),
    (1, 2, 2, 3),
    (1, 3, 2, 3),
    (1, 4, 2, 3),
    (2, 4, 5, 6),
    (2, 4, 5, 6),
    (3, 7, 8, 9),
    (2, 4, 5, 6),
    (3, 7, 8, 9),
    (3, 7, 8, 9)
], ("id", "image", "s", "t"))
values = (traindf.rdd.map(lambda l: [map(lambda r: float(r), l)]).collect())
x = np.array(values)
x = np.array_split(x, x.shape[0]/2)
x = np.asarray(x)
x.shape

这产生(5,2,1,4),但它似乎keras需要(5,1,2,4)。我已经尝试了几种方法,但没有看到一个好方法来获得正确的格式。

有什么建议吗?

刚刚想好了,把这个加到结尾

x = np.reshape(x, (5, 1, 2, 4))

相关内容

  • 没有找到相关文章

最新更新