如何重复数组元素以形成nxm维数组或矩阵

时间:2017-12-03 02:42:17

标签: tensorflow

我有一个阵列; y = [1. 0.5 0.33333333 0.25 0.2 0.16666667 0.14285714 0.125 0.11111111 0.1]并且1想要重复相同的元素以在张量流中形成(10,10)方阵。我写了下面的代码;

y1 = tf.tile(y, [10], axis = 1)
sess = tf.Session()
print(sess.run(y))

请帮助我,因为我是一个完整的初学者。谢谢

1 个答案:

答案 0 :(得分:0)

也许这就是你想要的

import tensorflow as tf
import numpy as np

y = [ 1., 0.5, 0.33333333, 0.25, 0.2, 0.16666667, 0.14285714, 0.125, 0.11111111, 0.1 ] 
y = np.array(y).reshape((1, 10))
y1 = tf.tile(y, [10, 1])
with tf.Session() as sess:
    print(y1.shape)
    print(sess.run(y1))

输出:

(10, 10)
[[ 1.          0.5         0.33333333  0.25        0.2         0.16666667
   0.14285714  0.125       0.11111111  0.1       ]
 [ 1.          0.5         0.33333333  0.25        0.2         0.16666667
   0.14285714  0.125       0.11111111  0.1       ]
 [ 1.          0.5         0.33333333  0.25        0.2         0.16666667
   0.14285714  0.125       0.11111111  0.1       ]
 [ 1.          0.5         0.33333333  0.25        0.2         0.16666667
   0.14285714  0.125       0.11111111  0.1       ]
 [ 1.          0.5         0.33333333  0.25        0.2         0.16666667
   0.14285714  0.125       0.11111111  0.1       ]
 [ 1.          0.5         0.33333333  0.25        0.2         0.16666667
   0.14285714  0.125       0.11111111  0.1       ]
 [ 1.          0.5         0.33333333  0.25        0.2         0.16666667
   0.14285714  0.125       0.11111111  0.1       ]
 [ 1.          0.5         0.33333333  0.25        0.2         0.16666667
   0.14285714  0.125       0.11111111  0.1       ]
 [ 1.          0.5         0.33333333  0.25        0.2         0.16666667
   0.14285714  0.125       0.11111111  0.1       ]
 [ 1.          0.5         0.33333333  0.25        0.2         0.16666667
   0.14285714  0.125       0.11111111  0.1       ]]