|
|
@@ -3078,14 +3078,14 @@ public class CustomFunction {
|
|
|
//返回结果
|
|
|
List<Object> result = new ArrayList<>();
|
|
|
|
|
|
- if (designData != null) {
|
|
|
+ if (designData instanceof List) {
|
|
|
obj1 = obj2List(designData);
|
|
|
|
|
|
}
|
|
|
- if (actualData != null) {
|
|
|
+ if (actualData instanceof List) {
|
|
|
obj2 = obj2List(actualData);
|
|
|
}
|
|
|
- if (biasData != null) {
|
|
|
+ if (biasData instanceof List) {
|
|
|
obj3 = obj2List(biasData);
|
|
|
}
|
|
|
//三种数据长度必须一致
|
|
|
@@ -3108,6 +3108,16 @@ public class CustomFunction {
|
|
|
result.add(finalObj.get(i));
|
|
|
});
|
|
|
});
|
|
|
+ }else if (obj2.size() > 0 && obj1.size() == 0 && obj3.size() == 0){
|
|
|
+ int sampleSize = obj2.size();
|
|
|
+ //如果样本数量小于5,则获取全部数据
|
|
|
+ if(obj2.size() > 1){
|
|
|
+ // 计算需要抽取的元素数量
|
|
|
+ sampleSize = (int) Math.ceil(obj2.size() * 0.3);
|
|
|
+ }
|
|
|
+ Collections.shuffle(obj2);
|
|
|
+ List<Object> objects = obj2.subList(0, sampleSize);
|
|
|
+ objects.stream().limit(sampleSize).forEach(result::add);
|
|
|
}
|
|
|
return result;
|
|
|
}
|