跳到主要内容

用于数据分析的 Kotlin 和 Java 库

从数据收集到模型构建,Kotlin 提供了强大的库,方便数据管道中的不同任务。

除了它自己的库之外,Kotlin 与 Java 100% 互操作。这种互操作性有助于利用整个经过验证的、性能卓越的 Java 库生态系统。有了这个优势,在 Kotlin 数据项目 中,您可以轻松使用 Kotlin 或 Java 库。

Kotlin 库

库 (Library)目的 (Purpose)特性 (Features)
Kotlin DataFrame
  • 数据收集
  • 数据清洗和处理
  • 用于创建、排序和清洗数据帧的操作,包括特征工程等
  • 结构化数据处理
  • 支持 CSV、JSON 和其他输入格式
  • 从 SQL 数据库读取数据
  • 连接不同的 API 以访问数据并提高类型安全性
  • Kandy
  • 数据探索和可视化
  • 功能强大、可读且类型安全的 DSL,用于绘制各种类型的图表
  • 用 Kotlin 编写的 JVM 开源库
  • 支持 Kotlin NotebookDataloreJupyter Notebook
  • Kotlin DataFrame 无缝集成
  • KotlinDL
  • 模型构建
  • 用 Kotlin 编写并受 Keras 启发的深度学习 API
  • 从头开始训练深度学习模型或导入现有的 Keras 和 ONNX 模型进行推理
  • 迁移学习,用于定制现有的预训练模型以适应您的任务
  • 支持 Android 平台
  • Multik
  • 数据清洗和处理
  • 模型构建
  • 多维数组上的数学运算(线性代数、统计、算术和其他计算)
  • 创建、复制、索引、切片和其他数组操作
  • Kotlin 风格的库,具有类型和维度安全以及可互换的计算引擎等优点,可以在 JVM 上或作为本机代码运行
  • Kotlin for Apache Spark
  • 数据收集
  • 数据清洗和处理
  • 数据探索和可视化
  • 模型构建
  • Apache Spark 和 Kotlin 之间的兼容层
  • Kotlin 风格代码中的 Apache Spark 数据转换操作
  • 在花括号或方法引用中简单使用 Kotlin 特性,例如数据类和 lambda 表达式
  • Lets-Plot
  • 数据探索和可视化
  • 用 Kotlin 编写的统计数据绘图
  • 支持 Kotlin NotebookDataloreJupyter with Kotlin Kernel
  • 兼容 JVM、JS 和 Python
  • Compose Multiplatform 应用程序中嵌入图表
  • KMath
  • 数据清洗和处理
  • 数据探索和可视化
  • 模型构建
  • 用于在 Kotlin Multiplatform (JVM, JS, Native, and Wasm) 中处理数学抽象的模块化库
  • 用于代数结构、数学表达式、直方图和流式操作的 API
  • 现有 Java 和 Kotlin 库(包括 ND4JApache Commons MathMultik)的可互换包装器
  • 受 Python 的 NumPy 启发,但具有其他附加功能,如类型安全
  • kravis
  • 数据探索和可视化
  • 表格数据的可视化
  • 受 R 的 ggplot 启发
  • 支持 Jupyter with Kotlin Kernel
  • Java 库

    由于 Kotlin 提供了与 Java 的一流互操作性,因此您可以在 Kotlin 代码中使用 Java 库来处理数据任务。 以下是一些此类库的示例:

    库 (Library)目的 (Purpose)特性 (Features)
    Tablesaw
  • 数据收集
  • 数据清洗和处理
  • 数据探索和可视化
  • 用于加载、清洗、转换、过滤和汇总数据的工具
  • Plot.ly 启发
  • CoreNLP
  • 数据清洗和处理
  • 自然语言处理工具包
  • 文本的语言注释,例如情感和引用归属
  • 支持八种语言
  • Smile
  • 数据清洗和处理
  • 数据探索和可视化
  • 模型构建
  • 现成的机器学习和自然语言处理算法
  • 线性代数、图、插值和可视化工具
  • 提供函数式 Kotlin APIScala APIClojure API
  • Smile-NLP-kt
  • 数据清洗和处理
  • Scala 隐式转换的 Kotlin 重写,用于 Smile 的自然语言处理部分
  • Kotlin 扩展函数和接口格式的操作
  • 断句、词干提取、词袋和其他任务
  • ND4J
  • 数据清洗和处理
  • 模型构建
  • JVM 的矩阵数学库
  • 超过 500 种数学、线性代数和深度学习运算
  • Apache Commons Math
  • 数据清洗和处理
  • 模型构建
  • Java 的数学和统计运算
  • 相关性、分布、线性代数、几何和其他运算
  • 机器学习模型
  • NM Dev
  • 数据清洗和处理
  • 模型构建
  • 数值算法的 Java 数学库
  • 面向对象的数值方法
  • 线性代数、优化、统计、微积分和更多运算
  • Apache OpenNLP
  • 数据清洗和处理
  • 模型构建
  • 基于机器学习的工具包,用于处理自然语言文本
  • 分词、句子分割、词性标注和其他任务
  • 用于数据建模和模型验证的内置工具
  • Charts
  • 数据探索和可视化
  • 用于科学图表的 JavaFX
  • 复杂的图表,例如对数、热图和力导向图
  • DeepLearning4J
  • 模型构建
  • Java 的深度学习库
  • 导入和重新训练模型(PytorchTensorflowKeras
  • 部署在 JVM 微服务环境、移动设备、IoT 和 Apache Spark
  • Timefold
  • 模型构建
  • 用于优化规划问题的求解器实用程序
  • 与面向对象和函数式编程兼容