Anaconda er datavitenskap og maskinlæringsplattform for Python og R -programmeringsspråk. Den er designet for å gjøre prosessen med å lage og distribuere prosjekter enkle, stabile og reproduserbare på tvers av systemer og er tilgjengelig på Linux, Windows og OSX. Anaconda er en Python-basert plattform som kuraterer store datavitenskapelige pakker inkludert pandaer, scikit-learning, scipy, numpy og Googles maskinlæringsplattform, Tensorflow. Den leveres pakket med konda (et pip som installasjonsverktøy), Anaconda Navigator for en GUI -opplevelse, og Spyder for en IDE.Denne opplæringen vil gå gjennom noen av det grunnleggende om Anaconda, Conda og Spyder for Python -programmeringsspråket og introdusere deg for konseptene som trengs for å begynne å lage dine egne prosjekter.
Installasjon
Det er mange gode artikler på dette nettstedet for å installere Anaconda på forskjellige Distro og Native Package Management Systems. Av den grunn vil jeg gi noen lenker til dette arbeidet nedenfor og hopper til å dekke selve verktøyet.
Grunnleggende om konda
Conda er Anaconda Package Management and Environment Tool som er kjernen i Anaconda. Det er omtrent som Pip med unntak at den er designet for å jobbe med Python, C og R -pakkestyring. Conda administrerer også virtuelle miljøer på en måte som ligner på Virtualenv, som jeg har skrevet om her.
Bekreft installasjonen
Det første trinnet er å bekrefte installasjon og versjon på systemet ditt. Kommandoene nedenfor vil sjekke at Anaconda er installert, og skriver ut versjonen til terminalen.
$ Conda -Versjon
Du bør se lignende resultater som nedenfor. Jeg har for øyeblikket versjon 4.4.7 installert.
$ Conda -Versjon
Conda 4.4.7
Oppdateringsversjon
Conda kan oppdateres ved å bruke Condas oppdateringsargument, som nedenfor.
$ conda update conda
Denne kommandoen vil oppdatere til Conda til den nyeste utgivelsen.
Fortsett ([y]/n)? y
Last ned og trekker ut pakker
Conda 4.4.8: ## sine ########## | 100%
OpenSSL 1.0.2n: ###################################################################################################################################################################################################################################################? Men ######## | 100%
Certifi 2018.1.18: ## sine ##### | 100%
CA-Certificates 2017.08.26: ######################################## | 100%
Utarbeide transaksjon: Ferdig
Verifisering av transaksjon: Ferdig
Utførelse av transaksjon: Ferdig
Ved å kjøre versjonsargumentet igjen, ser vi at versjonen min ble oppdatert til 4.4.8, som er den nyeste utgivelsen av verktøyet.
$ Conda -Versjon
Conda 4.4.8
Skape et nytt miljø
For å skape et nytt virtuelt miljø, kjører du serien med kommandoer nedenfor.
$ conda create -n tutorialConda python = 3 $ fortsett ([y]/n)? y
Du kan se pakkene som er installert i ditt nye miljø nedenfor.
Last ned og trekker ut pakker
Certifi 2018.1.18: ## sine ##### | 100%
SQLite 3.22.0: ## sine ######## | 100%
hjul 0.30.0: ## sine ######### | 100%
Tk 8.6.7: ## sine ############# | 100%
Readline 7.0: ## sine ######### | 100%
Ncurses 6.0: ## sine ########## | 100%
libcxxabi 4.0.1: ################################################ ####### | 100%
Python 3.6.4: ## sine ######### | 100%
Libffi 3.2.1: ################################################ ######### | 100%
Setuptools 38.4.0: ## sine ##### | 100%
LIBEDIT 3.1: ################################################ ########## | 100%
XZ 5.2.3: ## sine ############# | 100%
Zlib 1.2.11: ## sine ########## | 100%
Pip 9.0.1: ################################################ ############ | 100%
libcxx 4.0.1: ################################################ ######### | 100%
Utarbeide transaksjon: Ferdig
Verifisering av transaksjon: Ferdig
Utførelse av transaksjon: Ferdig
#
# For å aktivere dette miljøet, bruk:
#> Kildeaktiver TutorialConda
#
# For å deaktivere et aktivt miljø, bruk:
#> Kilde deaktiverer
#
Aktivering
Mye som virtualenv, må du aktivere det nyopprettede miljøet ditt. Kommandoen nedenfor vil aktivere miljøet ditt på Linux.
Kilde Aktiver TutorialConda Bradleys-Mini: ~ Bradleypatton $ Kilde Aktiver TutorialConda
(TutorialConda) Bradleys-Mini: ~ Bradleypatton $
Installere pakker
Conda List -kommandoen vil liste opp pakkene som for øyeblikket er installert i prosjektet ditt. Du kan legge til flere pakker og deres avhengigheter med installasjonskommandoen.
$ conda liste # pakker i miljøet på/brukere/bradleypatton/anaconda/envs/tutorialConda:
#
# Navnversjon Bygg kanal
CA-Certificates 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
Setuptools 38.4.0 PY36_0
SQLite 3.22.0 H3EFE00B_0
Tk 8.6.7 H35A86E2_3
hjul 0.30.0 PY36H5EB2C71_1
XZ 5.2.3 H0278029_2
Zlib 1.2.11 HF3CBC9B_2
For å installere pandaer i det nåværende miljøet vil du utføre Shell -kommandoen nedenfor.
$ conda installer pandaer
Den vil laste ned og installere de aktuelle pakker og avhengigheter.
Følgende pakker vil bli lastet ned:
pakke | bygge
---------------------------|-----------------
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
Seks-1.11.0 | PY36H0E22D5E_1 21 KB
Intel-OpenMP-2018.0.0 | H8158457_8 493 KB
------------------------------------------------------------
Totalt: 170.3 MB
Følgende nye pakker vil bli installert:
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
Seks: 1.11.0-PY36H0E22D5E_1
Ved å utføre listekommandoen igjen, ser vi de nye pakkene installere i vårt virtuelle miljø.
$ conda -liste
# Pakker i miljøet AT/Brukere/Bradleypatton/Anaconda/Envs/TutorialConda:
#
# Navnversjon Bygg kanal
CA-Certificates 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
Setuptools 38.4.0 PY36_0
Seks 1.11.0 PY36H0E22D5E_1
SQLite 3.22.0 H3EFE00B_0
Tk 8.6.7 H35A86E2_3
hjul 0.30.0 PY36H5EB2C71_1
XZ 5.2.3 H0278029_2
Zlib 1.2.11 HF3CBC9B_2
For pakker som ikke er en del av Anaconda -depotet, kan du bruke de typiske PIP -kommandoene. Jeg vil ikke dekke det her, da de fleste Python -brukere vil bli kjent med kommandoene.
Anaconda Navigator
Anaconda inkluderer en GUI -basert Navigator -applikasjon som gjør livet enkelt for utvikling. Det inkluderer Spyder IDE og Jupyter Notebook som forhåndsinstallerte prosjekter. Dette lar deg skyte opp et prosjekt fra GUI -skrivebordsmiljøet ditt raskt.
For å begynne å jobbe fra vårt nyopprettede miljø fra navigatøren, må vi velge miljøet vårt under verktøylinjen til venstre.
Vi må da installere verktøyene som vi ønsker å bruke. For meg er dette nemlig Spyder Ide. Det er her jeg gjør det meste av mitt datavitenskapelige arbeid, og for meg er dette en effektiv og produktiv Python IDE. Du klikker ganske enkelt på installasjonsknappen på Dock Tile for Spyder. Navigator vil gjøre resten.
Når du er installert, kan du åpne IDE fra samme dock -flis. Dette vil lansere Spyder fra skrivebordsmiljøet ditt.
Spyder
Spyder er standard IDE for Anaconda og er kraftig for både standard- og datavitenskapsprosjekter i Python. Spyder IDE har en integrert Ipython Notebook, et kodeditorvindu og konsollvindu.
Spyder inkluderer også standard feilsøkingsfunksjoner og en variabel oppdagelsesreisende for å hjelpe når noe ikke går nøyaktig som planlagt.
Som illustrasjon har jeg tatt med en liten sklærprogram som bruker tilfeldig Forrest -regresjon for å forutsi fremtidige aksjekurser. Jeg har også tatt med noe av Ipython Notebook -utgangen for å demonstrere nytten av verktøyet.
Jeg har noen andre opplæringsprogrammer jeg har skrevet nedenfor hvis du vil fortsette å utforske datavitenskap. De fleste av disse er skrevet ved hjelp av Anaconda og Spyder ABND, bør fungere sømløst i miljøet.
- Pandas-data-ramme-tutorial
- PSYCOPG2-tutorial
- Kwant
Importer pandaer som PD
Fra Pandas_DatAreader importdata
Importer numpy som NP
importere talib som ta
Fra Sklearn.cross_validation import tog_test_split
Fra Sklearn.linear_model import linearregresjon
Fra Sklearn.Metrics Importer Mean_squared_error
Fra Sklearn.Ensemble import randomforestregressor
Fra Sklearn.Metrics Importer Mean_squared_error
def get_data (symboler, start_date, end_date, symbol):
Panel = data.DataReader (symboler, 'Yahoo', start_date, end_date)
DF = Panel ['Lukk']
trykk (df.hode (5))
trykk (df.hale (5))
Skriv ut df.Loc ["2017-12-12"]
Skriv ut df.Loc ["2017-12-12", symbol]
Skriv ut df.loc [:, symbol]
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"].skift (-2)
df ["sma"] = df ["sma"].skift (-2)
df ["bbandsu"] = df ["bbandsu"]].skift (-2)
df ["BbandSL"] = df ["BbandSL"]].skift (-2)
df = df.Fillna (0)
Skriv ut df
tog = df.prøve (frac = 0.8, Random_state = 1)
test = df.loc [~ df.indeks.Isin (tog.indeks)]
trykk (tog.form)
trykk (test.form)
# Få alle kolonnene fra DataFrame.
kolonner = df.kolonner.ramse opp()
Skriv ut kolonner
# Lagre variabelen vi vil forutsi på.
mål = symbol
# Initialiser modellklassen.
Model = randomForestRegressor (n_estimators = 100, min_samples_leaf = 10, random_state = 1)
# Monter modellen til treningsdataene.
modell.Fit (tog [kolonner], tog [mål])
# Generer spådommene våre for testsettet.
spådommer = modell.forutsi (test [kolonner])
Skriv ut "pred"
utskriftsforutsigelser
#DF2 = PD.DataFrame (data = spådommer [:])
#print DF2
#DF = PD.Concat ([Test, DF2], Axis = 1)
# Beregn feil mellom testforutsigelsene våre og de faktiske verdiene.
skriv ut "mean_squared_error:" + str (mean_squared_error (spådommer, test [mål]))
Return DF
def normalize_data (df):
Returner DF / DF.iloc [0 ,:]
def plot_data (df,):
AX = df.Plot (tittel = tittel, FontSize = 2)
øks.set_xlabel ("dato")
øks.set_ylabel ("Pris")
plott.forestilling()
def veiledning_run ():
#Velg symboler
symbol = "Egrx"
symboler = [symbol]
#get data
df = get_data (symboler, '2005-01-03', '2017-12-31', symbol)
Normalize_data (DF)
plot_data (df)
if __name__ == "__main__":
TUTORIAL_RUN () Navn: Egrx, Lengde: 979, dtype: Float64
Egrx RSI SMA Bbandsu BbandSl
Dato
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
Konklusjon
Anaconda er stort miljø for datavitenskap og maskinlæring i Python. Den leveres med en repo av kuraterte pakker som er designet for å samarbeide for en kraftig, stabil og reproduserbar datavitenskapelig plattform. Dette gjør at en utvikler kan distribuere innholdet sitt og sikre at det vil gi de samme resultatene på tvers av maskiner, og operativsystemer. Den leveres med innebygde verktøy for å gjøre livet lettere som navigatøren, som lar deg enkelt lage prosjekter og bytte miljøer. Det er min go-to for å utvikle algoritmer og lage prosjekter for økonomisk analyse. Jeg opplever til og med at jeg bruker for de fleste av python -prosjektene mine fordi jeg er kjent med miljøet. Hvis du ønsker å komme i gang i Python og Data Science, er Anaconda et godt valg.