How can I make a two-dimensional array from a one-dimensional array?

I have an array:

b = ['Hi!', 'My name is Ivan.', 'I am beginner programier...']

I want to make this one out of it:

b = [['Hi!'], ['My name is Ivan.'], ['I am beginner programier...']]

That is, an array, where each element is an array.

Author: 0xdb, 2020-05-20

1 answers

Vanilla Python:

b = list(map(lambda x: [x], b))

Or:

b = [[x] for x in b]

Numpy:

import numpy as np   #  pip install numpy

b = np.asarray(b).reshape(-1, 1)

Result:

In [36]: b
Out[36]:
array([['Hi!'],
       ['My name is Ivan.'],
       ['I am beginner programier...']], dtype='<U27')

In [37]: b.shape
Out[37]: (3, 1)
 2
Author: MaxU, 2020-05-20 16:01:23