Ferramentas de Utilizador

Ferramentas de Site


inf05504:dicas

Diferenças

Esta página mostra as diferenças entre as duas revisões da página.

Ligação para esta vista de comparação

Ambos os lados da revisão anterior Revisão anterior
Próxima revisão
Revisão anterior
inf05504:dicas [2017/04/05 15:46]
marcus [Regressão linear com GNU R]
inf05504:dicas [2025/03/18 11:06] (Actual)
Linha 1: Linha 1:
-==== Plotar dados com Gnuplot ​====+===== Regressão e plots =====
  
-Gerar um arquivo dados.txt:+==== Regressão linear com GNU R ====
  
-<​code>​ +[[http://​nbviewer.jupyter.org/url/www.inf.ufrgs.br/~mrpritt/​aa/​Regressão linear com GNU R.ipynb]]
-# x f(x) +
-1 0.01 +
-2 0.05 +
-4 0.10 +
-8 0.15 +
-16 0.20 +
-32 0.22 +
-64 0.32 +
-</code>+
  
-Plotar: chamar "​gnuplot"​ na linha de comando e depois usar os seguintes comandos+==== Plotar ​dados com Gnuplot ====
  
-  * Plot simples<​code>​ plot "​dados.txt"​ w linesp</code> +[[http://nbviewer.jupyter.org/url/www.inf.ufrgs.br/​~mrpritt/​aa/gnuplot.ipynb]]
-  * Plot f(x)/log(x): <​code>​plot "dados.txt" w linesp using 1:($2/log($1))<​/code> +
- +
-Eixos: +
-  * Eixo x: <​code>​ set xlabel "​Número de arestas"​ </​code>​ +
-  * Eixo y: <​code>​ set ylabel "Tempo (em ms)" </​code>​ +
- +
-Saida: Para gravar um PDF (para outros formatos usar "help term"​) +
-<​code>​ +
-  set term pdf +
-  set output "dados.pdf" +
-  plot "dados.txt" w linesp +
-</code> +
-   +
- +
-(Dicas avançadas para gnuplot: [[:​tufte|aqui]].) +
- +
-==== Regressão linear com GNU R ==== +
- +
-Gerar um arqivo de dados: +
-<​code>​ +
- ​n ​ t +
-   ​2 ​     0.77 +
-   ​4 ​     0.87 +
-   ​8 ​     1.19 +
-  16      2.36 +
-  32      7.57 +
-  64     ​27.91 +
- ​128 ​    ​92.52 +
- ​256 ​   336.13 +
- ​512 ​  ​1434.72 +
-1024   ​6024.10 +
-2048  24390.20 +
-4096 100000.00 +
-</​code>​ +
- +
-Em GNU R (para uma hipótese polinomial):​ +
-<​code>​ +
-d=read.table("​r.dat",​header=T) +
-lm(log10(d$t)~d$n) +
-</​code>​+
  
-==== Medir tempo ====+===== Medir tempo =====
  
-=== Em C++ 11 ===+==== Em C++ ====
 <code c++> <code c++>
 #include <​chrono>​ #include <​chrono>​
Linha 71: Linha 22:
 cout << chrono::​duration_cast<​chrono::​milliseconds>​(chrono::​system_clock::​now()-t).count() << endl; cout << chrono::​duration_cast<​chrono::​milliseconds>​(chrono::​system_clock::​now()-t).count() << endl;
 </​code>​ </​code>​
-(No g++: opção "​-std=c++0x" para C++ 11.)+(No gcc/clang: opção "​-std=c++20" para C++ 20.)
  
-=== Em C ===+==== Em C ====
 [[http://​stackoverflow.com/​questions/​361363/​how-to-measure-time-in-milliseconds-using-ansi-c]] [[http://​stackoverflow.com/​questions/​361363/​how-to-measure-time-in-milliseconds-using-ansi-c]]
  
Linha 83: Linha 34:
   * Externamente:​ [[http://​stackoverflow.com/​questions/​131303/​how-to-measure-actual-memory-usage-of-an-application-or-process]]   * Externamente:​ [[http://​stackoverflow.com/​questions/​131303/​how-to-measure-actual-memory-usage-of-an-application-or-process]]
  
-==== Relatório ====+===== Relatório ​=====
  
   * [[Relatório|Regras gerais para relatórios]]   * [[Relatório|Regras gerais para relatórios]]
inf05504/dicas.1491417989.txt.gz · Esta página foi modificada pela última vez em: 2017/04/05 15:46 por marcus