anchor.diff:  squares (WCSS for short).
   
   .Computing the WCSS
  ----
  +----
   val wcss = kmeansModel.computeCost(formattedUserActions)
   println(s"Within-cluster sum of squares for 5 clusters = $wcss")
  ----
  +----
   
   === Affecting clusters to our data points
   
  
positive.code: 
  .Displaying the different event types
  [source,scala]
  ---
  events
    .select("type")         // <1>
    .distinct()             // <2>
    .show(truncate = false) // <3>
  ---
  <1> We project on the _"type"_ field since it's the only one we're interested
  in.
  <2> We want to know the distinct event types.
  <3> We want to show those distinct event types without Spark truncating them.
  
negative.code:   .option("header", "true") // <4>
    .mode(SaveMode.Overwrite) // <5>
    .save(ouputPath)          // <6>
  ----
  <1> We get rid of the _username_ column since it doesn't bring any value
  anymore.
  <2> We want to write (as opposed to read) our dataset to disk.
  