Como aplicar funções em linhas e colunas em r

Video: Aula 1.4- Inserindo e excluindo linhas, colunas e células numa planilha de dados - Curso Excel 2010

Em R, você pode usar o Aplique() função a aplicar uma função ao longo do cada linha ou coluna de uma matriz ou dados de quadro. Isto apresenta algumas oportunidades muito útil.

Contagem em R utilizando o Aplique função

Imagine que você contou os pássaros em seu quintal em três dias diferentes e armazenadas as contagens em uma matriz como este:

gt; contagem lt; - matriz (c (3,2,4,6,5,1,8,6,1), ncol = 3) gt; COLNAMES (contagens) lt; - c ( `pardal`, `pomba`, `corvo`) gt; countssparrow pomba corvo [1], 368 [2], 256 [3,] 411

Cada coluna representa uma espécie diferente, e cada linha representa um dia diferente. Agora você quer saber o número máximo por espécie em um determinado dia. Você poderia construir um para loop para fazê-lo, mas usando Aplique(), você fizer isso em uma única linha de código:

gt; Aplicar (contagens, 2, max) sparrowdovecrow4 6 8

o Aplique() função retorna um vector com o máximo para cada coluna e convenientemente utiliza os nomes de coluna como nomes para este vector também. Se R não encontrar nomes para a dimensão sobre a qual Aplique() é executado, ele retorna um objeto não identificado em seu lugar.

Vamos dar uma olhada em como isso Aplique() função funciona. Nas linhas de código anterior, você usou três argumentos:

  • O objectivo no qual a função tem que ser aplicada: Neste caso, é a matriz contagem.

  • A dimensão ou índice sobre a qual a função tem que ser aplicada: O número 1 significa linha a linha, e o número 2 significa direcção de coluna. Aqui, nós aplicamos a função ao longo das colunas. No caso de matrizes mais dimensões, este índice pode ser maior do que 2.



  • O nome da função que tem de ser aplicado: Você pode usar aspas em torno do nome da função, mas você não tem que. Aqui, nós aplicamos a função max. Note-se que não há parênteses necessários após o nome da função.

Video: Curso de Excel Função Transpor Linha para Coluna Fórmula matricial Referência Pesquisa Procura

o Aplique() função divide-se a matriz em linhas. Lembre-se que se você selecionar uma única linha ou coluna, R, por padrão, simplificar isso para um vetor. o Aplique() função, então usa esses vetores, um por um como um argumento para a função especificada. Assim, a função aplicada precisa ser capaz de lidar com vetores.

Adicionar argumentos extras para o Aplique função

Vamos voltar ao nosso exemplo da seção anterior: Imagine que você não olhar para as pombas no segundo dia. Isto significa que, para esse dia, você não tem quaisquer dados, então você tem que definir esse valor para N / D como isso:

gt; contagens de [2, 2] lt; - NA

Se você aplicar o max função nas colunas desta matriz, você recebe o seguinte resultado:

Video: Curso de EXCEL Ocultar e Reexibir Colunas na planilha

gt; Aplicar (contagens, 2, max) NA 8 sparrowdovecrow4

Isso não é o que você quer. A fim de lidar com os valores em falta, você precisa passar o argumento na.rm ao max na função Aplique() chamar (ver Capítulo 4). Felizmente, isso é facilmente feito em R. Você apenas tem que adicionar todos os argumentos extra para a função como argumentos extras do Aplique() chamar, como este:

gt; aplicar (contagens, 2, max, na.rm = TRUE) sparrowdovecrow4 6 8

Você pode passar quaisquer argumentos que você quer para a função na Aplique() chamar apenas adicionando-os entre os parênteses após os três primeiros argumentos.


Publicações relacionadas