你可以替换"!"
(这是反义词)
related <- getRelatedSynsets(synsets[[1]],"!")
根据您的需要使用其他符号。
请参阅此链接:
http ://wordnet.princeton.edu/man/wnsearch.3WN.html#sect4
上位词将是"@"
对原始问题的扩展:
我刚开始使用 WordNet,我正在寻找类似的东西。对于“苹果”,我想要一棵上位词树给我
inherited hypernyms
当点击WordNet 在线
http://wordnetweb.princeton.edu/perl/webwn时可以看到
但是,以下命令
filter <- getTermFilter(type="ExactMatchFilter", word="apple", ignoreCase=TRUE)
terms <- getIndexTerms("NOUN", 15, filter)
synsets <- getSynsets(terms[[1]])
related <- getRelatedSynsets(synsets[[1]], "@")
sapply(related, getWord)
只会给我
[[1]]
[1] "edible fruit"
[[2]]
[1] "pome" "false fruit"
因此未能为我提供较低级别的上位词
爬上上位词树的关键是递归地使用 getRelatedSynsets()。
继续上面的例子,从苹果的同义词中提取同义词:
related_2 <- getRelatedSynsets(related[[1]], "@")
并收集相应的单词:
sapply(related_2, getWord)
将产生:
[[1]]
[1] "produce" "green goods" "green groceries" "garden truck"
[[2]]
[1] "fruit"
并更进一步:
related_3 <- getRelatedSynsets(related2[[1]], "@")
sapply(related_3, getWord)
将导致:
[,1]
[1,] "food"
[2,] "solid food"