我在SAS中有一个大型数据集,我知道它几乎已经排序; 我知道第一级和第二级是排序的,但第三级不是.此外,第一级和第二级包含大量不同的值,因此当我知道它已经处于正确的顺序时,再次对前两列进行排序更不可取.数据示例如下所示:
ID Label Frequency 1 Jon 20 1 John 5 2 Mathieu 2 2 Mathhew 7 2 Matt 5 3 Nat 1 3 Natalie 4
使用proc排序上的"presorted"选项似乎只检查数据是否按每个键排序,否则它会完整排序数据.有没有办法告诉SAS前两列已经排序?
我应该先使用 Apache Spark,它使用java.sql.Date,以防有人建议我应该使用java.time. 下面的示例在 Scala 中。
我使用(已弃用)获取日期的月份的 API 如下:
val date: java.sql.Date = ???
val month = date.getMonth()
Run Code Online (Sandbox Code Playgroud)
但是,如果我根据弃用情况查看我应该如何执行此操作,则上面的代码将重写如下:
val date: java.sql.Date = ???
val cal = Calendar.getInstance()
cal.setTime(date)
cal.get(Calendar.MONTH)
Run Code Online (Sandbox Code Playgroud)
代码的简单性和可读性明显不同,从函数式编程的角度来看,日期作为日历的副作用并不是非常好。有人可以解释为什么他们认为进行了这种更改吗?