花式sql 信用模型 2016.06.22回顾

30 篇文章 0 订阅
29 篇文章 0 订阅

1、上午主要是帮tony拿一些逾期相关的数据,在新老客户的判别上我想写得完备一些,但是where的方法不能直接转换为group by查全部,后来我是通过先计算loans表中客户的贷款次数,然后再用所有的national_id去连接,没连到的就是0,这样也能输出全部national_id的以往贷款次数,也能输出全部account_id的贷款次数,对于多个account_id对应一个national_id的情况,有一个别扭的加和,然后再连接,问题也是不大的!
2、下午的时间主要就是研究tony的模型,以及对他的模型的一些问题探讨,我的理解就是信用模型这东西有一部分本身就是经验主义的,经验是需要积累的,tony太偏重于数据,但是我在想30个历史上有90天逾期的人的表现和1800个人的表现没差别,30个样本太小,有没有一个量化的指标,多少个才可以说样本足够大呢?
3、下午还处理了一些sb的突发事件

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
`flatMap()` 是一个非常强大的函数,它的作用是将一个流中的每个元素转换为另一个流,并将这些流的元素合并成一个单一的流。使用 `flatMap()` 可以处理各种类型的数据,例如列表、集合、数组等。下面是一些 `flatMap()` 的常见用法: 1. 将一个流中的元素转换为另一个流 ```java List<String> words = Arrays.asList("hello", "world"); List<String[]> result = words.stream() .map(w -> w.split("")) .collect(Collectors.toList()); List<String> letters = words.stream() .flatMap(w -> Arrays.stream(w.split(""))) .collect(Collectors.toList()); ``` 上面的代码中,我们将一个字符串列表中的每个字符串转换为一个字符数组,然后使用 `flatMap()` 将这些字符数组合并成一个单一的流,最后将这个流转换为一个字符串列表。这个例子展示了如何将一个列表中的元素转换为另一个流,并将这些流合并成一个单一的流。 2. 将一个流中的元素转换为多个流 ```java List<Integer> numbers = Arrays.asList(1, 2, 3, 4, 5); List<Integer> result = numbers.stream() .flatMap(n -> n % 2 == 0 ? Stream.of(n) : Stream.empty()) .collect(Collectors.toList()); ``` 上面的代码中,我们将一个整数列表中的偶数元素转换为一个流,并将奇数元素转换为空流。然后使用 `flatMap()` 将这些流合并成一个单一的流,最后将这个流转换为一个整数列表。这个例子展示了如何将一个流中的元素转换为多个流,并将这些流合并成一个单一的流。 3. 将一个流中的元素转换为一个流,并对流中的元素进行处理 ```java List<String> words = Arrays.asList("hello", "world"); List<String> result = words.stream() .flatMap(w -> { List<String> letters = new ArrayList<>(); for (char c : w.toCharArray()) { letters.add(String.valueOf(c)); } return letters.stream(); }) .collect(Collectors.toList()); ``` 上面的代码中,我们将一个字符串列表中的每个字符串转换为一个字符列表,并将这些字符列表合并成一个单一的流。然后我们对这个流中的每个元素进行处理,将它们转换为字符串,并将它们添加到一个新的字符串列表中。最后,我们将这个新的字符串列表收集到一个流中。这个例子展示了如何将一个流中的元素转换为一个流,并对流中的元素进行处理。 4. 将一个流中的元素转换为一个流,并对流中的元素进行分组 ```java List<String> words = Arrays.asList("hello", "world"); Map<Character, List<String>> result = words.stream() .flatMap(w -> Arrays.stream(w.split(""))) .collect(Collectors.groupingBy(Function.identity())); ``` 上面的代码中,我们将一个字符串列表中的每个字符串转换为一个字符列表,并将这些字符列表合并成一个单一的流。然后我们使用 `groupingBy()` 方法对这个流中的元素进行分组,将它们按照首字母分组,并将每个分组中的字符串收集到一个列表中。最后,我们将这个分组结果收集到一个 `Map` 中。这个例子展示了如何将一个流中的元素转换为一个流,并对流中的元素进行分组。 5. 将一个流中的元素转换为一个流,并对流中的元素进行排序 ```java List<String> words = Arrays.asList("hello", "world"); List<String> result = words.stream() .flatMap(w -> Arrays.stream(w.split(""))) .sorted() .collect(Collectors.toList()); ``` 上面的代码中,我们将一个字符串列表中的每个字符串转换为一个字符列表,并将这些字符列表合并成一个单一的流。然后我们使用 `sorted()` 方法对这个流中的元素进行排序,将它们按照字母顺序排序。最后,我们将这个排序后的流收集到一个字符串列表中。这个例子展示了如何将一个流中的元素转换为一个流,并对流中的元素进行排序。 6. 将一个流中的元素转换为一个流,并对流中的元素进行去重 ```java List<String> words = Arrays.asList("hello", "world"); List<String> result = words.stream() .flatMap(w -> Arrays.stream(w.split(""))) .distinct() .collect(Collectors.toList()); ``` 上面的代码中,我们将一个字符串列表中的每个字符串转换为一个字符列表,并将这些字符列表合并成一个单一的流。然后我们使用 `distinct()` 方法对这个流中的元素进行去重,将它们去重后的流。最后,我们将这个去重后的流收集到一个字符串列表中。这个例子展示了如何将一个流中的元素转换为一个流,并对流中的元素进行去重。 7. 将一个流中的元素转换为一个流,并对流中的元素进行过滤 ```java List<String> words = Arrays.asList("hello", "world"); List<String> result = words.stream() .flatMap(w -> Arrays.stream(w.split(""))) .filter(c -> c.equals("l")) .collect(Collectors.toList()); ``` 上面的代码中,我们将一个字符串列表中的每个字符串转换为一个字符列表,并将这些字符列表合并成一个单一的流。然后我们使用 `filter()` 方法对这个流中的元素进行过滤,将它们过滤出与 "l" 相等的字符。最后,我们将这个过滤后的流收集到一个字符串列表中。这个例子展示了如何将一个流中的元素转换为一个流,并对流中的元素进行过滤。 这些是 `flatMap()` 的一些常见用法,它们展示了如何将一个流中的元素转换为另一个流,并对流中的元素进行各种类型的处理。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值