【发布时间】:2021-12-09 19:22:47
【问题描述】:
我有这四个列表,分别是图片的文件名,文件名的格式为:
(疾病)-(随机患者 ID)-(该患者的图像编号)
一个病人可以有多个图像。
请看下面的这些片段:
print(train_cnv_list[0:3])
print(train_dme_list[0:3])
print(train_drusen_list[0:3])
print(train_normal_list[0:3])
>>>
['CNV-9911627-77.jpeg', 'CNV-9935363-45.jpeg', 'CNV-9911627-94.jpeg']
['DME-8889850-2.jpeg', 'DME-8773471-3.jpeg', 'DME-8797076-11.jpeg']
['DRUSEN-8986660-50.jpeg', 'DRUSEN-9100857-3.jpeg', 'DRUSEN-9025088-5.jpeg']
['NORMAL-9490249-31.jpeg', 'NORMAL-9509694-5.jpeg', 'NORMAL-9504376-3.jpeg']
我想知道:
- 每位患者/每个列表有多少张图像?
- 四个列表中的“随机患者 ID”是否有任何重叠?如果是这样,我可以使用 groupby 之类的东西将其聚合成某种报告(患者、疾病、图像数量)吗?
patient - disease1 - total number of images
- disease2 - total number of images
- disease3 - total number of images
其中图像总数为最大值(此患者的图像数)
我确实看到这会产生一个患者 ID:
train_cnv_list[0][4:11]
>>> 9911627
在此先感谢您的任何指导。
【问题讨论】:
-
恕我直言有点太宽泛了。查看split 函数以获取文件名的单独组成部分,然后使用字典进行计数。
-
对于#2,当您说重叠时,您是在尝试检查重复项吗?
-
这个问题是学习pandas库的好机会。这正是你想要做的。
-
@KyleDixon 是的,我想看看患者是否患有多种疾病 - 那么他们的 id 是否出现在四个列表中?我将编辑问题以添加更多详细信息。
标签: python pandas data-science