Szukam biblioteki Java, która możeprzekształcić dane wejściowe w matrycę modelu za pomocą formuły. Formuła nie jest prostym równaniem arytmetycznym, raczej opisuje interakcje między zmiennymi, mapuje zmienne kategorialne na odpowiednie zakresy liczbowe i generuje transformacje na wektorze / macierzy wejściowej.
Na przykład R ma następujące cechy model.matrix
funkcja, która pozwala przekształcać dane wejściowe poprzez opisywanie interakcji między zmiennymi na wysokim poziomie formula
.
Prosty przykład w R.
Dane wejściowe:
electric_usage,temperature,time_of_day
30,85,morning
35,80,evening
Formuła:
electric_usage ~ temperature * time_of_day
Który jest skrótem dla formuły:
electric_usage ~ temperature + time_of_day + (temperature : time_of_day)
Na przykład w R:
> model.matrix(
electric_usage ~ temperature * time_of_day,
data.frame(
electric_usage=c(30,35),
temperature=c(85,80),
time_of_day=c("morning", "evening")
)
)
(Intercept) temperature time_of_daymorning temperature:time_of_daymorning
1 85 1 85
1 80 0 0
Zobacz dokumentację R: http://stat.ethz.ch/R-manual/R-patched/library/stats/html/model.matrix.html
Odpowiedzi:
0 dla odpowiedzi № 1Jeśli szukasz wersji Java, która wygląda jak Matlab, więc możesz ją po prostu skopiować i wkleić, jest mało prawdopodobne ... Wątpię, czy istnieją jakieś pakiety, które przyjmą formułę, jak wspomniałeś.
Niemniej jednak spójrz na http://code.google.com/p/efficient-java-matrix-library/. Na pierwszy rzut oka operacje macierzowe wydają się niezwykle proste i można je zaprogramować za pomocą tej biblioteki.
Niemniej jednak będziesz musiał utworzyć swoją matrycę za pomocą kodu, aby był odpowiednio sformatowany. Widzieć http://code.google.com/p/efficient-java-matrix-library/wiki/MatrixInputOutput aby pomóc w tworzeniu lub wizualizacji i ogólnej idei. Powinieneś przeczytać tam wiki.