I have a training set with 250,000 instances, which is too large for Weka classifiers to handle (although the data loads into the Weka UI just fine, any attempt to run a non-trivial classifier results in an out-of-memory, even with the machine's entire 8GB RAM dedicated to JVM heap).

Because this involves geographical data, it should perform quite well if I cluster on latitude/longitude and train separate classifiers on each cluster.

Is there a way to do this easily on the Weka command-line or KnowledgeFlow, without having to mess with the ARFF file? (I prefer to keep a single large ARFF file so different split strategies can be evaluated within Weka)

I looked into Bagging and Cross-Fold Validation, but I don't think they are a fit for my problem, as I don't want the data split up at random, but kept together based on similarity of location.