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.
29 lines
633 B
29 lines
633 B
'use strict';
|
|
|
|
var isObject = require('is-extendable');
|
|
var merge = require('mixin-deep');
|
|
var get = require('get-value');
|
|
var set = require('set-value');
|
|
|
|
module.exports = function mergeValue(obj, prop, value) {
|
|
if (!isObject(obj)) {
|
|
throw new TypeError('expected an object');
|
|
}
|
|
|
|
if (typeof prop !== 'string' || value == null) {
|
|
return merge.apply(null, arguments);
|
|
}
|
|
|
|
if (typeof value === 'string') {
|
|
set(obj, prop, value);
|
|
return obj;
|
|
}
|
|
|
|
var current = get(obj, prop);
|
|
if (isObject(value) && isObject(current)) {
|
|
value = merge({}, current, value);
|
|
}
|
|
|
|
set(obj, prop, value);
|
|
return obj;
|
|
};
|
|
|