Python

Vadnica za Anaconda Python

Vadnica za Anaconda Python

Anaconda je platforma za znanost o podatkih in strojnem učenju za programska jezika Python in R.  Zasnovan je tako, da je postopek ustvarjanja in distribucije projektov preprost, stabilen in ponovljiv med sistemi in je na voljo v Linuxu, Windows in OSX.  Anaconda je platforma na osnovi Pythona, ki pripravlja glavne pakete znanosti o podatkih, vključno s pandami, scikit-learn, SciPy, NumPy in Googlovo platformo za strojno učenje, TensorFlow.  Na voljo je v paketu conda (orodje za namestitev v obliki pipa), navigatorju Anaconda za GUI izkušnjo in spyderju za IDE.Ta vadnica se bo sprehodila skozi nekaj osnov Anaconde, conda in spyderja za programski jezik Python ter vam predstavila koncepte, potrebne za ustvarjanje lastnih projektov.

Namestitev

Na tej spletni strani je veliko odličnih člankov o namestitvi Anaconde na različne sisteme za upravljanje distribucij in izvornih paketov.  Zato bom spodaj navedel nekaj povezav do tega dela in preskočil samo orodje.

Osnove konda

Conda je orodje za upravljanje in varovanje okolja Anaconda, ki je jedro Anaconde.  Podoben je pipu z izjemo, da je zasnovan za delo z upravljanjem paketov Python, C in R.  Conda tudi upravlja virtualna okolja na podoben način kot virtualenv, o katerem sem že pisal.

Potrdite namestitev

Prvi korak je potrditev namestitve in različice v vašem sistemu.  Spodnji ukazi bodo preverili, ali je nameščena Anaconda, in različico natisnili na terminal.

$ conda --verzija

Videti bi morali podobne rezultate kot spodaj. Trenutno imam različico 4.4.7 nameščenih.

$ conda --verzija
conda 4.4.7

Posodobi različico

conda lahko posodobite z uporabo conda-jevega argumenta za posodobitev, kot spodaj.

$ conda posodobitev conda

Ta ukaz se bo posodobil na stanje do najnovejše izdaje.

Nadaljujte ([y] / n)? y
Prenos in ekstrakcija paketov
conda 4.4.8: ################################################## ########### | 100%
openssl 1.0.2n: ################################################## ######## | 100%
certifi 2018.1.18: ################################################## ##### | 100%
ca-certifikati 2017.08.26: ############################################# | 100%
Priprava transakcije: končano
Preverjanje transakcije: končano
Izvedba transakcije: končano

Z ponovnim zagonom argumenta različice vidimo, da je bila moja različica posodobljena na 4.4.8, ki je najnovejša izdaja orodja.

$ conda --verzija
conda 4.4.8

Ustvarjanje novega okolja

Če želite ustvariti novo navidezno okolje, zaženite spodnji niz ukazov.

$ conda create -n tutorialConda python = 3 $ Nadaljuj ([y] / n)? y

Spodaj si lahko ogledate pakete, ki so nameščeni v vašem novem okolju.

Prenos in ekstrakcija paketov
certifi 2018.1.18: ################################################## ##### | 100%
sqlite 3.22.0: ################################################## ######### | 100%
kolo 0.30.0: ################################################## ########## | 100%
tk 8.6.7: ################################################## ############### | 100%
branje 7.0: ################################################## ########## | 100%
ncurses 6.0: ################################################## ########### | 100%
libcxxabi 4.0.1: ################################################## ####### | 100%
python 3.6.4: ################################################## ########## | 100%
libffi 3.2.1: ################################################## ########## | 100%
orodja za nastavitev 38.4.0: ################################################## ##### | 100%
libedit 3.1: ################################################## ########### | 100%
xz 5.2.3: ################################################## ############### | 100%
zlib 1.2.11: ################################################## ########### | 100%
pip 9.0.1: ################################################## ############## | 100%
libcxx 4.0.1: ################################################## ########## | 100%
Priprava transakcije: končano
Preverjanje transakcije: končano
Izvedba transakcije: končano
#
# Za aktiviranje tega okolja uporabite:
#> vir aktivira tutorialConda
#
# Če želite deaktivirati aktivno okolje, uporabite:
#> vir deaktivira
#

Aktivacija

Podobno kot virtualenv morate aktivirati novo ustvarjeno okolje.  Spodnji ukaz bo aktiviral vaše okolje v Linuxu.

izvor aktivira tutorialConda Bradleys-Mini: ~ BradleyPatton $ vir aktivira tutorialConda
(tutorialConda) Bradleys-Mini: ~ BradleyPatton $

Nameščanje paketov

Ukaz conda list bo prikazal trenutno nameščene pakete v vaš projekt. Z ukazom za namestitev lahko dodate dodatne pakete in njihove odvisnosti.

$ conda list # paketov v okolju na / Users / BradleyPatton / anaconda / envs / tutorialConda:
#
# Name Version Channel Channel
ca-certifikati 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
branje 7.0 hc1231fa_4
orodja za nastavitev 38.4.0 py36_0
sqlite 3.22.0 h3efe00b_0
tk 8.6.7 h35a86e2_3
kolo 0.30.0 py36h5eb2c71_1
xz 5.2.3 h0278029_2
zlib 1.2.11 hf3cbc9b_2

Če želite namestiti pande v trenutno okolje, izvedite spodnji ukaz lupine.

$ conda namestite pande

Prenesla in namestila bo ustrezne pakete in odvisnosti.

Naloženi bodo naslednji paketi:
paket | graditi
---------------------------|-----------------
libgfortran-3.0.1 | h93005f0_2 495 KB
pande-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
šest-1.11.0 | py36h0e22d5e_1 21 KB
intel-openmp-2018.0.0 | h8158457_8 493 KB
------------------------------------------------------------
Skupaj: 170.3 MB
NAMESTLJENI bodo naslednji NOVI paketi:
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
pande: 0.22.0-py36h0a44026_0
python-dateutil: 2.6.1-py36h86d2abb_1
pytz: 2017.3-py36hf0bf824_0
šest: 1.11.0-py36h0e22d5e_1

Z ponovnim zagonom ukaza list vidimo, da so novi paketi nameščeni v našem navideznem okolju.

$ conda seznam
# paketov v okolju na / Users / BradleyPatton / anaconda / envs / tutorialConda:
#
# Name Version Channel Channel
ca-certifikati 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
pande 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
branje 7.0 hc1231fa_4
orodja za nastavitev 38.4.0 py36_0
šest 1.11.0 py36h0e22d5e_1
sqlite 3.22.0 h3efe00b_0
tk 8.6.7 h35a86e2_3
kolo 0.30.0 py36h5eb2c71_1
xz 5.2.3 h0278029_2
zlib 1.2.11 hf3cbc9b_2

Za pakete, ki niso del repozitorija Anaconda, lahko uporabite tipične ukaze pip. Tega tukaj ne bom pokrival, saj bo večina uporabnikov Pythona seznanjena z ukazi.

Anaconda Navigator

Anaconda vključuje navigator, ki temelji na grafičnem uporabniškem vmesniku in olajša življenje.  Vključuje spyder IDE in jupyter notebook kot prednameščene projekte.  To vam omogoča, da projekt hitro zaženete iz namiznega okolja GUI.

Če želite začeti delo iz našega novo ustvarjenega okolja v navigatorju, moramo izbrati svoje okolje pod orodno vrstico na levi.

Nato moramo namestiti orodja, ki jih želimo uporabiti.  Zame je to spyder IDE.  Tu opravljam večino svojega dela s področja podatkov in zame je to učinkovit in produktiven Python IDE.  Preprosto kliknite gumb za namestitev na ploščici dock za spyder.  Vse ostalo bo naredil Navigator.

Ko je nameščen, lahko odprete IDE iz iste ploščice doka.  To bo zagnalo spyder iz namiznega okolja.

Spyder

spyder je privzeti IDE za Anaconda in je zmogljiv tako za standardne kot za podatkovne projekte v Pythonu.  Spyder IDE ima vgrajen prenosnik IPython, okno urejevalnika kod in okno konzole.

Spyder vključuje tudi standardne zmožnosti za odpravljanje napak in raziskovalec spremenljivk, ki pomaga, če se kaj ne zgodi natančno po načrtih.

Za ponazoritev sem vključil majhno aplikacijo SKLearn, ki z naključno regresijo gozda napoveduje prihodnje cene delnic. Vključil sem tudi nekaj izhodov iz prenosnika IPython, da pokažem uporabnost orodja.

Če želite nadaljevati z raziskovanjem znanosti o podatkih, imam nekaj drugih vadnic, ki sem jih napisal spodaj.  Večina teh je napisanih s pomočjo Anaconde in spyder abnd bi moral brezhibno delovati v okolju.

uvozi pande kot pd
iz pandas_datareader uvoz podatkov
uvozi numpy kot np
uvozi talib kot ta
iz sklearn.navzkrižno_validacijo uvoz train_test_split
iz sklearn.linear_model import LinearRegression
iz sklearn.metric import mean_squared_error
iz sklearn.ansambel uvoz RandomForestRegressor
iz sklearn.metric import mean_squared_error
def get_data (simboli, datum začetka, datum konca, simbol):
panel = podatki.DataReader (simboli, 'yahoo', start_date, end_date)
df = panel ['Zapri']
tiskanje (df.glava (5))
tiskanje (df.rep (5))
natisni df.loc ["12.12.2017"]
natisni df.loc ["12.12.2017", simbol]
natisni df.loc [:, simbol]
df.fillna (1.0)
df ["RSI"] = ta.RSI (np.matrika (df.iloc [:, 0]))
df ["SMA"] = ta.SMA (np.matrika (df.iloc [:, 0]))
df ["BBANDSU"] = ta.BBANDI (np.matrika (df.iloc [:, 0])) [0]
df ["BBANDSL"] = ta.BBANDI (np.matrika (df.iloc [:, 0])) [1]
df ["RSI"] = df ["RSI"].premik (-2)
df ["SMA"] = df ["SMA"].premik (-2)
df ["BBANDSU"] = df ["BBANDSU"].premik (-2)
df ["BBANDSL"] = df ["BBANDSL"].premik (-2)
df = df.fillna (0)
natisni df
vlak = df.vzorec (frak = 0.8, naključno_stanje = 1)
test = df.loc [~ df.indeks.isin (vlak.indeks)]
tisk (vlak.oblika)
natis (test.oblika)
# Pridobite vse stolpce iz podatkovnega okvira.
stolpci = df.stolpci.našteti()
natisni stolpce
# Shranite spremenljivko, za katero bomo napovedovali.
tarča = simbol
# Inicializirajte razred modela.
model = RandomForestRegressor (n_estimators = 100, min_samples_leaf = 10, random_state = 1)
# Model prilagodite podatkom o vadbi.
model.fit (vlak [stolpci], vlak [tarča])
# Ustvari naše napovedi za testni niz.
napovedi = model.napovedi (test [stolpci])
natisni "pred"
natisni napovedi
# df2 = pd.DataFrame (podatki = napovedi [:])
#print df2
#df = pd.concat ([test, df2], os = 1)
# Izračunajte napako med našimi napovedmi testa in dejanskimi vrednostmi.
natisni "mean_squared_error:" + str (mean_squared_error (napovedi, preizkus [cilj]))
vrni df
def normalize_data (df):
vrni df / df.iloc [0 ,:]
def plot_data (df, title = "Tečaji delnic"):
ax = df.ploskev (naslov = naslov, velikost pisave = 2)
sekira.set_xlabel ("Datum")
sekira.set_ylabel ("Cena")
zaplet.pokaži ()
def tutorial_run ():
#Izberite simbole
symbol = "EGRX"
simboli = [simbol]
#get data
df = get_data (simboli, '2005-01-03', '2017-12-31', simbol)
normalizira_podatke (df)
podatki o parceli (df)
če je __name__ == "__glavna__":
tutorial_run () Ime: EGRX, dolžina: 979, dtype: float64
EGRX RSI SMA BBANDSU BBANDSL
Datum
29. 12. 2017 53.419998 0.000000 0.000000 0.000000 0.000000
28. 12. 2017 54.740002 0.000000 0.000000 0.000000 0.000000
27. 12. 2017 54.160000 0.000000 0.000000 55.271265 54.289999

Zaključek

Anaconda je odlično okolje za znanost o podatkih in strojno učenje v Pythonu.   Na voljo je repo kuriranih paketov, ki so zasnovani tako, da delujejo skupaj za močno, stabilno in ponovljivo platformo za podatkovno znanost.  To razvijalcu omogoča, da distribuira svojo vsebino in zagotovi enake rezultate med stroji in operacijskimi sistemi.  Na voljo je z vgrajenimi orodji za lažje življenje, kot je Navigator, ki vam omogoča enostavno ustvarjanje projektov in preklapljanje okolij.  To je moj cilj pri razvoju algoritmov in ustvarjanju projektov za finančno analizo.  Ugotavljam celo, da ga uporabljam za večino svojih Pythonovih projektov, ker poznam okolje.  Če želite začeti s Pythonom in podatkovno znanostjo, je Anaconda dobra izbira.

WinMouse vam omogoča prilagajanje in izboljšanje premikanja kazalca miške v računalniku z operacijskim sistemom Windows
Če želite izboljšati privzete funkcije kazalca miške, uporabite brezplačno programsko opremo WinMouse. Dodaja več funkcij, s pomočjo katerih boste kar...
Levi gumb miške ne deluje v sistemu Windows 10
Če s prenosnikom ali namiznim računalnikom uporabljate namensko miško, vendar gumb miške z levim klikom ne deluje v operacijskem sistemu Windows 10/8/...
Kazalec skoči ali se naključno premika med tipkanjem v sistemu Windows 10
Če ugotovite, da kazalec miške med tipkanjem v prenosnem računalniku ali računalniku Windows samodejno, naključno preskakuje ali se premika sam, vam l...