Dataframe 0.14 Help

convert

Returns DataFrame with changed values in some columns. Allows changing column types.

convert { columnsSelector } .with { rowExpression } | .asFrame { frameExpression } | .perRowCol { rowColExpression } | to<Type>() | to { colExpression } rowExpression = DataRow.(OldValue) -> NewValue rowColExpression = (DataRow, DataColumn) -> NewValue colExpression = DataFrame.(DataColumn) -> DataColumn frameExpression: DataFrame.(DataFrame) -> DataFrame

See column selectors and row expressions

df.convert { age }.with { it.toDouble() } df.convert { colsAtAnyDepth().colsOf<String>() }.with { it.toCharArray().toList() }

ColumnGroup can be converted using DataFrame API, for example:

df.convert { name }.asFrame { it.add("fullName") { "$firstName $lastName" } }

convert supports automatic type conversions between the following types:

  • Int

  • String

  • Double

  • Long

  • Short

  • Float

  • BigDecimal

  • LocalDateTime

  • LocalDate

  • LocalTime

  • Duration

df.convert { age }.to<Double>() df.convert { colsOf<Number>() }.to<String>() df.convert { name.firstName and name.lastName }.to { it.length() } df.convert { weight }.toFloat()

Automatic conversion from String to enum classes is also supported:

enum class Direction { NORTH, SOUTH, WEST, EAST }
dataFrameOf("direction")("NORTH", "WEST") .convert("direction").to<Direction>()
Last modified: 27 September 2024