Como classificar dados Frames em R
Uma maneira de classificar os dados em R é determinar a ordem em que elementos devem ser, se você fosse para classificar. Isso soa prolixo, mas como você vai ver, ter essa flexibilidade significa que você pode escrever instruções que são muito natural.
Menu
Como obter a ordem
Em primeiro lugar, determinar a ordem dos elementos para classificar state.info $ População em ordem crescente. Faça isso usando o ordem() função:
> order.pop lt; - fim (some.states $ População)> order.pop [1] 2 8 4 3 6 7 1 10 9 5
Isto significa para ordenar os elementos em ordem crescente, em primeiro lugar toma o segundo elemento, em seguida, o oitavo elemento, então o quarto elemento, e assim por diante. Tente:
> Some.states $ População [order.pop] [1] 365 579 2110 2212 2541 3100 3615 4931 8277 [10] 21198
Como classificar um quadro de dados em ordem crescente
É calculada a ordem em que os elementos de População deve estar em ordem para que possa ser classificados em ordem crescente, e você armazenou que resultam em order.pop. Agora usa order.pop para classificar a estrutura de dados some.states em ordem crescente da população:
> Some.states [order.pop,] Região População IncomeAlaska West365 6315DelawareSouth579 4809ArkansasSouth2110 3378 .... Georgia South4931 4091Florida South8277 4815CaliforniaWest 21198 5114
Como classificar em ordem decrescente
Assim como ordenar(), a ordem() função também leva um argumento chamado decrescente. Por exemplo, para classificar some.states a fim de população decrescente:
> Ordem (some.states $ População) [1] 2 8 4 3 6 7 1 10 9 5> ordem (some.states $ População, diminuindo = TRUE) [1] 5 9 10 1 7 6 3 4 8 2
Assim como antes, você pode classificar a estrutura de dados some.states a fim de diminuir a população. Experimente, mas desta vez não atribuir o fim de uma variável temporária:
> Some.states [ordem (some.states $ População, diminuindo = TRUE),] Região População IncomeCaliforniaWest 21198 5114Florida South8277 4815Georgia South4931 4091 .... ArkansasSouth2110 3378DelawareSouth579 4809Alaska West365 6315
Como classificar em mais de uma coluna
Você provavelmente pensa que a classificação é muito simples, e você está correto. A classificação em mais de uma coluna é quase tão fácil.
Você pode passar mais de um vetor como um argumento para o ordem() função. Se você fizer isso, o resultado será o equivalente à soma de uma chave de classificação secundária. Em outras palavras, a ordem será determinada pelo primeiro vector e quaisquer laços, então, de acordo com o tipo, segundo vector.
Em seguida, você começa a classificar some.states em mais de uma coluna de - neste caso, Região e População. Se isso parece confuso, não se preocupe - ele realmente não é. Tente você mesmo. Em primeiro lugar, calcular a fim de classificar some.states na ordem da região, bem na população:
> index lt; - com (some.states, ordem (Região, População))> some.states [índice], Região População IncomeConnecticut Northeast3100 5348DelawareSouth579 4809ArkansasSouth2110 3378Alabama South3615 3624Georgia South4931 4091Florida South8277 4815Alaska West365 6315Arizona West2212 4530Colorado West2541 4884CaliforniaWest 21198 5114