python - 计算列表列表中的元素
问题描述
我有一个列表如下
[
['DDX11L1', 'lincRNA', 'chr1', 11869, 14409],
['WASH7P', 'lincRNA', 'chr1', 14404, 29570],
['MIR1302-2HG', 'lincRNA', 'chr1', 29554, 31109],
['FAM138A', 'lincRNA', 'chr1', 34554, 36081],
['OR4G4P', 'unprocessed_pseudogene', 'chr2', 52473, 53312],
['DDX11L1', 'transcribed_unprocessed_pseudogene', 'chr2', 11869, 14409],
['WASH7P', 'lincRNA', 'chr2', 14404, 29570],
['MIR1302-2HG', 'lincRNA', 'chr1', 29554, 31109],
['FAM138A', 'lincRNA', 'chr3', 34554, 36081],
['OR4G4P', 'unprocessed_pseudogene', 'chr2', 52473, 53312]
]
内部列表'chr'
将与'chr1'
,'chr2'
和不同'chrs'
。取决于那个 chr,我想计算有多少'lincRNA'
存在。(不是所有的'chrs'
都会有'lincRNA'
)
示例答案:
我想要的结果如下:
There are 5 'lincRNA' with 'chr1'
There are 1 'lincRNA' with 'chr2'
提前致谢
解决方案
使用 dict 的解决方案
store = {}
L = [['DDX11L1', 'lincRNA', 'chr1', 11869, 14409],
['WASH7P', 'lincRNA', 'chr1', 14404, 29570],
['MIR1302-2HG', 'lincRNA', 'chr1', 29554, 31109],
['FAM138A', 'lincRNA', 'chr1', 34554, 36081],
['OR4G4P', 'unprocessed_pseudogene', 'chr2', 52473, 53312],
['DDX11L1', 'transcribed_unprocessed_pseudogene', 'chr2', 11869, 14409],
['WASH7P', 'lincRNA', 'chr2', 14404, 29570],
['MIR1302-2HG', 'lincRNA', 'chr1', 29554, 31109],
['FAM138A', 'lincRNA', 'chr3', 34554, 36081],
['OR4G4P', 'unprocessed_pseudogene', 'chr2', 52473, 53312]]
if L:
for rec in L:
if rec[1] == "lincRNA":
if rec[2] in store:
store[rec[2]] = store[rec[2]] + 1
else:
store[rec[2]] = 1
for key, value in store.items():
print("There are '{0}' linkRNA with '{1}'".format(value, key))
推荐阅读
- sql - 如何将 Sysdate 转换为 GMT?
- javascript - 在适当的主菜单项下动态渲染 Nav 的子菜单
- git - 了解 Git LFS 存储库如何为未安装 LFS 扩展的开发人员工作
- reactjs - 使用reactjs提交表单后如何显示模式弹出窗口?
- c# - 我不明白为什么我有这两个错误
- scala - 如何在scala中创建类似的枚举类
- javascript - 反应 onSubmit 按钮 POST 不工作
- c++ - MFC:如何在标题栏和任务栏中设置不同的图标
- swift - 从扩展中调用 viewController 中的函数?
- sql - SQL's INNER JOIN resulting in duplicate entries even though there are no duplicate column values in all 3 tables