我不知道我做错了什么!我只是想从Firebase数据库获取数据并迭代每个结果并将它们放入一个数组中。我尝试了不同的方法。但它们都返回结果,一次向数组添加一个结果。我有以下数据:
{
"1400001" : {
"HHtype" : 3,
"Sesgrup" : 4,
"lg_Et harcaması" : 0,
"lg_Total Harcama" : 3.11
},
"1400002" : {
"HHtype" : 1,
"Sesgrup" : 4,
"lg_Et harcaması" : 1.2,
"lg_Total Harcama" : 3.15
},
"1400004" : {
"HHtype" : 3,
"Sesgrup" : 4,
"lg_Et harcaması" : 1.18,
"lg_Total Harcama" : 3.06
},
"1400005" : {
"HHtype" : 4,
"Sesgrup" : 3,
"lg_Et harcaması" : 2.21,
"lg_Total Harcama" : 3.74
},
.......
而且,我使用的代码如下:
func sen(){
var rootRef: FIRDatabaseReference!
var refHandle: UInt!
var haneRef: FIRDatabaseReference!
var numbersArray = [Int] ()
rootRef = FIRDatabase.database().reference()
haneRef = rootRef.child("SES2014")
haneRef.queryOrderedByChild("lg_Et harcaması").queryLimitedToLast(4).observeEventType(.ChildAdded, withBlock: { (snapshot) in
let hhtype = snapshot.value!["HHtype"] as? Int
numbersArray.append(hhtype!)
print(numbersArray)
})
}
结果是:
[3]
[3, 1]
[3, 1, 4]
[3, 1, 4, 4]
我想只得到最后一个数组:[3,1,4,4]
我该怎么做?谢谢
答案 0 :(得分:0)
% compute distance
d2 = repmat(sum(coord.^2,2),1,size(means,1)) + repmat(sum(means.^2,2)',size(coord,1),1) - 2*coord*means';
% Assign to nearest cluster
[~, assigns] = min(d2,[],2);