Python 从句子列表中提取的维恩图
在Excel中,我有一个列中每一行的许多句子的列表。我喜欢3个或更多这样的句子列。这些句子中有一些常见的句子。是否可以创建一个脚本来创建一个维恩图,并获得所有图之间的公共图 示例:这些是列中的句子。同样,也有不同的列 癌症患者的血淋巴细胞 病人的血淋巴细胞 卵巢肿瘤Ⅲ级 腹膜肿瘤Ⅳ级 激素抵抗性前列腺癌Python 从句子列表中提取的维恩图,python,venn-diagram,Python,Venn Diagram,在Excel中,我有一个列中每一行的许多句子的列表。我喜欢3个或更多这样的句子列。这些句子中有一些常见的句子。是否可以创建一个脚本来创建一个维恩图,并获得所有图之间的公共图 示例:这些是列中的句子。同样,也有不同的列 癌症患者的血淋巴细胞 病人的血淋巴细胞 卵巢肿瘤Ⅲ级 腹膜肿瘤Ⅳ级 激素抵抗性前列腺癌 可以用python编写脚本吗?你的问题不太清楚,所以我可能误解了你在寻找什么 维恩图只是几个简单的集合操作。Python在数据类型中内置了这些东西。基本上,使用两组项目并使用集合操作(例如,使用
可以用python编写脚本吗?你的问题不太清楚,所以我可能误解了你在寻找什么 维恩图只是几个简单的集合操作。Python在数据类型中内置了这些东西。基本上,使用两组项目并使用集合操作(例如,使用
交叉点
查找常用项目)
要读入数据,最好的办法可能是以CSV格式保存文件,然后用string
split
方法解析它。这是我对问题的解释
提供数据文件z.csv(将数据从excel导出到csv文件)
这个程序找到所有栏目共有的句子
import csv
# Open the csv file
rows = csv.reader(open("z.csv"))
# A list of 3 sets of sentences
results = [set(), set(), set()]
# Read the csv file into the 3 sets
for row in rows:
for i, data in enumerate(row):
results[i].add(data)
# Work out the sentences common to all rows
intersection = results[0]
for result in results[1:]:
intersection = intersection.intersection(result)
print "Common to all rows :-"
for data in intersection:
print data
然后打印出这个答案
Common to all rows :-
Hormone resistant PCA
Ovarian tumor_Grade III
不是100%确定这就是你想要的,但希望它能让你开始
它可以很容易地推广到任意多个列,但我不想让它变得更复杂请在输入数据的情况下给出您想要的确切输出,以完成您的问题,否则需要大量猜测才能解释您的单词(例如,没有“所有人之间都有共性”的单词)在示例输入中,有一些单词和单词序列在这两种语言中是通用的——在这种情况下,您希望如何操作,即,您想要什么输出?)。
Common to all rows :-
Hormone resistant PCA
Ovarian tumor_Grade III