在R

时间:2015-12-02 20:50:15

标签: r data-munging

在数据调整和使用传播后,我到达下表: Complaint types and Boroughs

我想确定每个区域的前4个问题。排序没有帮助,因为有4个自治市镇。有关如何获得的任何想法?

1 个答案:

答案 0 :(得分:0)

您可以使用order(column, decreasing=TRUE)[1:4]对投诉类型列进行分组。它将返回向量中最大的四个值。然后很容易将其转换为所需的任何形式;这里的数据框是有意义的:

lst <- lapply(df[-1], function(col) df[,'Complaint.Type'][order(col, decreasing=T)[1:4]])
as.data.frame(lst)
#     BRONX BROOKLYN MANHATTAN   QUEENS
#1 Facility Facility     Adopt Facility
#2    Abuse    Abuse  Advocate    Adopt
#3     Park      Air      Park     Park
#4 Advocate    Adopt     Abuse Advocate

数据

df <- data.frame(Complaint.Type=c('Adopt', 'Advocate', 'Air', 'Abuse', 'Facility','Park'),
                 BRONX=c(0,5, 1, 33, 81, 7),
                 BROOKLYN=c(2,0,100,148,177, 1),
                 MANHATTAN=c(129,49,2,9,1,15),
                 QUEENS=c(50,3,0,3,2469,6))