我的问题是我在Solr中有n个字段(比如大约10个)可搜索,它们都被编入索引并存储.我想首先在我的5000个文档的整个索引上运行一个查询,这个文档将平均达到500个文档.接下来,我想在这500个文档上使用不同的关键字集查询,而不是在整个索引上查询.
因此,我第一次发送查询时会生成一个分数,第二次运行查询时,生成的新分数应该基于上一个查询的500个文档,或者换句话说,Solr应该只考虑这500个文档作为整个指数.
总而言之,5000的索引将被过滤到500然后50(5000> 500> 50).它基本上是过滤但我想在Solr中这样做.
我有合理的基础知识,还在学习.
更新:如果以数学方式表示,它将如下所示:
results1=f(query1)
results2=f(query2, results1)
final_results=f(query3, results2)
Run Code Online (Sandbox Code Playgroud)
我希望使用程序完成此操作,最终用户只能看到50个结果.因此,分面不是一种选择.
我有一个看起来像这样的数据框
a b c d
1 1 1 0
1 1 1 200
1 1 1 300
1 1 2 0
1 1 2 600
1 2 3 0
1 2 3 100
1 2 3 200
1 3 1 0
Run Code Online (Sandbox Code Playgroud)
我有一个看起来像这样的数据框
a b c d
1 1 1 250
1 1 2 600
1 2 3 150
1 3 1 0
Run Code Online (Sandbox Code Playgroud)
我目前在做{
n=nrow(subset(Wallmart, a==i & b==j & c==k ))
sum=subset(Wallmart, a==i & b==j & c==k )
#sum
sum1=append(sum1,sum(sum$d)/(n-1))
Run Code Online (Sandbox Code Playgroud)
} …
我有一个看起来像这样的数据框
a b c d
------------------
1 1 1 0
1 1 1 200
1 1 1 300
1 1 2 0
1 1 2 600
1 2 3 0
1 2 3 100
1 2 3 200
1 3 1 0
Run Code Online (Sandbox Code Playgroud)
我希望它看起来像这样.
a b c d1 d2 d3
------------------------------
1 1 1 0 200 300
1 1 2 0 600 (NA)
1 2 3 0 100 200
1 3 1 0
Run Code Online (Sandbox Code Playgroud)
如果该值丢失,则填写该字段的NA很好,但我应该可以说该值已丢失.例如第2和第4行.
我是R的新手,我不知道如何继续.