рассчитывать независимые значения в разных столбцах в кадре данных в R - PullRequest
0 голосов
/ 28 октября 2019

У меня есть фрейм данных с несколькими разными столбцами, и я хочу получить частоту различных переменных, проверить, как частота данных изменяется в зависимости от параметра или двух, и сравнить изменения от известного или доступного ids котсутствует ids где у меня NA.

Объекты Id всегда известны, но есть случаи, когда отсутствует rq_ind, и это интересно.

В основном мне нужнополучить класс области Nieseln для доступных объектов / область Nielsen для всех (отсутствующие и не пропущенные объекты (то есть inq_onr_id==NA, но их object_id доступно)

    rq_id , rq_object_id , inq_onr_id,  inq_id,  Nielsen class, age_class,   revnue-class , employee_class                              
    157467  19750137    19750137    NA  3   3   4   2
    157467  19750137    19750137    NA  3   3   4   2
    423008  19750137    NA          NA  3   3   4   2   
    423008  19750137    NA          NA  3   3   4   2   
    157467  19750137    NA          NA  3   2   4   2   

    B1_fourth3month19short<-data.frame(rq_id,
                                     rq_object_id,
                                      inq_onr_id,inq_id,
                                      nielsen_area,Employeeclass)

Вся информация в принципе является фактором.

Я хочу выяснить, как меняется область fre(rq_object_id) по сравнению с Nieslen в случае, когда отсутствует onr-id по сравнению с тем, где доступен onr _id.

1 Ответ

0 голосов
/ 29 октября 2019

Вам необходимо использовать table:

out <- table(df[,c(2,3,5)],useNA = "ifany")

, где df - ваш начальный фрейм данных.

Вывод:

> out
, , Nielsen_class = 3

            inq_onr_id
rq_object_id 19750137 <NA>
    19750137        2    3

КомуЧтобы получить процент каждой строки, выполните следующие действия:

out.percent <- prop.table(table(df[,c(2,3,5)],useNA = "ifany"))*100

Выведите в процентах:

> out.percent
, , Nielsen_class = 3

            inq_onr_id
rq_object_id 19750137 <NA>
    19750137       40   60
...