Current section

Files

Jump to
uci_data_loader lib uci_data_loader.ex
Raw

lib/uci_data_loader.ex

defmodule UCIDataLoader do
defstruct [:data, :target_all_name, :target_names, :length, :amount, :cluster_num, :each_amount]
def load_iris do
Iris.load
end
def load_wine_quality do
WineQuality.load
end
def sampling_with_replace(datasets, n) do
rands = 1..n |> Enum.map(
fn(_) ->
:rand.uniform(datasets.amount)-1
end)
target_all_name =
rands
|> Enum.map(&(datasets.target_all_name |> Enum.at(&1)))
target_names =
rands
|> Enum.map(&(datasets.target_all_name |> Enum.at(&1)))
|> Enum.uniq
%UCIDataLoader{
data: rands |> Enum.map(&(datasets.data |> Enum.at(&1))),
target_all_name: target_all_name,
target_names: target_names,
length: datasets.length,
amount: n,
cluster_num: target_names |> Enum.count,
each_amount: Util.get_each_amount(target_names,target_all_name),
}
end
end