Den enklaste användningen av Python för matematik är som en miniräknare. För att göra detta startar du Python på terminalen och använder utskriftsfunktionen.
Den enkla matematiken är tillgänglig utan att ens matematikmodulen aktiveras men utöver addition, subtraktion, delning och multiplikation behöver du importera matematikmodulen. För att göra koden kort, importera som 'm'. Nu sätter du m och en punkt framför alla funktioner du använder. Detta fungerar på samma sätt för alla moduler i Python. Om du vill använda komplexa nummer använder du cmath-modulen.
För funktioner utöver det finns nedan några bibliotek som är specialiserade för vissa behov.
- NumPy-biblioteken hanterar matematiska funktioner för matriser. Det är möjligt att skapa matriser av alla slag och optimering i minnet stöds också. Den N-dimensionella matrisen är helt täckt. Funktioner som biblioteket hanterar inkluderar iteration, Fourier Transfom, linjär algebra och ekonomiska funktioner. Detta bibliotek implementerar också ett C-API så att du kan använda hastigheten på C utan att översätta hela ditt projekt.
- SciPy är en samling vetenskaplig programvara med matematiska uppgifter i centrum. Om du behöver beräkna något är det här ett bra ställe att börja. Samlingen inkluderar integration, optimering och glesa egenvärden.
- Scikit-image är en utmärkt resurs för att manipulera och analysera bilder. Biblioteket har funktioner för att upptäcka linjer, kanter och funktioner. Det har också restaureringsfunktioner, för när du har bilder med defekter på sig. Det finns också många analysverktyg tillgängliga.
- Scikit-learning är användbart för att få samman maskininlärningskoden. Den innehåller moduler för klassificering, regression, kluster och mer. Webbsidan är full av användbara exempel så att du enkelt kan komma igång.
- Pandas är din resurs för stora datamängder att göra din datavetenskap på. Pandas stöder dataanalys och modellering och gör det med enkel och tydlig kod. Många funktioner kan översättas från R, så du kan prototypa med Pandas.
- Statsmodels täcker dina behov av statistiska modeller. Detta bibliotek hanterar många liknande saker som Panda men kan också importera Sata-filer och hantera tidsserieanalyser. Det finns en sandlåda där du kan experimentera med olika statistiska modeller. Den specifika koden har inte testats ännu men kanske är den tillräckligt nära för att du ska kunna slutföra jobbet.
- Matplotlib: Inkluderar animerade diagram för att plotta dina grafer.
De tidigare biblioteken är bra för matematiken, men de har medvetet hållit sig borta från att plotta. Istället låter de bibliotek som matplotlib hantera dessa
Detta har gjort matplotlib omfattande och det har också många stödjande program som täcker kartläggning, plottning och elektronisk kretsdesign.
- Gnuplot.py är ett gränssnittspaket till det populära gnuplot-programmet. Den har en objektorienterad design så att du kan lägga till dina egna tillägg.
- Patsy beskriver statistiska modeller i alla dess former. Det har också många funktioner som är vanliga i R men med små skillnader, som hur man betecknar exponentiering. Patsy kommer att bygga matriser med formler, som mycket liknar det som görs i S och R.
- Sympy: När du vill skriva ut dina matematiska formler använder du det här biblioteket. Det har också förmågan att utvärdera uttryck. Det är mycket användbart för att skapa formler i dina LaTeX-dokument. Du kan till och med köra Sympy live i din webbläsare för att testa det.
Nu när du har lärt dig vilka projekt du ska använda för matematik kommer du snart att sakna processorkraft. Att lösa den situationen är parallell utförande den vanligaste lösningen. Det finns flera Python-bibliotek för detta ändamål.
Biblioteket mpi4py erbjuder bindningar till standardgränssnittet för meddelandeöverföring. Du måste ladda ner ett standard parallellt bibliotek som mpich eller openmpi. Båda finns i standardförvaret.
Det andra biblioteket är parallell python eller pp. Parallel Python skapar en server och många klienter som tar jobb från din server. Detta projekt implementerar inte en standard utan du använder servern och klienten från samma paket på alla dina maskiner. Detta är på vissa sätt enklare men det kräver mer när ditt projekt blir stort och du behöver andra människor för att ge dig processorkraft.
Dessa bibliotek är alla bra i sig men se till att välja rätt för dina behov.
Valet är inte oåterkalleligt men kommer att kräva en hel del arbete senare i ett projekt. Din källkod måste ändras för att använda ett nytt bibliotek och nya fel kommer att inträffa så välj klokt.
Om du vill göra dina beräkningar interaktivt, installera och använd Ipython eftersom det här är en förbättrad version av kommandoradsversionen av Python. Om du inte redan har gjort det kan du överväga att använda Jupyter. Den förser dig med anteckningsbok, dokument och en kodkonsol på samma arbetsyta.
Ramverket fungerar som en IDE men syftar mer till att utforska problemen och programvaran du utvecklar än traditionella IDE.
Mer information finns i de här artiklarna:
- Så här installerar du Anaconda Python på Ubuntu 18.04 LTS
- Anaconda Python-handledning
- Topp 10 Python IDE för Ubuntu
- Så här installerar du Jupyter-anteckningsböcker på Ubuntu 18.04 LTS