Oideachadh Python: Dè a th’ ann an SciPy agus mar a chleachdas tu leabharlann SciPy ann am Python

'S e cànan adhartach a th' ann am Python aig a bheil cumhachd agus mòr-chòrdte do leabharlannan.

'S e SciPy aon dhiubh sin, 's dòcha an tè a tha comasach air cho iom-fhillteachd sa chànan a chur an cèill.

Tha an oideachadh seo air gnìomhan SciPy a’ mìneachadh bunaitean SciPy, leithid an ailtireachd agus an àrainneachd, chì sinn e còmhla.

Ùine leughaidh tuairmseach: 8 minuti

SciPy, leabharlann saidheansail Stòr Fosgailte gach PythonLe Cead BSD airson matamataig, saidheans agus innleadaireachd. An leabharlann gnìomh SciPy an urra ÀireamhPy, a bheir seachad làimhseachadh raon N-meudach goireasach agus luath. Tha leabharlann SciPy a’ toirt seachad mòran chleachdaidhean àireamhach a tha furasta a chleachdadh agus a tha èifeachdach mar chleachdaidhean airson amalachadh agus anoptimization àireamhach.

seo Clasaichean oideachaidh SciPy a’ mìneachadh bunaitean SciPy, leithid an ailtireachd aige, agus an àrainneachd. Tha seo uile air a mhìneachadh le cuideachadh bho eisimpleirean airson tuigse nas fheàrr.

Fo-phasganan SciPy

Tha SciPy air a eagrachadh ann am fo-phasganan a tha a’ còmhdach diofar raointean de choimpiutaireachd saidheansail. Tha iad sin air an geàrr-chunntas sa chlàr a leanas?

- Scipy.clusterVector Quantization / Kmeans
- Scipy.constantsStuthan corporra agus matamataigeach
- Scipy.fftpackTionndadh Fourier
- Scipy.integrateRiaghailtean amalachaidh
- Scipy.interpolateEadar-theangachadh
- Scipy.ioCur a-steach agus toradh dàta
- Scipy.linalgCleachdaidhean loidhneach ailseabra
- Scipy.ndimagepasgan ìomhaigh n-dimensional
- Scipy.odrAth-thionndadh astar orthogonal
- Scipy.optimizeOptimization
- Scipy.signalGiullachd chomharran
- Scipy.sparseMatrices gann
- Scipy.spatialStructar dàta agus algorithms
- Scipy. specialGnìomh matamataigeach sònraichte sam bith
- Scipy.statsGnìomhan staitistigeil

Structar dàta

An structar dàta bunaiteach a chleachdar le SciPy tha e na raon ioma-thaobhach a tha air a thoirt seachad leis a’ mhodal ÀireamhPy. ÀireamhPy a’ toirt seachad cuid de ghnìomhan airson ailseabra sreathach, cruth-atharrachadh Fourier, agus gineadh àireamhan air thuaiream, ach chan ann le coitcheannachd nan gnìomhan co-ionann ann an SciPy.

Gu gnàthach, a h-uile gnìomh ÀireamhPy rim faighinn tron ​​ainm-àite SciPy. Chan fheum thu gnìomhan a thoirt a-steach gu soilleir ÀireamhPy, cuin SciPy air a thoirt a-steach. Am prìomh chuspair a ÀireamhPy tha an t-sreath ioma-sheòrsach aon-ghnèitheach. Is e clàr de eileamaidean a th’ ann (àireamhan gu h-àbhaisteach), uile den aon sheòrsa, air a chlàr-amais le tuple de shlànuighear dearbhach. Anns ÀireamhPy, canar tuaghan ris na tomhasan. Tha an àireamh de axes air a mhìneachadh mar rank.

A-nis, leig dhuinn ath-sgrùdadh a dhèanamh air gnìomhachd bunaiteach Vectors and Matrices ann an NumPy. Cho fad 's a SciPy air a thogail air arrays NumPy, tha feum air tuigse air bunaitean NumPy.

Vectors NumPy

Faodar vectar a chruthachadh ann an grunn dhòighean. Chì sinn beagan eisimpleirean gu h-ìosal

Ag atharrachadh nithean coltach ri sreath Python gu NumPy

Beachdaichidh sinn air an eisimpleir a leanas.

cuir a-steach numpy mar liosta np = [1,2,3,4] arr = np.array (liosta) clò-bhualadh

Bidh toradh a’ phrògraim gu h-àrd mar a leanas.

[1 2 3 4]
A’ cruthachadh NumPy Arrays

Tha gnìomhan togte aig NumPy airson arrays a chruthachadh. Bheir sinn sùil air na gnìomhan sin gu h-ìosal.

A 'cleachdadh ZEROS()

An gnìomh zeros a’ cruthachadh sreath leis a h-uile luach neoni. Tha an dtype tha bunaiteach float64. Beachdaichidh sinn air an eisimpleir a leanas.

cuir a-steach numpy mar np print np.zeros((2, 3))

Bidh toradh a’ phrògraim gu h-àrd mar a leanas.

sreath ([[0., 0., 0.], [0., 0., 0.]])
Dreuchd ones()

An gnìomh ones() cruthaichidh e sreath làn de luachan de 1. Tha e co-ionann ri neoni anns a h-uile dòigh eile. Beachdaichidh sinn air an eisimpleir a leanas.

cuir a-steach numpy mar np print np.ones((2, 3))

Bidh toradh a’ phrògraim gu h-àrd mar a leanas.

sreath ([[1., 1., 1.], [1., 1., 1.]])
gnìomh orains ().

An gnìomh arange() cruthaichidh e arrays le luachan a bhios ag àrdachadh gu cunbhalach. Beachdaichidh sinn air an eisimpleir a leanas.

cuir a-steach numpy mar np print np.arange(7)

Cruthaichidh am prògram gu h-àrd an toradh a leanas.

sreath ([0, 1, 2, 3, 4, 5, 6])
A’ mìneachadh an seòrsa dàta de na luachan

Beachdaichidh sinn air an eisimpleir a leanas.

cuir a-steach àireamhach mar np arr = np.arange(2, 10, dtype = np.float) clò-bhuail arr print "Array Data Type :", arr.dtype

Cruthaichidh am prògram gu h-àrd an toradh a leanas.

[2., 3., 4., 5., 6., 7., 8., 9.]
Seòrsa Dàta Array: fleòdradh64
gnìomh linspace().

An gnìomh linspace() a’ cruthachadh arrays le àireamh shònraichte de eileamaidean, a bhios aig amannan co-ionann eadar na luachan tòiseachaidh is crìochnachaidh ainmichte. Beachdaichidh sinn air an eisimpleir a leanas.

cuir a-steach numpy mar np print np.linspace(1., 4., 6)

Cruthaichidh am prògram gu h-àrd an toradh a leanas.

sreath ([1. , 1.6, 2.2, 2.8, 3.4, 4. ])
Matrix

Una matrix is e sreath 2D a th’ ann a chumas a nàdar 2-D thar gnìomhachd. Tha cuid de ghnìomhaichean sònraichte aige, leithid * (iomadachadh matrix) agus ** (cumhachd matrix). Beachdaichidh sinn air an eisimpleir a leanas.

cuir a-steach àireamhach mar np print np.matrix ('1 2; 3 4')

Cruthaichidh am prògram gu h-àrd an toradh a leanas.

matrix ([[1, 2], [3, 4]])
La Conjugate Transpose den Matrix

Bidh an gnìomh seo a’ tilleadh tar-chuir conjugate (iom-fhillte) na matrix. Beachdaichidh sinn air an eisimpleir a leanas.

cuir a-steach àireamhach mar np mat = np.matrix ('1 2; 3 4') clò-bhualadh mat.H

Cruthaichidh am prògram gu h-àrd an toradh a leanas.

matrix ([[1, 3], [2, 4]])
Eadar-theangachadh The Matrix

Bidh an gnìomh seo a’ tilleadh tar-chuir na matrix. Beachdaichidh sinn air an eisimpleir a leanas.

cuir a-steach àireamhach mar np mat = np.matrix ('1 2; 3 4') mat.T

Cruthaichidh am prògram gu h-àrd an toradh a leanas.

matrix ([[1, 3], [2, 4]])

Nuair a thionndaidheas sinn matrix, bidh sinn a’ dèanamh matrix ùr aig a bheil na sreathan nan colbhan den chiad fhear. Air an làimh eile, bidh tar-chur co-chuingealaichte ag atharrachadh clàr-amais na loidhne agus na colbh airson gach eileamaid den mhaitris. Is e matrics a th’ ann an cùl matrix a bhios, nuair a thèid iomadachadh leis a’ mhaitrix tùsail, a’ leantainn gu matrix dearbh-aithne.

Tha K-a ’ciallachadh cruinneachadh

Cruinneachadh meadhanan K na dhòigh air cruinneachaidhean agus ionadan cnuasachaidh a lorg ann an seata de dhàta gun bhileig. Gu h-iongantach, is dòcha gum bi sinn a’ smaoineachadh air cruinneachadh mar bhuidheann de phuingean dàta, aig a bheil astaran eadar puingean beag an taca ris na h-astaran gu puingean taobh a-muigh a’ bhuidheann. Leis a’ chiad sheata de ionadan K, tha analgorithm Tha K-a’ ciallachadh ag ath-aithris an dà cheum a leanas

  • Airson gach ionad, tha an fho-sheata de phuingean trèanaidh (a bhuidheann) a tha nas fhaisge air a chomharrachadh na ionad sam bith eile.
  • Thathas a’ tomhas cuibheasachd gach feart airson na puingean dàta anns gach cruinneachadh agus bidh an vectar ciallach seo gu bhith na ionad ùr airson a’ bhuidheann sin.

Tha an dà cheum seo air an ath-aithris gus nach gluais na h-ionadan tuilleadh no gus nach atharraich na sònrachaidhean tuilleadh. Mar sin, puing ùr x faodar a shònrachadh don bhuidheann prototype as fhaisge. Tha leabharlann SciPy a’ toirt seachad deagh bhuileachadh dealgorithm K-Means tron ​​phasgan brabhsair. Feuch gun obraich sinn a-mach mar a chleachdas sinn e.

Cur an gnìomh K-Means ann an SciPy

Tuigidh sinn mar a chuireas sinn K-Means an gnìomh ann an SciPy.

K-Means toirt a-steach

Seallaidh sinn ri buileachadh agus cleachdadh gach gnìomh a chaidh a thoirt a-steach.

bho SciPy.cluster.vq in-mhalairt kmeans,vq, whiten
Gineadh dàta

Feumaidh sinn beagan dàta a shamhlachadh gus sgrùdadh a dhèanamh air an cruinneachadh.

bho in-mhalairt numpy vstack, sreath bho in-mhalairt numpy.random rand # gineadh dàta le trì feartan dàta = vstack ((rand(100,3) + raon ([.5,.5,.5]), rand(100,3) ))

A-nis, feumaidh sinn an dàta a dhearbhadh. Cruthaichidh am prògram gu h-àrd an toradh a leanas.

sreath ([1.48598868e+00, 8.17445796e -01], …………….

Normalaich buidheann de bheachdan a rèir gach feart. Mus ruith K-Means, tha e feumail sgèile a dhèanamh air gach taobh feart den t-seata amharc le glanadh. Tha gach feart air a roinn leis an claonadh àbhaisteach aige thairis air a h-uile sealladh gus an caochladair aonad a thoirt dha.

GLAN an dàta

Feumaidh sinn an còd a leanas a chleachdadh gus an dàta a ghlanadh.

# whitening dàta dàta = whiten(data)
Obraich a-mach K-Means le trì cruinneachaidhean

A-nis leig dhuinn K-Means obrachadh a-mach le trì cruinneachaidhean a’ cleachdadh a’ chòd a leanas.

# coimpiutaireachd K-Means le K = 3 (2 chlàr) centroids,_ = kmeans (dàta,3)

Tha an còd gu h-àrd a’ ruith K-Means air seata de vectaran amharc a’ cruthachadh cruinneachaidhean K.algorithm Bidh K-Means ag atharrachadh nan centroids gus an tèid adhartas gu leòr a dhèanamh, i.e. an claonadh ag atharrachadh, leis gu bheil an tionndadh mu dheireadh nas lugha na stairsneach. An seo, is urrainn dhuinn meadhan a’ bhraisle fhaicinn le bhith a’ clò-bhualadh an caochladair centroids a’ cleachdadh a’ chòd gu h-ìosal.

clò-bhualadh (centroids)

Cruthaichidh an còd gu h-àrd an toradh a leanas.

clò-bhualadh (centroids)[ [ 2.26034702 1.43924335 1.3697022 ] [ 2.63788572 2.81446462 2.85163854] [ 0.73507256 1.30801855]

Sònraich gach luach do bhuidheann a’ cleachdadh a’ chòd gu h-ìosal.

# sònraich gach sampall gu brabhsair clx, _ = vq (dàta, centroids)

An gnìomh vq dèan coimeas eadar gach vectar amharc ann an ‘M’ agus ‘N’ ob sreath leis na centroids agus a’ sònrachadh an amharc don bhuidheann as fhaisge. Tillidh e cruinneachadh de gach amharc agus an claonadh. Faodaidh sinn cuideachd smachd a chumail air an saobhadh. Bidh sinn a’ sgrùdadh cruinneachadh gach amharc a’ cleachdadh a’ chòd a leanas.

# thoir sùil air cruinneachaidhean de chlò-bhualadh clx

Cruthaichidh an còd gu h-àrd an toradh a leanas.

sreath([1, 1, 0, 1, 1, 1, 0, 1, 0, 0, 1, 1, 1, 0, 0, 1, 1, 0, 0, 1, 0, 2, 0, 2 , 0, 1, 1, 1, 0, 0, 1, 1, 0, 0, 1, 1, 0, 0, 0, 0, 1, 1, 0, 0, 1, 1, 0, 0 , 1, 0, 1, 0, 0, 0, 1, 1, 0, 0, 0, 1, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0 , 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 1 , 2, 1, 2, 2, 2, 2, 2, 2, 2, 2, 0, 2, 0, 2, 2, 2, 2, 2, 0, 0, 2, 2, 2, 1, 0 , 2, 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, 0, 2, 2, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2. , 2, 2, 0, 2, 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, 0, 2, 2, 2, 2, 0, 2, 2, 2, 2, 2. , 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2. , 2], dtype=int2)

Tha na luachan sònraichte 0, 1, 2 den raon gu h-àrd a’ comharrachadh nan cruinneachaidhean.

Seasamh SciPy

Il pacaid scipy.constants a 'toirt seachad grunn shuidheachaidhean. Feumaidh sinn an seasmhach a tha a dhìth a thoirt a-steach agus an cleachdadh a rèir an riatanas. Chì sinn mar a tha na caochladairean seasmhach sin air an toirt a-steach agus air an cleachdadh.

An toiseach, dèanamaid coimeas eadar an luach ‘pi’ le bhith a’ beachdachadh air an eisimpleir a leanas.

#Import pi seasmhach bhon dà phacaid bho scipy.constants ion-phortaich pi bho chlò-bhualadh math import pi ("sciPy - pi = %.16f"%scipy.constants.pi) print("math - pi = %.16f"%math. pi)

Cruthaichidh am prògram gu h-àrd an toradh a leanas.

sciPy - pi = 3.1415926535897931 math - pi = 3.1415926535897931
Liosta de na comharran a tha rim faighinn

Tha na clàran a leanas a’ toirt cunntas goirid air na diofar shuidheachaidhean.

Seasamhan matamataigeach
Chan eil.seasmhachTuairisgeul
1piPi
2goldenGolden ratio
Seasmhachan corporra

Tha an clàr a leanas a’ liostadh na h-ìrean corporra as cumanta.

Chan eil.Constant & Tuairisgeul
1cLuas an t-solais ann am falamh
2luaths_de_solasLuas an t-solais ann am falamh
3hPlanck seasmhach
4PlanaigPlanck seasmhach h
5GSeasamh iom-tharraing Newton
6eCosgais bun-sgoile
7RMolar gas seasmhach
8AvogadroAvogadro seasmhach
9kSeasmhach Boltzmann
10electron_mass(OR) m_eElectronic mass
11proton_mass (OR) m_pMeud proton
12neutron_mass(OR) m_nMeud neutron
Aonad

Tha liosta de dh'aonadan SI anns a' chlàr a leanas.

Sr.Aonadluach
1millean0.001
2meanbh1-06
3cuideam1000

Tha na h-aonadan sin a’ dol bho yotta, zetta, exa, peta, tera…kilo, hector, …nano, pico, … gu zepto.

comharran cudromach eile

Tha an clàr a leanas a’ toirt liosta de chuibhlichean cudromach eile a thathas a’ cleachdadh ann an SciPy.

Sr.Aonadluach
1gram0.001 kg
2tomad atamachSeasmhach tomad atamach
3ceumCeum ann an radians
4mionaidAon mhionaid ann an diogan
5lathaAon latha ann an diogan
6òirleachAon òirleach ann am meatairean
7micronAon micron ann an meatairean
8solas_bliadhnaAon bhliadhna aotrom ann am meatairean
9atmÀile àbhaisteach ann am pascals
10acairAon acair ann am meatairean ceàrnagach
11liotairAon liotair ann an meatairean ciùbach
12galonAon galan ann an meatairean ciùbach
13kmhCilemeatairean san uair ann am meatairean gach diog
14ceum_FahrenheitAon Fahrenheit ann an kelvins
15eVAon bholt dealain ann an joules
16hpAon each-chumhachd ann an watts
17fearAon dhath gu newtons
18lambda2nuTionndaidh tonn-tonn gu tricead optigeach

Gus faighinn a-mach dè an iuchair airson dè an gnìomh, bidh thu a 'cleachdadh an dòigh scipy.constants.find(). Beachdaichidh sinn air an eisimpleir a leanas.

toirt a-steach scipy.constants res = scipy.constants.physical_constants ["alpha particle mass"] clò-bhualaidhean

Cruthaichidh am prògram gu h-àrd an toradh a leanas.

[ ‘alpha particle mass’, ‘alpha particle mass energy’ co-ionann, ‘alpha particle mass energy co-ionann ann am MeV’, ‘alpha particle mass in u’, ‘electron to alpha particle mass co-mheas’ ]

Bidh an dòigh seo a’ tilleadh liosta nan iuchraichean, gun dad a bharrachd air mì-chothromachadh prìomh fhacal.

Ercole Palmeri

Autore