Ok, я прочитал все это раньше, и я думаю, что панды может быть решением, но моя проблема slighly разные:
Print a dictionary of lists vertically
Printing Lists as Tabular Data
print dictionary values which are inside a list in python
Print a dictionary into a tableПечать Dict списков в качестве сетки-макета
у меня есть Dict списков:
dict={"A":[i1, i2,i3], "B":[i1, i4,i5], "C":[i1, i2,i5]}
То, что я хочу, как результат:
i1 i2 i3 i4 i5
A x x x - -
B x - - x x
C x x - - x
(или даже лучше,
i1 i2 i3 i4 i5
A A A A - -
B B - - B B
C C C - - C
или значение соответствия A, B, C или (А, В) в другом словаре, но если я могу просто иметь первую таблицу, я будет более чем счастлив)
В списке нет повторов, но все элементы из этих списков извлекаются из одного и того же списка (на самом деле моя проблема заключается в создании сетки аннотированных терминов с соответствующими белками, ключи - аннотированные термины , которые являются функциями, связанными с этими белками в моем ext исследования).
Я действительно могу представить себе сложный способ сделать это (строить векторы 0 и 1 для сравнения каждого списка с общим списком, связывая эти векторы с ключами, помещая это в панд DataFrame, который будет хорошо отформатирован по волшебству меня, восстанавливая большое количество сущностей в списке, и печатайте это), но это кажется/утомительным/нерепичным.
Я думаю, что должен быть известный способ сделать это с помощью некоторого модуля (панды, симпатичные, другие?); и что я просто этого не знаю. Так что я буду рад за любое понимание этого. Благодаря
Высокий. Благодарю. Я думаю, меня всегда беспокоит то, как pandas конвертирует списки в dicts в столбцы. Если я хорошо понимаю, мне просто нужно получить c.values вместо c.name, чтобы иметь значение вместо этого? Замечательно. –