Marcin Bronicki

Marcin Bronicki kierownik, własna

Temat: Tworzenie kolumn na podstawie zmiennych jakościowych

Jak w R zrobić dynamicznie na podstawie zmiennych jakościowych kolumny tak by dla każdej rożnej wartości była oddzielna kolumna. O ile jak jest mało zmiennych np. kobieta mężczyzna nie jest to problem, o tyle w przypadku kolumny z kodami pocztowymi trudno oprogramować tysiące kolumn gdy jeszcze kody są zmienne. W kolumnie gdzie dana wartość występuje ma być jedynka, w pozostałych zera.
Miron Kołodziejczyk

Miron Kołodziejczyk Aktuariusz, Liberty
Direct

Temat: Tworzenie kolumn na podstawie zmiennych jakościowych

Przykład z helpa model.matrix


dd <- data.frame(a = gl(3,4), b = gl(4,1,12)) # balanced 2-way
model.matrix(~ a + b, dd)
Wojciech Sobala

Wojciech Sobala Redaktor
statystyczny,
biostatystyk,
Instytut Medycyny
Pr...

Temat: Tworzenie kolumn na podstawie zmiennych jakościowych

dd <- data.frame(a = gl(3,4))
dd_a <- model.matrix(~dd$a-1)# zmienna a musi być typu factor
colnames(dd_a) <- paste("a",levels(dd$a),sep="_")

lub pakiet dummies

dummy( dd$a )# podobno bardziej efektywne

Tylko po co coś takiego robić?
Marcin Bronicki

Marcin Bronicki kierownik, własna

Temat: Tworzenie kolumn na podstawie zmiennych jakościowych

Wojciech Sobala:

Tylko po co coś takiego robić?

Dzięki panowie, obie metody działają.
A po co to robić?
Do modelowania, taki Data Mining dla ubogich :)
Miron Kołodziejczyk

Miron Kołodziejczyk Aktuariusz, Liberty
Direct

Temat: Tworzenie kolumn na podstawie zmiennych jakościowych

Tylko po co coś takiego robić?

Można np. próbować używać potem algorytmów automatycznej selekcji zmiennych (abstrahując od tego czy ma to sens)
Wojciech Sobala

Wojciech Sobala Redaktor
statystyczny,
biostatystyk,
Instytut Medycyny
Pr...

Temat: Tworzenie kolumn na podstawie zmiennych jakościowych

Do pytania sprowokował mnie przykład z "kodami pocztowymi", bo w przypadku płci to ja wszysko rozumiem nawet jeżeli podobnych zmiennych jest wiele.
Marcin Bronicki

Marcin Bronicki kierownik, własna

Temat: Tworzenie kolumn na podstawie zmiennych jakościowych

Wojciech Sobala:
Do pytania sprowokował mnie przykład z "kodami pocztowymi", bo w przypadku płci to ja wszysko rozumiem nawet jeżeli podobnych zmiennych jest wiele.
Kody tak naprawdę najpierw zgeokoduję do powiatów, ale jak będę miał słownik.
Ale powiatów też będzie z 350.
Mam po prostu zmienne ilościowe i jakościowe, także takie jak kolor, skąd ma wiedzę o danym produkcie (internet, znajomi, reklama telewizyjna). Też to będę musiał zakodować zero jedynkowo.
Wojciech Sobala

Wojciech Sobala Redaktor
statystyczny,
biostatystyk,
Instytut Medycyny
Pr...

Temat: Tworzenie kolumn na podstawie zmiennych jakościowych

Jeżeli masz zamiar stosować własne algorytmy to jak najbardziej ma to sens, ale ja proponowałbym najpierw poszukać tu:
http://www.cran.r-project.org/
CRAN Task View: Machine Learning & Statistical Learning

Jeżeli korzystasz z gotowych algorytmów to przekodowanie do postaci 0-1 nie jest potrzebne, bo jest to robione automatycznie. Jedyną rzeczą jaką należy zrobić jest zakodowanie zmiennej jako factor.
Rafał Wiśniewski

Rafał Wiśniewski Dyrektor Działu
Analiz Rynkowych,
Polskapresse

Temat: Tworzenie kolumn na podstawie zmiennych jakościowych

http://cran.r-project.org/web/packages/dummies/dummies...

o to chodziło?

Następna dyskusja:

Indeksy na podstawie zmienn...




Wyślij zaproszenie do