2
votes

In the simple program before I am not able to do a simple task and get the following error.

import tensorflow as tf

x_1= tf.constant([1, 2, 3])
x_1= tf.reshape(x_1, shape= (1, 3))
x_2= tf.constant([2, 3, 4])
x_2= tf.reshape(x_2, shape= (1, 3))
x_3= tf.constant([3, 4, 5])
x_3= tf.reshape(x_3, shape= (1, 3))
x= tf.concat((x_1, x_2, x_3), axis=0)

for i in range(0, 3):
    x[i, :]= x[i, :]+ 1

init= tf.global_variables_initializer()

with tf.Session() as sess:
   y= sess.run(x)

And I get the following error:

TypeError: 'Tensor' object does not support item assignment

1

1 Answers

2
votes

Tensor objects cannot be accessed/modified by index.

Here's the code fixed:

import tensorflow as tf

x_1 = tf.constant([1, 2, 3])
x_1 = tf.reshape(x_1, shape=(1, 3))
x_2 = tf.constant([2, 3, 4])
x_2 = tf.reshape(x_2, shape=(1, 3))
x_3 = tf.constant([3, 4, 5])
x_3 = tf.reshape(x_3, shape=(1, 3))
x = tf.concat((x_1, x_2, x_3), axis=0)

x = tf.add(x, tf.constant(1, shape=x.shape))

with tf.Session() as sess:
    sess.run(tf.global_variables_initializer())
    y = sess.run(x)
    print(y)