gitextract_u5s1eutc/ ├── .github/ │ ├── release-drafter.yml │ └── workflows/ │ ├── ci.yml │ ├── clean.yml │ └── release-drafter.yml ├── .gitignore ├── .scalafmt.conf ├── LICENSE ├── README.md ├── build.sbt ├── cats/ │ └── src/ │ ├── main/ │ │ └── scala/ │ │ └── frameless/ │ │ └── cats/ │ │ ├── FramelessSyntax.scala │ │ ├── SparkDelayInstances.scala │ │ ├── SparkTask.scala │ │ ├── implicits.scala │ │ └── package.scala │ └── test/ │ ├── resources/ │ │ ├── log4j.properties │ │ └── log4j2.properties │ └── scala/ │ └── frameless/ │ └── cats/ │ ├── FramelessSyntaxTests.scala │ └── test.scala ├── core/ │ └── src/ │ └── main/ │ └── scala/ │ └── frameless/ │ ├── CatalystAverageable.scala │ ├── CatalystBitShift.scala │ ├── CatalystBitwise.scala │ ├── CatalystCast.scala │ ├── CatalystCollection.scala │ ├── CatalystDivisible.scala │ ├── CatalystIsin.scala │ ├── CatalystNaN.scala │ ├── CatalystNotNullable.scala │ ├── CatalystNumeric.scala │ ├── CatalystNumericWithJavaBigDecimal.scala │ ├── CatalystOrdered.scala │ ├── CatalystPivotable.scala │ ├── CatalystRound.scala │ ├── CatalystSummable.scala │ ├── CatalystVariance.scala │ ├── Injection.scala │ ├── SQLDate.scala │ └── SQLTimestamp.scala ├── dataset/ │ └── src/ │ ├── main/ │ │ ├── scala/ │ │ │ ├── frameless/ │ │ │ │ ├── FramelessSyntax.scala │ │ │ │ ├── InjectionEnum.scala │ │ │ │ ├── IsValueClass.scala │ │ │ │ ├── Job.scala │ │ │ │ ├── RecordEncoder.scala │ │ │ │ ├── SparkDelay.scala │ │ │ │ ├── TypedColumn.scala │ │ │ │ ├── TypedColumnMacroImpl.scala │ │ │ │ ├── TypedDataset.scala │ │ │ │ ├── TypedDatasetForwarded.scala │ │ │ │ ├── TypedEncoder.scala │ │ │ │ ├── TypedExpressionEncoder.scala │ │ │ │ ├── With.scala │ │ │ │ ├── functions/ │ │ │ │ │ ├── AggregateFunctions.scala │ │ │ │ │ ├── Lit.scala │ │ │ │ │ ├── NonAggregateFunctions.scala │ │ │ │ │ ├── Udf.scala │ │ │ │ │ ├── UnaryFunctions.scala │ │ │ │ │ └── package.scala │ │ │ │ ├── ops/ │ │ │ │ │ ├── AggregateTypes.scala │ │ │ │ │ ├── As.scala │ │ │ │ │ ├── ColumnTypes.scala │ │ │ │ │ ├── GroupByOps.scala │ │ │ │ │ ├── RelationalGroupsOps.scala │ │ │ │ │ ├── Repeat.scala │ │ │ │ │ └── SmartProject.scala │ │ │ │ └── syntax/ │ │ │ │ └── package.scala │ │ │ └── org/ │ │ │ └── apache/ │ │ │ └── spark/ │ │ │ └── sql/ │ │ │ ├── FramelessInternals.scala │ │ │ └── reflection/ │ │ │ └── package.scala │ │ ├── spark-3/ │ │ │ └── frameless/ │ │ │ └── MapGroups.scala │ │ └── spark-3.4+/ │ │ └── frameless/ │ │ └── MapGroups.scala │ └── test/ │ ├── resources/ │ │ ├── log4j.properties │ │ └── log4j2.properties │ ├── scala/ │ │ ├── frameless/ │ │ │ ├── AsTests.scala │ │ │ ├── BitwiseTests.scala │ │ │ ├── CastTests.scala │ │ │ ├── ColTests.scala │ │ │ ├── CollectTests.scala │ │ │ ├── ColumnTests.scala │ │ │ ├── ColumnViaLambdaTests.scala │ │ │ ├── CreateTests.scala │ │ │ ├── DropTest.scala │ │ │ ├── DropTupledTest.scala │ │ │ ├── EncoderTests.scala │ │ │ ├── ExplodeTests.scala │ │ │ ├── FilterTests.scala │ │ │ ├── FlattenTests.scala │ │ │ ├── GroupByTests.scala │ │ │ ├── InjectionTests.scala │ │ │ ├── IsValueClassTests.scala │ │ │ ├── JobTests.scala │ │ │ ├── JoinTests.scala │ │ │ ├── LitTests.scala │ │ │ ├── NumericTests.scala │ │ │ ├── OrderByTests.scala │ │ │ ├── RecordEncoderTests.scala │ │ │ ├── SchemaTests.scala │ │ │ ├── SelectTests.scala │ │ │ ├── SelfJoinTests.scala │ │ │ ├── TypedDatasetSuite.scala │ │ │ ├── UdtEncodedClass.scala │ │ │ ├── WithColumnTest.scala │ │ │ ├── WithColumnTupledTest.scala │ │ │ ├── XN.scala │ │ │ ├── forward/ │ │ │ │ ├── CheckpointTests.scala │ │ │ │ ├── ColumnsTests.scala │ │ │ │ ├── CountTests.scala │ │ │ │ ├── DistinctTests.scala │ │ │ │ ├── ExceptTests.scala │ │ │ │ ├── FirstTests.scala │ │ │ │ ├── ForeachTests.scala │ │ │ │ ├── HeadTests.scala │ │ │ │ ├── InputFilesTests.scala │ │ │ │ ├── IntersectTests.scala │ │ │ │ ├── IsLocalTests.scala │ │ │ │ ├── IsStreamingTests.scala │ │ │ │ ├── LimitTests.scala │ │ │ │ ├── QueryExecutionTests.scala │ │ │ │ ├── RandomSplitTests.scala │ │ │ │ ├── SQLContextTests.scala │ │ │ │ ├── SparkSessionTests.scala │ │ │ │ ├── StorageLevelTests.scala │ │ │ │ ├── TakeTests.scala │ │ │ │ ├── ToJSONTests.scala │ │ │ │ ├── ToLocalIteratorTests.scala │ │ │ │ ├── UnionTests.scala │ │ │ │ ├── WriteStreamTests.scala │ │ │ │ └── WriteTests.scala │ │ │ ├── functions/ │ │ │ │ ├── AggregateFunctionsTests.scala │ │ │ │ ├── DateTimeStringBehaviourUtils.scala │ │ │ │ ├── DoubleBehaviourUtils.scala │ │ │ │ ├── NonAggregateFunctionsTests.scala │ │ │ │ ├── UdfTests.scala │ │ │ │ └── UnaryFunctionsTest.scala │ │ │ ├── ops/ │ │ │ │ ├── ColumnTypesTest.scala │ │ │ │ ├── CubeTests.scala │ │ │ │ ├── PivotTest.scala │ │ │ │ ├── RepeatTest.scala │ │ │ │ ├── RollupTests.scala │ │ │ │ ├── SmartProjectTest.scala │ │ │ │ └── deserialized/ │ │ │ │ ├── FilterTests.scala │ │ │ │ ├── FlatMapTests.scala │ │ │ │ ├── MapPartitionsTests.scala │ │ │ │ ├── MapTests.scala │ │ │ │ └── ReduceTests.scala │ │ │ ├── package.scala │ │ │ ├── sql/ │ │ │ │ ├── package.scala │ │ │ │ └── rules/ │ │ │ │ └── SQLRulesSuite.scala │ │ │ └── syntax/ │ │ │ └── FramelessSyntaxTests.scala │ │ └── org/ │ │ └── apache/ │ │ └── hadoop/ │ │ └── fs/ │ │ └── local/ │ │ └── StreamingFS.scala │ ├── spark-3.2/ │ │ └── frameless/ │ │ └── sql/ │ │ └── rules/ │ │ └── FramelessLitPushDownTests.scala │ └── spark-3.3+/ │ └── frameless/ │ └── sql/ │ └── rules/ │ └── FramelessLitPushDownTests.scala ├── docs/ │ ├── Cats.md │ ├── FeatureOverview.md │ ├── Injection.md │ ├── Job.md │ ├── TypedDataFrame.md │ ├── TypedDatasetVsSparkDataset.md │ ├── TypedEncoder.md │ ├── TypedML.md │ ├── WorkingWithCsvParquetJson.md │ ├── directory.conf │ ├── iris.data │ └── iris.parquet ├── github.sbt ├── ml/ │ └── src/ │ ├── main/ │ │ └── scala/ │ │ ├── frameless/ │ │ │ └── ml/ │ │ │ ├── TypedEstimator.scala │ │ │ ├── TypedTransformer.scala │ │ │ ├── classification/ │ │ │ │ └── TypedRandomForestClassifier.scala │ │ │ ├── clustering/ │ │ │ │ ├── TypedBisectingKMeans.scala │ │ │ │ └── TypedKMeans.scala │ │ │ ├── feature/ │ │ │ │ ├── TypedIndexToString.scala │ │ │ │ ├── TypedStringIndexer.scala │ │ │ │ └── TypedVectorAssembler.scala │ │ │ ├── internals/ │ │ │ │ ├── LinearInputsChecker.scala │ │ │ │ ├── SelectorByValue.scala │ │ │ │ ├── TreesInputsChecker.scala │ │ │ │ ├── UnaryInputsChecker.scala │ │ │ │ └── VectorInputsChecker.scala │ │ │ ├── package.scala │ │ │ ├── params/ │ │ │ │ ├── kmeans/ │ │ │ │ │ └── KMeansInitMode.scala │ │ │ │ ├── linears/ │ │ │ │ │ ├── LossStrategy.scala │ │ │ │ │ └── Solver.scala │ │ │ │ └── trees/ │ │ │ │ └── FeatureSubsetStrategy.scala │ │ │ └── regression/ │ │ │ ├── TypedLinearRegression.scala │ │ │ └── TypedRandomForestRegressor.scala │ │ └── org/ │ │ └── apache/ │ │ └── spark/ │ │ └── ml/ │ │ └── FramelessInternals.scala │ └── test/ │ └── scala/ │ └── frameless/ │ └── ml/ │ ├── FramelessMlSuite.scala │ ├── Generators.scala │ ├── TypedEncoderInstancesTests.scala │ ├── classification/ │ │ ├── ClassificationIntegrationTests.scala │ │ └── TypedRandomForestClassifierTests.scala │ ├── clustering/ │ │ ├── BisectingKMeansTests.scala │ │ ├── ClusteringIntegrationTests.scala │ │ └── KMeansTests.scala │ ├── feature/ │ │ ├── TypedIndexToStringTests.scala │ │ ├── TypedStringIndexerTests.scala │ │ └── TypedVectorAssemblerTests.scala │ └── regression/ │ ├── RegressionIntegrationTests.scala │ ├── TypedLinearRegressionTests.scala │ └── TypedRandomForestRegressorTests.scala ├── project/ │ ├── Common.scala │ ├── build.properties │ └── plugins.sbt ├── refined/ │ └── src/ │ ├── main/ │ │ └── scala/ │ │ └── frameless/ │ │ └── refined/ │ │ ├── RefinedFieldEncoders.scala │ │ └── package.scala │ └── test/ │ └── scala/ │ └── frameless/ │ └── RefinedFieldEncoderTests.scala └── scripts/ ├── docs-build.sh ├── docs-publish.sh └── travis-publish.sh