Python: преобразование из numpy .ndarray в список: зависание - PullRequest
0 голосов
/ 21 июня 2020

У меня есть список с именем word_vector, каждый элемент которого имеет тип 'numpy .ndarray'.

print(word_vector)

вывод:

[array([0., 0., 0., ..., 0., 0., 0.]), array([0., 0., 0., ..., 0., 0., 0.]), array([0., 0., 0., ..., 0., 0., 0.]), array([0., 0., 0., ..., 0., 0., 0.])]

Я хочу преобразовать тип каждого элемента списка для списка. Итак, я написал этот код:

word_vector_list = []
for arr in word_vector:
    list_ = arr.tolist()
    word_vector_list.append(list_)
    
print(word_vector_list) 

Программирование постоянно зависает. Я получаю это исключение:

IOPub data rate exceeded.
The notebook server will temporarily stop sending output
to the client in order to avoid crashing it.
To change this limit, set the config variable
`--NotebookApp.iopub_data_rate_limit`.

Current values:
NotebookApp.iopub_data_rate_limit=1000000.0 (bytes/sec)
NotebookApp.rate_limit_window=3.0 (secs)

длина каждого элемента (массива типов) списка:

print(len(arr))

вывод:

4395

Ответы [ 2 ]

1 голос
/ 21 июня 2020

Я не совсем уверен, почему ваша программа зависает. Попробуйте использовать понимание списка так, должно быть лучше:

word_vector_list = [list(x) for x in word_vector]

Если это все еще не работает, попробуйте увеличить скорость передачи данных iopub. Чтобы увеличить скорость передачи данных iopub, запустите это в терминале:

jupyter notebook --NotebookApp.iopub_data_rate_limit=1.0e10

Надеюсь, это поможет :)

0 голосов
/ 21 июня 2020

2d np массив может быть изменен на список списков напрямую с помощью функции .tolist.

Также видно здесь

Спасибо

...