Anaconda é a plataforma de ciência de dados e aprendizado de máquina para as linguagens de programação Python e R. Ele foi projetado para tornar o processo de criação e distribuição de projetos simples, estável e reproduzível entre os sistemas e está disponível no Linux, Windows e OSX. A ANACONDA é uma plataforma baseada em Python que seleciona os principais pacotes de ciências de dados, incluindo Pandas, Scikit-Learn, Scipy, Numpy e Plataforma de aprendizado de máquina do Google, TensorFlow. Ele vem embalado com conda (uma ferramenta de instalação do tipo PIP), Anaconda Navigator para uma experiência de GUI e Spyder para um IDE.Este tutorial passará por alguns dos princípios básicos de Anaconda, Conde e Spyder para a linguagem de programação Python e apresentará os conceitos necessários para começar a criar seus próprios projetos.
Instalação
Existem muitos artigos excelentes neste site para instalar a Anaconda em diferentes sistemas de gerenciamento de pacote e nativos. Por esse motivo, fornecerei alguns links para este trabalho abaixo e pularei para cobrir a ferramenta em si.
Noções básicas de conda
CoNA é a ferramenta de gerenciamento e meio ambiente da Anaconda, que é o núcleo de Anaconda. É muito parecido com o PIP com a exceção de que ele foi projetado para funcionar com o gerenciamento de pacote Python, C e R. CONDA também gerencia ambientes virtuais de maneira semelhante à VirtualEnv, sobre a qual escrevi aqui.
Confirme a instalação
O primeiro passo é confirmar a instalação e a versão em seu sistema. Os comandos abaixo verificarão se a anaconda está instalada e imprimirá a versão para o terminal.
$ CONDA -Versão
Você deve ver resultados semelhantes aos abaixo. Atualmente tenho versão 4.4.7 instalado.
$ CONDA -Versão
CONDA 4.4.7
Versão atualizada
O CONDA pode ser atualizado usando o argumento de atualização do conda, como abaixo.
$ conda update conda
Este comando será atualizado para o CONDA para a versão mais atual.
Prossiga ([y]/n)? y
Download e extrair pacotes
CONDA 4.4.8: ####################################################d ########## | 100%
OpenSSL 1.0.2n: #################################################### ######## | 100%
Certifi 2018.1.18: ####################################################d ##### | 100%
Certificados pela CA 2017.08.26: ################################################d | 100%
Preparando transação: feito
Verificação da transação: feito
Execução da transação: feito
Ao executar o argumento da versão novamente, vemos que minha versão foi atualizada para 4.4.8, que é o mais recente lançamento da ferramenta.
$ CONDA -Versão
CONDA 4.4.8
Criando um novo ambiente
Para criar um novo ambiente virtual, você executa a série de comandos abaixo.
$ CONDA CREATE -N TUTORIALCONDA Python = 3 $ prosseguir ([y]/n)? y
Você pode ver os pacotes instalados em seu novo ambiente abaixo.
Download e extrair pacotes
Certifi 2018.1.18: ####################################################d ##### | 100%
Sqlite 3.22.0: ####################################################d ######### | 100%
roda 0.30.0: ####################################################d ######### | 100%
Tk 8.6.7: ####################################################d ############# | 100%
ReadLine 7.0: ####################################################d ######### | 100%
Ncurses 6.0: ####################################################d ########## | 100%
libcxxabi 4.0.1: #####################################################d ####### | 100%
Python 3.6.4: ####################################################d ######### | 100%
Libffi 3.2.1: #####################################################d ######### | 100%
SETUPTOLS 38.4.0: ####################################################d ##### | 100%
LIBEDIT 3.1: #####################################################d ########## | 100%
XZ 5.2.3. ############# | 100%
Zlib 1.2.11: ####################################################d ########## | 100%
PIP 9.0.1: #####################################################d ############ | 100%
libcxx 4.0.1: #####################################################d ######### | 100%
Preparando transação: feito
Verificação da transação: feito
Execução da transação: feito
#
# Para ativar este ambiente, use:
#> Fonte Active TutorialConda
#
# Para desativar um ambiente ativo, use:
#> fonte desativado
#
Ativação
Muito parecido com o VirtualEnv, você deve ativar seu ambiente recém -criado. O comando abaixo ativará seu ambiente no Linux.
Fonte Active TutorialConda Bradleys-Mini: ~ Bradleypatton $ Fonte Active TutorialConda
(Tutorialconda) Bradleys-mini: ~ Bradleypatton $
Instalando pacotes
O comando CONDA LIST Listará os pacotes atualmente instalados em seu projeto. Você pode adicionar pacotes adicionais e suas dependências com o comando de instalação.
$ CONDA LISTA # Pacotes em ambiente em/usuários/bradleypatton/anaconda/envs/tutorialconda:
#
# Nome Versão Build Channel
Certificados pela CA 2017.08.26 HA1E5D58_0
Certifi 2018.1.18 PY36_0
libcxx 4.0.1 H579Ed51_0
libcxxabi 4.0.1 Hebd6815_0
LIBEDIT 3.1 HB4E282D_0
Libffi 3.2.1 H475C297_4
Ncurses 6.0 HD04F020_2
OpenSSL 1.0.2n HDBC3D79_0
PIP 9.0.1 PY36H1555ced_4
Python 3.6.4 HC167B69_1
ReadLine 7.0 HC1231FA_4
SETUPTOLS 38.4.0 PY36_0
Sqlite 3.22.0 H3eFE00B_0
Tk 8.6.7 H35A86E2_3
roda 0.30.0 PY36H5EB2C71_1
XZ 5.2.3 H0278029_2
Zlib 1.2.11 HF3CBC9B_2
Para instalar os pandas no ambiente atual, você executaria o comando abaixo do shell.
$ conda install pandas
Ele baixará e instalará os pacotes e dependências relevantes.
Os pacotes a seguir serão baixados:
pacote | construir
---------------------------|-----------------
libgfortran-3.0.1 | H93005F0_2 495 KB
Pandas-0.22.0 | PY36H0A44026_0 10.0 mb
Numpy-1.14.0 | PY36H8A80B8C_1 3.9 MB
Python-Dateutil-2.6.1 | PY36H86D2ABB_1 238 KB
MKL-2018.0.1 | HFBD8650_4 155.1 mb
Pytz-2017.3 | PY36HF0BF824_0 210 KB
Six-1.11.0 | PY36H0E22D5E_1 21 KB
Intel-OpenMP-2018.0.0 | H8158457_8 493 KB
------------------------------------------------------------
Total: 170.3 MB
Os seguintes novos pacotes serão instalados:
Intel-OpenMP: 2018.0.0-H8158457_8
libgfortran: 3.0.1-H93005F0_2
MKL: 2018.0.1-HFBD8650_4
Numpy: 1.14.0-PY36H8A80B8C_1
Pandas: 0.22.0-PY36H0A44026_0
Python-Dateutil: 2.6.1-PY36H86D2ABB_1
Pytz: 2017.3-PY36HF0BF824_0
Seis: 1.11.0-PY36H0E22D5E_1
Ao executar o comando da lista novamente, vemos os novos pacotes instalando em nosso ambiente virtual.
$ list
# Pacotes em ambiente em/usuários/bradleypatton/anaconda/envs/tutorialconda:
#
# Nome Versão Build Channel
Certificados pela CA 2017.08.26 HA1E5D58_0
Certifi 2018.1.18 PY36_0
Intel-OpenMP 2018.0.0 H8158457_8
libcxx 4.0.1 H579Ed51_0
libcxxabi 4.0.1 Hebd6815_0
LIBEDIT 3.1 HB4E282D_0
Libffi 3.2.1 H475C297_4
libgfortran 3.0.1 H93005F0_2
MKL 2018.0.1 HFBD8650_4
Ncurses 6.0 HD04F020_2
Numpy 1.14.0 PY36H8A80B8C_1
OpenSSL 1.0.2n HDBC3D79_0
Pandas 0.22.0 PY36H0A44026_0
PIP 9.0.1 PY36H1555ced_4
Python 3.6.4 HC167B69_1
Python-Dateutil 2.6.1 PY36H86D2ABB_1
Pytz 2017.3 PY36HF0BF824_0
ReadLine 7.0 HC1231FA_4
SETUPTOLS 38.4.0 PY36_0
seis 1.11.0 PY36H0E22D5E_1
Sqlite 3.22.0 H3eFE00B_0
Tk 8.6.7 H35A86E2_3
roda 0.30.0 PY36H5EB2C71_1
XZ 5.2.3 H0278029_2
Zlib 1.2.11 HF3CBC9B_2
Para pacotes que não fazem parte do repositório da Anaconda, você pode utilizar os comandos típicos do PIP. Não vou cobrir isso aqui, pois a maioria dos usuários do Python estará familiarizada com os comandos.
ANACONDA NAVIGADOR
Anaconda inclui um aplicativo de navegador baseado na GUI que facilita a vida para o desenvolvimento. Inclui o notebook Spyder IDE e Jupyter como projetos pré -instalados. Isso permite que você inicie um projeto do seu ambiente de desktop da GUI rapidamente.
Para começar a trabalhar em nosso ambiente recém -criado a partir do navegador, devemos selecionar nosso ambiente sob a barra de ferramentas à esquerda.
Então precisamos instalar as ferramentas que gostaríamos de usar. Para mim, isso é o spyder ide. É aqui que eu faço a maior parte do meu trabalho de ciência de dados e para mim isso é um Python IDE eficiente e produtivo. Você simplesmente clica no botão de instalação no ladrilho de dock para spyder. Navigator fará o resto.
Depois de instalado, você pode abrir o IDE do mesmo documento. Isso lançará o Spyder do seu ambiente de desktop.
Spyder
Spyder é o IDE padrão para Anaconda e é poderoso para projetos de ciência padrão e de dados no Python. O Spyder IDE possui um notebook IPython integrado, uma janela de editor de código e janela do console.
Spyder também inclui recursos de depuração padrão e um explorador variável para ajudar quando algo não vai exatamente como planejado.
Como ilustração, incluí um pequeno aplicativo Sklearn que usa a regressão aleatória do Forrest para prever os preços futuros das ações. Eu também incluí parte da saída do notebook ipython para demonstrar a utilidade da ferramenta.
Eu tenho outros tutoriais que escrevi abaixo se você quiser continuar explorando a ciência de dados. A maioria deles está escrita com a ajuda de Anaconda e Spyder ABND deve funcionar perfeitamente no ambiente.
- Pandas-Data-quadro-tutorial
- PsycopG2-tutorial
- Kwant
importar pandas como PD
de pandas_datarader importar dados
importar numpy como np
importar talib como ta
de Sklearn.cross_validação importar trem_test_split
de Sklearn.Linear_model Importar linear -regressão
de Sklearn.métricas importantes mean_squared_error
de Sklearn.Ensemble Importar Randomforestregressor
de Sklearn.métricas importantes mean_squared_error
def get_data (símbolos, start_date, end_date, símbolo):
painel = dados.DataReader (símbolos, 'yahoo', start_date, end_date)
df = painel ['Close']
Imprimir (df.cabeça (5))
Imprimir (df.cauda (5))
Imprima df.loc ["2017-12-12"]
Imprima df.loc ["2017-12-12", símbolo]
Imprima df.loc [:, símbolo]
df.Fillna (1.0)
df ["rsi"] = ta.RSI (NP.Array (df.iloc [:, 0]))
df ["sma"] = ta.SMA (NP.Array (df.iloc [:, 0]))
df ["bbandsu"] = ta.BBands (NP.Array (df.iloc [:, 0])) [0]
df ["bbandsl"] = ta.BBands (NP.Array (df.iloc [:, 0])) [1]
df ["rsi"] = df ["rsi"].turno (-2)
df ["sma"] = df ["sma"].turno (-2)
df ["bbandsu"] = df ["bbandsu"].turno (-2)
df ["bbandsl"] = df ["bbandsl"].turno (-2)
df = df.Fillna (0)
Imprima df
trem = df.amostra (frac = 0.8, random_state = 1)
teste = df.loc [~ df.índice.isin (trem.índice)]
Imprimir (trem.forma)
Imprimir (teste.forma)
# Obtenha todas as colunas do DataFrame.
colunas = df.colunas.listar()
Colunas de impressão
# Armazene a variável que estaremos prevendo.
Target = Símbolo
# Inicialize a classe modelo.
Model = RandomForestregressor (n_estimators = 100, min_samples_leaf = 10, random_state = 1)
# Se encaixe no modelo aos dados de treinamento.
modelo.FIT (trem [colunas], trem [Target])
# Gere nossas previsões para o conjunto de testes.
previsões = modelo.prever (teste [colunas])
Imprimir "pred"
Imprimir previsões
#df2 = pd.DataFrame (Data = previsões [:])
#print df2
#df = pd.concat ([teste, df2], eixo = 1)
# Erro de computação entre nossas previsões de teste e os valores reais.
Imprima "Mean_squared_error:" + str (Mean_squared_error (previsões, teste [Target])))
retornar df
def normalize_data (df):
Retornar DF / DF.Iloc [0 ,:]
def plot_data (df):
ax = df.plot (title = title, fontsize = 2)
machado.set_xlabel ("data")
machado.set_ylabel ("preço")
trama.mostrar()
def tutorial_run ():
#Choose Symbols
símbolo = "egrx"
Símbolos = [Símbolo]
#Obter dados
df = get_data (símbolos, '2005-01-03', '2017-12-31', símbolo)
normalize_data (df)
plot_data (df)
Se __name__ == "__main__":
tutorial_run () Nome: EGRX, comprimento: 979, dtype: float64
Egrx rsi sma bbandsu bbandsl
Data
2017-12-29 53.419998 0.000000 0.000000 0.000000 0.000000
2017-12-28 54.740002 0.000000 0.000000 0.000000 0.000000
2017-12-27 54.160000 0.000000 0.000000 55.271265 54.289999
Conclusão
Anaconda é um ótimo ambiente para ciência de dados e aprendizado de máquina em Python. Ele vem com um repositório de pacotes com curadoria projetados para trabalhar juntos para uma plataforma de ciência de dados poderosa, estável e reprodutível. Isso permite que um desenvolvedor distribua seu conteúdo e garanta que ele produza os mesmos resultados entre as máquinas e sistemas operacionais. Ele vem com ferramentas embutidas para facilitar a vida como o navegador, o que permite criar facilmente projetos e alternar ambientes. É o meu objetivo para desenvolver algoritmos e criar projetos para análise financeira. Até acho que uso na maioria dos meus projetos Python porque estou familiarizado com o meio ambiente. Se você deseja começar em Python e Science de dados, a Anaconda é uma boa escolha.