Psst.. new poll here.
Psst.. new forums here.
Microsoft is blocking us again (TY IP Reputation!) so just use oauth login instead. :)
Paste
Pasted as Scala by 2222 ( 7 years ago )
import scala.util.Random
import scala.math.BigDecimal
case class MakeModel(make: String, model: String)
case class T1(registration: String, make: String, model: String, engine_size: BigDecimal)
case class T2(make: String, model: String, engine_size: BigDecimal, sale_price: Double)
val makeModelSet: Seq[MakeModel] = Seq(
MakeModel("FORD", "FIESTA")
, MakeModel("NISSAN", "QASHQAI")
, MakeModel("HYUNDAI", "I20")
, MakeModel("SUZUKI", "SWIFT")
, MakeModel("MERCEDED_BENZ", "E CLASS")
, MakeModel("VAUCHALL", "CORSA")
, MakeModel("FIAT", "500")
, MakeModel("SKODA", "OCTAVIA")
, MakeModel("KIA", "RIO")
)
def randomMakeModel(): MakeModel = {
val makeModelIndex = if (Random.nextBoolean()) 0 else Random.nextInt(makeModelSet.size)
makeModelSet(makeModelIndex)
}
def randomEngineSize() = BigDecimal(s"1.${Random.nextInt(9)}")
def randomRegistration(): String = s"${Random.alphanumeric.take(7).mkString("")}"
def randomPrice() = 500 + Random.nextInt(5000)
def randomT1(): T1 = {
val makeModel = randomMakeModel()
T1(randomRegistration(), makeModel.make, makeModel.model, randomEngineSize())
}
def randomT2(): T2 = {
val makeModel = randomMakeModel()
T2(makeModel.make, makeModel.model, randomEngineSize(), randomPrice())
}
val t1 = Seq.fill(10000)(randomT1()).toDS()
val t2 = Seq.fill(100000)(randomT2()).toDS()
Revise this Paste