blob: d1fd2313a5668321a031f151837ee8830b5b61d4 [file]
import org.jetbrains.kotlinx.dataframe.*
import org.jetbrains.kotlinx.dataframe.annotations.*
import org.jetbrains.kotlinx.dataframe.api.*
import org.jetbrains.kotlinx.dataframe.io.*
fun box(): String {
val typed = dataFrameOf("name", "age", "city", "weight")(
"Alice", 15, "London", 54,
"Bob", 45, "Dubai", 87,
"Charlie", 20, "Moscow", null,
"Charlie", 40, "Milan", null,
"Bob", 30, "Tokyo", 68,
"Alice", 20, null, 55,
"Charlie", 30, "Moscow", 90,
)
val df = typed
.groupBy { name }
.add("columnGroup") {
dataFrameOf("a" to columnOf(123)).first()
}
.add("nullableColumnGroup") {
if (index() % 2 == 0) dataFrameOf("a" to columnOf(123)).first() else null
}
.add("frameColumn") {
dataFrameOf("a" to columnOf(123))
}
.into("group")
.split { group }.intoColumns()
df.assert()
return "OK"
}