StackGenVis: Alignment of Data, Algorithms, and Models for Stacking Ensemble Learning Using Performance Metrics https://doi.org/10.1109/TVCG.2020.3030352
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
StackGenVis/frontend/node_modules/array-rearrange/test.js

35 lines
952 B

'use strict'
var reorder = require('./')
var range = require('array-range')
var assert = require('assert')
assert.deepEqual(reorder([4,3,2,1], [3,2,1,0]), [1,2,3,4])
assert.deepEqual(reorder([4,4, 3,3, 2,2, 1,1], [3,2,1,0], 2), [1,1, 2,2, 3,3, 4,4])
assert.deepEqual(reorder([4,4, 3,3, 2,2, 1,1], [3,2,1,0]), [1,1, 2,2, 3,3, 4,4])
assert.deepEqual(reorder([0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7], [0,1,4,2,5,6,3,7]), [0,0,1,1,4,4,2,2,5,5,6,6,3,3,7,7])
assert.deepEqual(reorder([0,1,2], [2,0,1]), [2,0,1])
assert.deepEqual(reorder(['A','B','C','D'], [3,0,2,1]), ['D','A','C','B'])
// perf
let N = 1e6
let a = Array.from({length: N}, Math.random)
let idx = Array.from({length: N}, (v, i) => (N - i - 1))
console.time(1)
reorder(a, idx.slice())
console.timeEnd(1)
let _a = new Float64Array(a)
console.time(2)
let b = new Float64Array(N)
for (let i = 0; i < N; i++) {
b[i] = a[idx[i]]
}
_a.set(b)
console.timeEnd(2)