Kotlin / Kotlin/dataframe

Add KDoc for `Implode`

Open
#1,385 0 comments 0 reactions 1 assignee View on GitHub

@AndreiKingsley is already working on this.

Since Aug 15, 2025.

KDocs
Dominant language
Kotlin
Stars
1.1k
Forks
83
Avg merge
4d 12h
Merged PRs (30d)
30

Description

Add KDoc for implode

Add KDocs for public non-deprecated implode overloads in:
core/src/main/kotlin/org/jetbrains/kotlinx/dataframe/api/implode.kt

Issue: https://github.com/Kotlin/dataframe/issues/1385
Website page: https://kotlin.github.io/dataframe/implode.html
Docs source: docs/StardustDocs/topics/implode.md

The KDoc should be aligned with the existing website page: implode returns a DataFrame where values in selected columns are merged into lists grouped by the remaining columns.

Cover overloads:

  • DataFrame<T>.implode(dropNA: Boolean = false): DataRow<T>
  • DataFrame<T>.implode(dropNA: Boolean = false, columns: ColumnsSelector<T, C>): DataFrame<T>
  • DataFrame<T>.implode(vararg columns: String, dropNA: Boolean = false): DataFrame<T>

Do not spend effort on deprecated access API overloads except keeping them consistent if needed.

Mention key behavior:

  • selected columns are imploded, other columns are used as grouping keys;
  • dropNA = true removes NA values from merged lists;
  • value columns change type from T to List<T>;
  • DataRow / ColumnGroup values are converted into dataframe/frame-column representation, as described on the website;
  • implode is the reverse operation of explode.

Add a documentation URL snippet for implode to DocumentationUrls if missing, similar to Explode.

Use explode.kt KDocs as the closest style/reference.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.