Skip to content

Kotlin 和 Java 数据分析库

从数据收集到模型构建,Kotlin 提供了强大的库,可协助数据流水线中的各项任务。

除了其自身的库之外,Kotlin 与 Java 实现了 100% 互操作。这种互操作性有助于利用久经考验的 Java 库的整个生态系统,并带来卓越的性能。有了这项优势,你在进行 Kotlin 数据项目时可以轻松使用 Kotlin 或 Java 库。

Kotlin 库

用途特性
Kotlin DataFrame
  • 数据收集
  • 数据清洗和处理
  • 用于创建、排序、清洗数据帧、特性工程等操作
  • 结构化数据处理
  • 支持 CSV、JSON 和其他输入格式
  • 从 SQL 数据库读取数据
  • 连接不同的 API 以访问数据并提高类型安全
Kandy
  • 数据探索和可视化
KotlinDL
  • 模型构建
  • Keras 启发的 Kotlin 深度学习 API
  • 从头开始训练深度学习模型,或导入现有 Keras 和 ONNX 模型进行推断
  • 迁移学习,用于根据你的任务定制现有预训练模型
  • 支持 Android 平台
Multik
  • 数据清洗和处理
  • 模型构建
  • 对多维数组进行数学操作(线性代数、统计、算术及其他计算)
  • 创建、复制、索引、切片及其他数组操作
  • 采用 Kotlin 惯用法的库,具有类型和维度安全以及可插拔计算引擎等优势,可在 JVM 或作为原生代码运行
Kotlin for Apache Spark
  • 数据收集
  • 数据清洗和处理
  • 数据探索和可视化
  • 模型构建
  • Apache Spark 与 Kotlin 之间的兼容层
  • Kotlin 惯用代码中的 Apache Spark 数据转换操作
  • 在花括号或方法引用中简单使用 Kotlin 特性,例如数据类和 lambda 表达式
Lets-Plot
  • 数据探索和可视化
KMath
  • 数据清洗和处理
  • 数据探索和可视化
  • 模型构建
  • 用于在 Kotlin Multiplatform(JVM、JS、Native 和 Wasm)中处理数学抽象的模块化库
  • 用于代数结构、数学表达式、直方图和流操作的 API
  • 现有 Java 和 Kotlin 库(包括 ND4JApache Commons MathMultik)的可互换包装器
  • 受 Python NumPy 启发,但具有类型安全等其他附加特性
kravis
  • 数据探索和可视化

Java 库

由于 Kotlin 提供一流的互操作性,你可以在 Kotlin 代码中使用 Java 库执行数据任务。以下是一些此类库的示例:

用途特性
Tablesaw
  • 数据收集
  • 数据清洗和处理
  • 数据探索和可视化
  • 用于加载、清洗、转换、筛选和汇总数据的工具
  • Plot.ly 启发
CoreNLP
  • 数据清洗和处理
  • 自然语言处理工具包
  • 文本的语言学标注,例如情感和引用归属
  • 支持八种语言
Smile
  • 数据清洗和处理
  • 数据探索和可视化
  • 模型构建
Smile-NLP-kt
  • 数据清洗和处理
  • Smile 自然语言处理部分的 Scala 隐式函数的 Kotlin 重写
  • Kotlin 扩展函数和接口形式的操作
  • 句子分割、词干提取、词袋及其他任务
ND4J
  • 数据清洗和处理
  • 模型构建
  • 适用于 JVM 的矩阵数学库
  • 超过 500 种数学、线性代数和深度学习操作
Apache Commons Math
  • 数据清洗和处理
  • 模型构建
  • 适用于 Java 的数学和统计操作
  • 相关性、分布、线性代数、几何及其他操作
  • 机器学习模型
NM Dev
  • 数据清洗和处理
  • 模型构建
  • 数值算法的 Java 数学库
  • 面向对象的数值方法
  • 线性代数、优化、统计、微积分及更多操作
Apache OpenNLP
  • 数据清洗和处理
  • 模型构建
  • 基于机器学习的自然语言文本处理工具包
  • 分词、句子分割、词性标注及其他任务
  • 用于数据建模和模型验证的内置工具
Charts
  • 数据探索和可视化
  • 适用于科学图表的 JavaFX
  • 复杂图表,例如对数图、热力图和力导向图
DeepLearning4J
  • 模型构建
Timefold
  • 模型构建
  • 优化规划问题的求解器工具
  • 兼容面向对象编程和函数式编程