我正在尝试使用 SPARQL查询Wikidata中某些属性的频率。
例如,要找出不同性别值的频率是多少,我有以下查询:
SELECT ?rid (COUNT(?rid) AS ?count)
WHERE { ?qid wdt:P21 ?rid.
BIND(wd:Q5 AS ?human)
?qid wdt:P31 ?human.
} GROUP BY ?rid
我得到以下结果:
wd:Q6581097 2752163
wd:Q6581072 562339
wd:Q1052281 223
wd:Q1097630 68
wd:Q2449503 67
wd:Q48270 36
wd:Q44148 8
wd:Q43445 4
t152990852 1
t152990762 1
t152990752 1
t152990635 1
t152775383 1
t152775370 1
t152775368 1
...
我对此有以下疑问:
- 这些
t152...
值指的是什么? - 如何忽略包含的元组
t152...
?
我试过FILTER ( !strstarts(str(?rid), "wd:") )
了,但它超时了。 - 如何计算不同的答案数量?
我尝试SELECT (COUNT(DISTINCT ?rid) AS ?count)
使用上述查询,但它再次超时。