Каков хороший способ визуализации общих строковых значений из нескольких столбцов данных? - PullRequest
0 голосов
/ 28 июня 2019

У меня есть несколько фреймов данных (по одному для каждого города) со столбцом «Имя», который представляет названия организаций из этого города.

Как я могу визуализировать имена, общие для каждых 2 городов, и имена, общие для всех городов, чтобы их было легко понять?

Пример:

  df1            df2

  Name           Name       
'Apollo'        'Kims'
'MedWorks'      'AIMs'
'Cradle'        'Apollo'
'Kims'          'Bronte Co'
'Collins'       'Cradle'

Существует более 10 значений (имен), общих для каждого города.Я не уверен, что диаграммы Венна работают со строковыми значениями, но даже если они это сделают, он не будет соответствовать всем данным в хорошем формате.

Попытка это как предложено но я получаю:

TypeError: unsupported operand type(s) for -: 'str' and 'str'

1 Ответ

2 голосов
/ 28 июня 2019

Использование matplotlib_venn:

import pandas as pd
from matplotlib_venn import venn2

set1 = set(df1['Name'])
set2 = set(df2['Name'])

venn = venn2([set1, set2])
venn.get_label_by_id('100').set_text('\n'.join(map(str,set1-set2)))
venn.get_label_by_id('110').set_text('\n'.join(map(str,set1&set2)))
venn.get_label_by_id('010').set_text('\n'.join(map(str,set2-set1)))
# venn.get_label is quoted from https://stackoverflow.com/questions/55717203/plot-actual-set-items-in-python-not-the-number-of-items

Выход:

enter image description here

...