Algorithm-DBSCAN
view release on metacpan or search on metacpan
t/01-clustering.t view on Meta::CPAN
shift(@points);
my $cluster_found = 0;
foreach my $cluster_id (keys %clusters) {
if ($clusters{$cluster_id}->{$points[0]}) {
$cluster_found++;
my $nb_ok = 0;
foreach my $p (@points) {
$nb_ok++ if ($clusters{$cluster_id}->{$p})
}
die "error: [$nb_ok] != [".scalar(keys %{$clusters{$cluster_id}})."]" unless ($nb_ok == scalar(keys %{$clusters{$cluster_id}}));
}
}
die "error: point [$points[0]] not found in any cluster" unless($cluster_found);
}
say "RESULT OK";
return 1;
}
my $dataset = Algorithm::DBSCAN::Dataset->new();
my @lines = split(/\n/, read_file('test_datasets/dbscan_test_dataset_1.txt'));
foreach my $line (@lines) {
$dataset->AddPoint(new Algorithm::DBSCAN::Point(split(/\s+/, $line)));
t/02-module-synopsis-code.t view on Meta::CPAN
shift(@points);
my $cluster_found = 0;
foreach my $cluster_id (keys %clusters) {
if ($clusters{$cluster_id}->{$points[0]}) {
$cluster_found++;
my $nb_ok = 0;
foreach my $p (@points) {
$nb_ok++ if ($clusters{$cluster_id}->{$p})
}
die "error: [$nb_ok] != [".scalar(keys %{$clusters{$cluster_id}})."]" unless ($nb_ok == scalar(keys %{$clusters{$cluster_id}}));
}
}
die "error: point [$points[0]] not found in any cluster" unless($cluster_found);
}
say "RESULT OK";
return 1;
}
my $points_data_file =
'point_1 56.514307478581514 37.146118456702034
point_2 34.02049221667614 46.024651786417536
point_3 23.473087508078684 60.62328221968349
t/03-region-index.t view on Meta::CPAN
shift(@points);
my $cluster_found = 0;
foreach my $cluster_id (keys %clusters) {
if ($clusters{$cluster_id}->{$points[0]}) {
$cluster_found++;
my $nb_ok = 0;
foreach my $p (@points) {
$nb_ok++ if ($clusters{$cluster_id}->{$p})
}
die "error: [$nb_ok] != [".scalar(keys %{$clusters{$cluster_id}})."]" unless ($nb_ok == scalar(keys %{$clusters{$cluster_id}}));
}
}
die "error: point [$points[0]] not found in any cluster" unless($cluster_found);
}
say "RESULT OK";
return 1;
}
my $dataset = Algorithm::DBSCAN::Dataset->new();
my @lines = split(/\n/, read_file('test_datasets/dbscan_test_dataset_2.txt'));
foreach my $line (@lines) {
$dataset->AddPoint(new Algorithm::DBSCAN::Point(split(/\s+/, $line)));
( run in 0.601 second using v1.01-cache-2.11-cpan-65fba6d93b7 )