The tooling is ahead in some ways and behind in others. As a statically typed language, Kotlin's autocompletion and static analysis is already miles ahead. More broadly, the JVM has a rich ecosystem of libraries for data processing, from natural language processing (CoreNLP) to big data analytics (Spark). If you're looking for something similar to Pandas/Numpy/Matplotlib, maybe check out Krangl [1], EJML-Kotlin [3] or lets-plot [4]. There are also efforts to port TensorFlow [5] and PyTorch [6] to the JVM. While not all libraries as mature as their Python cousins, there are a growing number of native libraries and JVM wrappers for scientific computing, which provide most of the functionality and are very ergonomic to use in Kotlin.