Как удалить подсписок из списка? - PullRequest
0 голосов
/ 08 июля 2019

У меня большой список training_data с 50000 сэмплами. Каждый образец содержит два подсписка, которые содержат два элемента (образец, метка).

Я случайно создал еще один список внутри элемента ярлыка, в котором снова есть два элемента.

т.е.)

                              main_list

                           _______|_______
                          |               |
                       sample           label(list)
                                     _____|_____
                                a(list)        b(list)

Я хочу удалить подсписок 'b' из каждого примера (50000). Надеюсь, я все правильно объяснил. Спаси меня.

As in the image, the output is one of the 50000 examples. And I want to remove the highlighted list from every example so that every example contains two items (the first complicated array and the list of 0s and 1s)

Ответы [ 2 ]

2 голосов
/ 08 июля 2019

Если я правильно понял, попробуйте new_list = [ [x[0], x[1][0]] for x in main_list]. В любом случае, понимания списка, вероятно, будет достаточно, чтобы решить вашу проблему ...

0 голосов
/ 08 июля 2019

Я пытался воссоздать вашу иерархию списков следующим образом:


a = ["w", "x"]
b = ["y", "z"]
label = [a, b]
sample = ["sample1", "sample2"]
main_list = [sample, label]

Это дает нам, что

print(main_list)
[['sample1', 'sample2'], [['w', 'x'], [ 'y', 'z']]]

Затем, чтобы удалить b, вам просто нужно установить

main_list = [main_list[0], main_list[1][0]] 

Достигает ли это того, чего вы хотите?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...