我在mongoDB中有Reduse功能。我想在每个州打印AVG的城市。 我只得到一个正确的结果,其余的将是nan
地图功能
function map(){
key = {state : this.state};
values = { numberOfCities:1, statePop: this.pop};
emit(key, values)}
和reduce函数
function reduce(key , values){
numberOfCities = 0.0;
statePop = 0.0;
avg = 0.0;
for (i in values){
numberOfCities += values[i].numberOfCities;
statePop += values[i].statePop;
avg = statePop/numberOfCities;
}
return avg}
如果我使用numberOfCities返回statePop,我将获得正确的数字,但如果我返回操作statePop / numberOfCities,我将获得nan值
错误
json文件(这是一行json文件)
{ "_id" : "20002", "city" : "WASHINGTON", "loc" : [ -76.990055, 38.902365 ], "pop" : 56756, "state" : "DC" }
答案 0 :(得分:0)
i
是您的值对象的实例,而不是索引。因此,而不是values[I].property
使用i.property