Comandos do Emacs para calcular soma, média, etc. da região

3

Suponha que eu destaque uma região de texto em um buffer. A região contém números separados por espaço em branco. Por exemplo,

1 19 23 28 41

Existe algum pacote com comandos interativos prontos que analisam os números dessa região e fazem cálculos comuns como soma e média, semelhante ao que os programas de planilha eletrônica exibem em sua barra de status? Algo como:

  • M-x sum-region = > 112 mostrado no minibuffer
  • M-x average-region = > 22.4 mostrado no minibuffer

ou um comando combinado para fazer cálculos diferentes de uma só vez, ou um display de modelo.

Suponho que org-mode tenha funções de planilha como essa, mas elas podem ser usadas facilmente se você ainda não estiver trabalhando com uma planilha organizacional? O calc tem funções que operam na região?

    
por Lassi 15.05.2016 / 18:54

1 resposta

10

Encontrou uma maneira bem fácil usando calc :

  1. Realce os números no buffer de origem
  2. M-x calc-grab-region (ou C-x * g )
  3. M-x calc-vector-sum , M-x calc-vector-mean , M-x calc-vector-sdev , etc.

C-x * é uma seqüência de prefixo que invoca o Calc de várias maneiras; a letra que segue determina qual (por exemplo, g invoca calc-grab-region , r invoca calc-grab-rectangle ).

Funções estatísticas também podem ser invocadas por seqüências-chave. Por exemplo:

  • u + : soma ( calc-vector-sum )
  • u C : covariância ( calc-vector-covariance )
  • u M : média ( calc-vector-mean )
  • u S : desvio padrão ( calc-vector-sdev )
  • v R + : soma ( (calc-reduce '(2 calcFunc-add "+")) )
  • v R * : produto ( (calc-reduce '(2 calcFunc-mul "*")) )

Essas e outras funções são abordadas no Manual do Calc , especialmente na seção < href="https://www.gnu.org/software/emacs/manual/html_node/calc/Matrix-Functions.html#Matrix-Functions"> Funções de vetor / matriz .

    
por 15.05.2016 / 19:03

Tags