Piton

Vodič za Anaconda Python

Vodič za Anaconda Python

Anaconda je platforma za znanost podataka i strojno učenje za programske jezike Python i R.  Dizajniran je kako bi postupak stvaranja i distribucije projekata učinio jednostavnim, stabilnim i ponovljivim u svim sustavima, a dostupan je na Linuxu, Windowsu i OSX-u.  Anaconda je platforma zasnovana na Pythonu koja obrađuje glavne pakete znanosti o podacima, uključujući pande, scikit-learn, SciPy, NumPy i Googleovu platformu za strojno učenje, TensorFlow.  Dolazi u paketu s condom (alat za instalaciju poput pipa), navigatorom Anaconda za GUI iskustvo i špijunom za IDE.Ovaj vodič će proći kroz neke od osnova Anaconde, conda i spydera za programski jezik Python i upoznati vas s konceptima potrebnim za započinjanje stvaranja vlastitih projekata.

Montaža

Na ovom mjestu ima mnogo sjajnih članaka o instaliranju Anaconde na različite distro i nativne sustave za upravljanje paketima.  Iz tog razloga u nastavku ću dati neke poveznice na ovo djelo i preskočiti na pokrivanje samog alata.

Osnove konda

Conda je alat za upravljanje paketom i okoliš Anaconda koji je srž Anaconde.  Sličan je pipu s iznimkom što je dizajniran za rad s Python, C i R upravljanjem paketima.  Conda također upravlja virtualnim okruženjima na način sličan virtualenv, o čemu sam ovdje pisao.

Potvrdite instalaciju

Prvi korak je potvrda instalacije i verzije na vašem sustavu.  Naredbe u nastavku provjerit će je li instalirana Anaconda i ispisati verziju na terminal.

$ conda --verzija

Trebali biste vidjeti slične rezultate kao u nastavku. Trenutno imam verziju 4.4.7 instalirano.

$ conda --verzija
conda 4.4.7

Ažuriraj verziju

conda se može ažurirati pomoću conda-inog argumenta ažuriranja, kao u nastavku.

$ conda ažuriranje conda

Ova će se naredba ažurirati na stanje najnovijeg izdanja.

Nastavi ([y] / n)? g
Preuzimanje i izdvajanje paketa
conda 4.4.8: ################################################## ########### | 100%
openssl 1.0.2n: ################################################## ######## | 100%
certifi 2018.1.18: ################################################## ##### | 100%
ca-certifikati 2017.08.26: ############################################## | 100%
Priprema transakcije: gotova
Provjera transakcije: gotova
Izvršenje transakcije: gotovo

Ponovnim pokretanjem argumenta verzije vidimo da je moja verzija ažurirana na 4.4.8, što je najnovije izdanje alata.

$ conda --verzija
conda 4.4.8

Stvaranje novog okruženja

Da biste stvorili novo virtualno okruženje, pokrenite niz naredbi u nastavku.

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

Pakete koji su instalirani u vaše novo okruženje možete vidjeti u nastavku.

Preuzimanje i izdvajanje paketa
certifi 2018.1.18: ################################################## ##### | 100%
sqlite 3.22.0: ################################################## ######### | 100%
kotačić 0.30.0: ################################################## ########## | 100%
tk 8.6.7: ################################################## ############### | 100%
linija za čitanje 7.0: ################################################## ########## | 100%
ncurses 6.0: ################################################## ########### | 100%
libcxxabi 4.0.1: ################################################## ####### | 100%
piton 3.6.4: ################################################## ########## | 100%
libffi 3.2.1: ################################################## ########## | 100%
setuptools 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%
Priprema transakcije: gotova
Provjera transakcije: gotova
Izvršenje transakcije: gotovo
#
# Da biste aktivirali ovo okruženje, upotrijebite:
#> izvor aktivira tutorialConda
#
# Da biste deaktivirali aktivno okruženje, upotrijebite:
#> izvor se deaktivira
#

Aktivacija

Slično kao i virtualenv, morate aktivirati novostvoreno okruženje.  Naredba u nastavku aktivirat će vaše okruženje na Linuxu.

izvor aktivirati tutorialConda Bradleys-Mini: ~ BradleyPatton $ izvor aktivirati tutorialConda
(tutorialConda) Bradleys-Mini: ~ BradleyPatton $

Instaliranje paketa

Naredba conda list popisat će trenutno instalirane pakete u vaš projekt. Pomoću naredbe install možete dodati dodatne pakete i njihove ovisnosti.

$ conda list # paketa u okruženju na / Users / BradleyPatton / anaconda / envs / tutorialConda:
#
# Naziv Verzija Build 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
piton 3.6.4 hc167b69_1
linija za čitanje 7.0 hc1231fa_4
setuptools 38.4.0 py36_0
sqlite 3.22.0 h3efe00b_0
tk 8.6.7 h35a86e2_3
kotačić 0.30.0 py36h5eb2c71_1
xz 5.2.3 h0278029_2
zlib 1.2.11 hf3cbc9b_2

Da biste instalirali pande u trenutno okruženje, izvršili biste donju naredbu ljuske.

$ conda instaliraj pande

Preuzet će i instalirati odgovarajuće pakete i ovisnosti.

Preuzet će se sljedeći paketi:
paket | izgraditi
---------------------------|-----------------
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
------------------------------------------------------------
Ukupno: 170.3 MB
BIT će instalirani sljedeći 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

Ponovnim izvršavanjem naredbe list vidimo kako se novi paketi instaliraju u našem virtualnom okruženju.

$ conda popis
# paketa u okruženju na / Users / BradleyPatton / anaconda / envs / tutorialConda:
#
# Naziv Verzija Build 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
nurse 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
piton 3.6.4 hc167b69_1
python-dateutil 2.6.1 py36h86d2abb_1
pytz 2017.3 py36hf0bf824_0
linija za čitanje 7.0 hc1231fa_4
setuptools 38.4.0 py36_0
šest 1.11.0 py36h0e22d5e_1
sqlite 3.22.0 h3efe00b_0
tk 8.6.7 h35a86e2_3
kotačić 0.30.0 py36h5eb2c71_1
xz 5.2.3 h0278029_2
zlib 1.2.11 hf3cbc9b_2

Za pakete koji nisu dio spremišta Anaconda možete koristiti tipične pip naredbe. Ovdje to neću obrađivati ​​jer će većina korisnika Pythona biti upoznate s naredbama.

Anaconda Navigator

Anaconda uključuje navigator zasnovan na GUI-ju koji olakšava život.  Uključuje spyder IDE i jupyter prijenosno računalo kao unaprijed instalirane projekte.  To vam omogućuje da brzo pokrenete projekt iz svog okruženja GUI radne površine.

Da bismo iz navigatora počeli raditi iz našeg novostvorenog okruženja, moramo odabrati svoje okruženje ispod alatne trake s lijeve strane.

Zatim moramo instalirati alate koje bismo željeli koristiti.  Za mene je ovo naime spyder IDE.  Ovdje radim većinu svog posla iz znanosti o znanosti i za mene je ovo učinkovit i produktivan Python IDE.  Jednostavno kliknite gumb za instalaciju na pločici doka za spyder.  Ostalo će učiniti Navigator.

Jednom instaliran, možete otvoriti IDE s iste pločice doka.  Ovo će pokrenuti spyder iz radnog okruženja.

Spyder

spyder je zadani IDE za Anacondu i moćan je za standardne projekte i projekte znanosti o znanju u Pythonu.  Spyder IDE ima integriranu IPython bilježnicu, prozor za uređivanje koda i prozor konzole.

Spyder također uključuje standardne mogućnosti otklanjanja pogrešaka i istraživač varijabli za pomoć kada nešto ne ide točno onako kako je planirano.

Kao ilustraciju uključio sam malu aplikaciju SKLearn koja koristi nasumičnu regresiju šuma za predviđanje budućih cijena dionica. Također sam uključio neke izlaze iz programa IPython Notebook kako bih pokazao korisnost alata.

Imam neke druge vodiče koje sam napisao u nastavku ako želite nastaviti istraživati ​​znanost o podacima.  Većina njih napisana je uz pomoć Anaconde, a spyder abnd trebao bi nesmetano raditi u okolišu.

uvoziti pande kao pd
iz podataka o uvozu pandas_datareader
uvoz numpy kao np
uvoz talib kao ta
od sklearn.cross_validation import train_test_split
od sklearn.linear_model import LinearRegression
od sklearn.metrika import mean_squared_error
od sklearn.ansambl uvoz RandomForestRegressor
od sklearn.metrika import mean_squared_error
def get_data (simboli, datum_početka, datum_konca, simbol):
ploča = podaci.DataReader (simboli, 'yahoo', start_date, end_date)
df = ploča ['Zatvori']
ispis (df.glava (5))
ispis (df.rep (5))
ispis df.loc ["12.12.2017"]
ispis df.loc ["12.12.2017", simbol]
ispis df.loc [:, simbol]
df.fillna (1.0)
df ["RSI"] = ta.RSI (np.niz (df.iloc [:, 0]))
df ["SMA"] = ta.SMA (np.niz (df.iloc [:, 0]))
df ["BBANDSU"] = ta.BEANDOVI (np.niz (df.iloc [:, 0])) [0]
df ["BBANDSL"] = ta.BEANDOVI (np.niz (df.iloc [:, 0])) [1]
df ["RSI"] = df ["RSI"].smjena (-2)
df ["SMA"] = df ["SMA"].smjena (-2)
df ["BBANDSU"] = df ["BBANDSU"].smjena (-2)
df ["BBANDSL"] = df ["BBANDSL"].smjena (-2)
df = df.fillna (0)
ispis df
vlak = df.uzorak (frac = 0.8, slučajno_stanje = 1)
test = df.loc [~ df.indeks.isin (vlak.indeks)]
ispis (vlak.oblik)
ispis (test.oblik)
# Dohvatite sve stupce iz okvira podataka.
stupci = df.stupaca.izlistati()
ispisati stupce
# Spremite varijablu za koju ćemo predviđati.
cilj = simbol
# Inicijalizirajte klasu modela.
model = RandomForestRegressor (n_estimators = 100, min_samples_leaf = 10, random_state = 1)
# Prilagodite model podacima o treningu.
model.uklopiti (vlak [kolone], vlak [meta])
# Generirajte naša predviđanja za testni set.
predviđanja = model.predvidjeti (test [stupci])
ispis "pred"
ispis predviđanja
# df2 = pd.DataFrame (podaci = predviđanja [:])
#print df2
#df = pd.concat ([test, df2], os = 1)
# Izračunajte pogrešku između naših predviđanja ispitivanja i stvarnih vrijednosti.
ispis "srednja_kvadratna_greška:" + str (srednja_kvadratna_greška (predviđanja, test [cilj]))
povratak df
def normalize_data (df):
povratak df / df.iloc [0 ,:]
def plot_data (df, title = "Cijene dionica"):
sjekira = df.zaplet (naslov = naslov, veličina slova = 2)
sjekira.set_xlabel ("Datum")
sjekira.set_ylabel ("Cijena")
zemljište.pokazati()
def tutorial_run ():
#Odaberi simbole
symbol = "EGRX"
simboli = [simbol]
# dobiti podatke
df = get_data (simboli, '2005-01-03', '2017-12-31', simbol)
normalizira_podatke (df)
podaci o parceli (df)
ako je __name__ == "__glavno__":
tutorial_run () Naziv: EGRX, duljina: 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čak

Anaconda je izvrsno okruženje za znanost o podacima i strojno učenje na Pythonu.   Dolazi s repo kuriranim paketima koji su dizajnirani da rade zajedno za moćnu, stabilnu i ponovljivu platformu za znanost o podacima.  To omogućava programeru da distribuira svoj sadržaj i osigura da će on postići iste rezultate na strojevima i operativnim sustavima.  Dolazi s ugrađenim alatima za olakšavanje života poput Navigatora, koji vam omogućuje lako stvaranje projekata i prebacivanje okruženja.  To je moj posao za razvoj algoritama i izradu projekata za financijsku analizu.  Čak smatram da koristim za većinu svojih Python projekata jer sam upoznat s okolinom.  Ako želite započeti s Pythonom i znanošću o podacima, Anaconda je dobar izbor.

HD Remastered igre za Linux koje ranije nisu imale Linux izdanje
Mnogi programeri i izdavači igara dolaze s HD remasterom starih igara kako bi produžili životni vijek franšize, molimo obožavatelje da zatraže kompati...
Kako koristiti AutoKey za automatizaciju Linux igara
AutoKey je uslužni program za automatizaciju radne površine za Linux i X11, programiran na Python 3, GTK i Qt. Koristeći njegovu skriptiranje i MACRO ...
Kako prikazati brojač FPS-a u Linux igrama
Linux gaming dobio je velik poticaj kada je Valve najavio Linux podršku za Steam klijent i njihove igre 2012. godine. Od tada su mnoge AAA i indie igr...