有时候我们的数据之间需要比较异同点,这时我们可以利用Python画Venn韦恩图来分析
示例速览
Venn图结果
例如我有两组数据(字符串列表),一组自己的数据,一组文献上的数据,需要分析共同的个数
image.pngimport pandas as pd
import os,sys
os.chdir(sys.path[0]) # 初始化路径为本文件所在目录
from matplotlib_venn import venn2
from pylab import *
mpl.rcParams['font.sans-serif']=['SimHei'] # 防止中文出现乱码
# 读取excel文件中某列数据,并保存用于比较,文件路径:L:\研究生\2020上\文章发表-Kiton\ASFV蛋白质组学\蛋白质组学 质谱ASFV库 87.xlsx
def excel_one_line_to_list(lieshu):
# 读取项目名称列,不要列名
df = pd.read_excel(r"L:\研究生\2020上\文章发表-Kiton\ASFV蛋白质组学\蛋白质组学 质谱ASFV库 87.xlsx", usecols=[lieshu],
names=None) # 读取项目名称列,不要列名
#
df_li = df.values.tolist()
result = []
for s_li in df_li:
result.append(s_li[0])
return result
# 第1列去表头的数据列表,字符串类型
shiyan = excel_one_line_to_list(0)
# 第2列去表头的数据列表,字符串类型
wenxian = excel_one_line_to_list(1)
a=shiyan
b=wenxian
subset1 = [set(shiyan),set(wenxian)]
venn2(subset1,set_labels=('实验数据','文献数据'),set_colors=('r','g'),alpha=0.4,normalize_to=1.0,ax=None,subset_label_formatter=None)
plt.show()
结果:
可得到如下数据图表 两组数据之间有39个相同的
Venn图结果
网友评论