我想检索 Wikimedia Category 的成员American rock singers
。我必须使用维基数据,它告诉我用P31
用Q4167836
。下面的查询仅返回有关“类别”页面的信息,而不返回有关其成员的信息。
还有其他方法可以检索维基媒体类别的成员吗?我还尝试使用术语dcterms:subject
,我在 DBpedia 中成功使用了该术语,但在 Wikidata 中,查询返回空结果。
prefix wdt: <http://www.wikidata.org/prop/direct/>
prefix wd: <http://www.wikidata.org/entity/>
prefix wikibase: <http://wikiba.se/ontology#>
prefix bd: <http://www.bigdata.com/rdf#>
prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#>
SELECT DISTINCT ?subject ?predicate ?object ?objectLabel WHERE {
?subject ?predicate ?object ; wdt:P31 wd:Q4167836 ;
rdfs:label "Category:American rock singers"@en
SERVICE wikibase:label { bd:serviceParam wikibase:language "en" .}
}
Run Code Online (Sandbox Code Playgroud)
在这里试试
我为这个问题提供了两个数组的简单示例:labelArray
是一个1D数组,其索引处的标签与nD-array的相同索引相对应someValuesArray
。我获取了标签2出现的所有索引,并希望检索中的值someValuesArray
。
labelArray = [2,0,1,2]
someValuesArray= [array([[ 2.15072 , 2.12438 , 2.27047 , 2.64567 ,
2.22976 , 2.18186 ]], dtype=float32),
array([ [ 2.29442, 2.3087 , 2.3111 , 2.1962 , 2.23694, 2.16988]], dtype=float32)),
array([[2.82851 , 2.73032 , 2.78301 , 1.71722 , 1.81542 , 1.78189 ]], dtype=float32)),
array([[ 1.19271, 1.14721, 1.27894 , 1.16637, 1.23343, 1.21666]], dtype=float32)]
Run Code Online (Sandbox Code Playgroud)
因此,如果我想要标签2,我会得到索引0和3,这应该给我相应数组中索引0和3的值someValuesArray
。
但是,array[indices]
当我想调用函数时,会收到TypeError @ 。
TypeError: only integer scalar arrays can be converted to a scalar index
Run Code Online (Sandbox Code Playgroud)
我的功能: …