@Ryan Hagerโ , yes it is possible using AUTO GENERATED COLUMNS since delta lake 1.2
For example, you can automatically generate a date column (for partitioning the table by date) from the timestamp column; any writes into the table need only specify the data for the timestamp column.
(DeltaTable.create(spark)
.tableName("default.people10m")
.addColumn("id", "INT")
.addColumn("birthDate", "TIMESTAMP")
.addColumn("dateOfBirth", DateType(), generatedAlwaysAs="CAST(birthDate AS DATE)")
.partitionedBy("dateOfBirth")
.execute())