我正在爲Google Spreadsheet編寫一個腳本。對另一個數組給定值的數組計數發生
陣列1有一系列的名稱(超過50個不同的名稱)
John, Pete, Paul, ... Michael
陣列2是一系列從給定的50那些重複的名稱(10K以上合計)
Paul, Michael, Pete, John, Paul, Paul, Pete, Michael, Paul, Michael,... Michael
如何在數組1中爲每個給定名稱創建另一個具有數量(Array 2)的數組?
排序是不可能的。因此,陣列3應該考慮到陣列的順序1.在這種情況下,例如:
1, 2, 3,... 4
我見過&證明如何使它如果順序並不重要(從Array 2,陣列1使用獨特的名稱創建,數組3包含它們的出現 - >Counting the occurrences of JavaScript array elements),但我所有的方法似乎都不起作用。到目前爲止,我有這樣的:
var namesCountArray = [];
namesArray = ss.getRange("CU3:CU" + rows + "").getValues();
namesSerieArray = ss.getRange("DF3:DF" + rows + "").getValues();
for(var i=0; i< namesArray.length; i++) {
var count = 0;
for(var i = 0; i < namesSerieArray.length; ++i) {
if(namesSerieArray[i] == namesArray[i])
count++;
}
namesCountArray.push([count]);
}
ss.getRange("DB3").setValue(namesCountArray);
你真的需要一個腳本來做到這一點?你可以簡單地使用一個計數公式或者一個數據透視表的更復雜的分析? – Harold 2014-09-30 15:46:55