Homework 2 - Clustering Dataset

This is a clustering dataset for practicing K-Means and k-NN algorithms.


In [1]:
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
from sklearn.model_selection import train_test_split

In [2]:
# Basic IO
filename = 'clustering/dataset.csv'
dataset  = pd.read_csv(filename)

# Randomize Dataset
dataset = dataset.sample(frac=1,random_state=32).reset_index()
dataset.head()


Out[2]:
index x1 x2 y
0 1123 24.8697 14.6393 12
1 2554 23.3448 16.4908 26
2 2362 26.6545 22.6042 24
3 687 21.8222 27.1835 7
4 18 25.8840 6.3294 1

In [3]:
dataset.drop(['index'], axis=1, inplace=True)
dataset.head()


Out[3]:
x1 x2 y
0 24.8697 14.6393 12
1 23.3448 16.4908 26
2 26.6545 22.6042 24
3 21.8222 27.1835 7
4 25.8840 6.3294 1

In [4]:
# Split Into Training & Testing Sets
train, test  = train_test_split(dataset,test_size=0.30)
train, valid = train_test_split(train,test_size=0.20)

# Write to Text Data
train.to_csv('clustering/synth_train.csv',index=False)
valid.to_csv('clustering/synth_valid.csv',index=False)
test.to_csv('clustering/synth_test.csv',index=False)

In [5]:
print 'Number of Instances Per Set'
print 'Training Set:   %d'%(len(train))
print 'Validation Set: %d'%(len(valid))
print 'Testing Set:    %d'%(len(test))


Number of Instances Per Set
Training Set:   1736
Validation Set: 434
Testing Set:    930

In [ ]: