Vytvoření tabulky data v LuckyTemplates
Zjistěte, proč je důležité mít vyhrazenou tabulku s daty v LuckyTemplates, a naučte se nejrychlejší a nejefektivnější způsob, jak toho dosáhnout.
Jako datový vědec pracující s Pythonem jste se s největší pravděpodobností setkali s knihovnou NumPy . Je to jeden ze základních balíčků pro vědecké výpočty v .
Díky své schopnosti provádět vysoce výkonné operace na vícerozměrných polích je NumPy nezbytným nástrojem pro každého, kdo se ponoří do datové vědy nebo numerických výpočtů v Pythonu.
Cheat sheet NumPy může být vynikajícím zdrojem, který vám pomůže nasměrovat vaši cestu do této knihovny Pythonu. Komplexní cheat list vám pomůže orientovat se ve funkcích NumPy a rychle se zdokonalíte v jeho používání pro různé úkoly!
Pamatujte také, že NumPy je jádrem důležitých knihoven, jako jsou Pandas, SciPy, sci-kit-learn a další balíčky Pythonu.
Když si osvojíte jeho základy pomocí Python NumPy , budete lépe vybaveni pro práci s těmito knihovnami. Posílíte také své dovednosti při práci se složitými datovými strukturami a výpočty.
Jste ze staré školy (jako my) a chcete si stáhnout a případně vytisknout svůj cheat sheet?
Chcete-li to provést, přejděte dolů.
Obsah
Základy NumPy
V této části pokryjeme základy NumPy se zaměřením na instalaci NumPy, vytváření pole, atributy pole a datové typy. Tyto koncepty poskytnou pevný základ pro pochopení a efektivní využití NumPy ve vašich projektech vědy o datech v Pythonu.
1. Instalace a import NumPy
NumPy můžete nainstalovat z příkazového řádku pomocí příkazu níže:
pip install numpy
Jakmile je nainstalován, importujte jej do svého kódu.
import numpy as np
Mějte na paměti, že můžete použít jakýkoli jiný název kromě np . Nicméně np je standardní konvence importu NumPy, kterou používá většina vývojářů a datových vědců.
2. Vytváření pole
Vytváření polí v NumPy je jednoduché a přímočaré. Pole můžete vytvořit ze seznamů nebo n-tic pomocí funkce numpy.array() :
import numpy as np
a = np.array([1, 2, 3]) # Creates a 1D array
b = np.array([(1, 2, 3), (4, 5, 6)]) # Creates a 2D array
Můžete také generovat pole konkrétních tvarů a hodnot pomocí různých funkcí:
np.zeros() : Vytvoří pole vyplněné nulami
np.ones() : Vytvoří pole vyplněné jedničkami
np.identity() : Vytvoří pole matice identity.
np.empty() : Vytvoří pole bez inicializace jeho prvků na jakoukoli konkrétní hodnotu
np.arange() : Vytvoří pole s pravidelně rozmístěnými hodnotami mezi počáteční a koncovou hodnotou
np.linspace() : Vytvoří pole se zadaným počtem rovnoměrně rozložených hodnot mezi počáteční a koncovou hodnotou
Poznámka: V NumPy nemůžete vygenerovat prázdné pole. Každé pole NumPy má pevnou, neměnnou velikost a každý prvek v poli musí být vyplněn při vytváření pole.
Funkce np.empty () vytvoří požadovaný tvar pole a naplní jej náhodnými hodnotami. Výchozí metoda vytvoří pole náhodných floatů.
Pomocí parametru dtype můžete vytvořit jiný datový typ pole .
3. Atributy pole
Pole NumPy mají několik atributů, které poskytují užitečné informace o poli. Podívejme se na některé z nich:
ndarray.shape: Vrátí rozměry pole jako n-tici (řádky, sloupce)
ndarray.ndim: Vrátí počet dimenzí v poli
ndarray.size: Vrátí celkový počet prvků v poli
ndarray.dtype: Vrátí datový typ prvků pole
Pro přístup k těmto atributům použijte tečkovou notaci, například:
a = np.array([(1, 2, 3), (4, 5, 6)])
#Print out the array shape
print(a.shape) # Output: (2, 3)
4. Datové typy
NumPy poskytuje několik datových typů pro ukládání dat v polích, jako jsou integer, string, float, boolean a complex. Ve výchozím nastavení se NumPy pokouší odvodit datový typ na základě vstupních prvků.
Můžete však také explicitně určit datový typ pomocí klíčového slova dtype . Například:
import numpy as np
a = np.array([1, 2, 3], dtype=float) # Creates an array of floats
Mezi běžné typy dat NumPy patří:
np.int32 : 32bitové celé číslo
np.int64: 64bitové celé číslo
np.float32: 32bitové číslo s plovoucí desetinnou čárkou
np.float64: 64bitové číslo s plovoucí desetinnou čárkou
np.complex: Komplexní číslo reprezentované dvěma 64bitovými čísly s plovoucí desetinnou čárkou
Pole můžete také převést z jednoho datového typu na jiný. V tomto příkladu si ukážeme, jak můžeme pomocí metody np.array() převést pole Integer a na booleovské pole arr .
Z příkladu vidíme, že metoda array() převádí prvky pole na booleovské hodnoty. Tyto booleovské hodnoty pak tvoří nové pole NumPy arr.
Pochopení těchto základních pojmů NumPy vám umožní efektivně pracovat a provádět různé matematické operace NumPy. Můžete se například podívat na naše video o tom, jak transformovat a kódovat adresy v Pythonu.
V něm jsme použili datové typy Python Pandas a NumPy ke geokódování domovských adres.
Manipulace s polem
V této části se dozvíte o různých technikách manipulace s tvarem pole v NumPy. Probereme přetváření, zřetězení, kopírování, rozdělování, přidávání/odebírání prvků, indexování a krájení.
Tyto techniky jsou klíčové pro efektivní práci s daty pole ve vašich projektech datové vědy.
Pojďme se ponořit do každé podsekce.
1. Přetváření
Přetvoření pole v NumPy je běžný úkol, který budete provádět. Možná budete muset změnit tvar pole, aby odpovídal požadavkům funkce nebo algoritmu.
Chcete-li změnit tvar pole, použijte funkci reshape() :
arr = np.array([1, 2, 3, 4, 5, 6])
new_arr = arr.reshape(2, 3)
Tím se vaše jednorozměrné pole převede na dvourozměrné pole se 2 řádky a 3 sloupci.
Poznámka: Ujistěte se, že nový tvar, který zadáte, má stejnou velikost (počet prvků pole) jako původní pole.
2. Kopírování
Prvky v jednom poli NumPy můžete zkopírovat do jiného pomocí metody copy() . Měli byste si uvědomit, že použití operátoru přiřazení '=' vytvoří mělkou kopii.
#Creating a shallow copy of a NumPy array
a = np.array([9, 6, 12, 16, 20])
b = a
b[0] = 19
print(a) #Output:[19, 6, 12, 16, 20]
print(b) #Output:[19, 6, 12, 16, 20]
Nové pole pouze odkazuje na staré pole v paměti systému. Obsahují stejné prvky a nejsou na sobě nezávislé.
Pomocí hluboké kopie vytvoříte nové pole NumPy, které obsahuje stejná data jako to staré, přičemž je na něm nezávislé.
#Creating a deep copy of a NumPy array
a = np.array([9, 6, 12, 16, 20])
b = np.copy(a)
b[0] = 19
print(a) #Output:[9, 6, 12, 16, 20]
print(b) #Output:[19, 6, 12, 16, 20]
3. Zřetězení
Občas může být potřeba sloučit dvě pole do jednoho. V NumPy můžete použít funkci concatenate() ke spojení polí podél existující osy:
import numpy as np
arr1 = np.array([1, 2, 3])
arr2 = np.array([4, 5, 6])
result = np.concatenate((arr1, arr2))
To kombinuje arr1 a arr2 do jednoho pole. Mějte na paměti, že zřetězená pole by měla mít stejný tvar, s výjimkou podél zadané osy.
4. Štípání
Rozdělení je opakem zřetězení. Pole můžete rozdělit na menší dílčí pole pomocí funkce split():
arr = np.array([1, 2, 3, 4, 5, 6])
result = np.split(arr, 3)
Tím se pole rozdělí na 3 stejně velké podpole. Ujistěte se, že zadaný počet rozdělení může rovnoměrně rozdělit velikost pole podél dané osy.
5. Přidávání/odebírání prvků
Přidání nebo odebrání prvků v poli NumPy lze provést pomocí funkcí append() a delete() . První můžete použít k připojení hodnot na konec pole, zatímco druhý odstraní prvek na zadaném indexu.
Zde je příklad:
arr = np.array([1, 2, 3])
arr = np.append(arr, [4, 5, 6]) # Appends values to the end of the array
arr = np.delete(arr, 0) # Removes the array element on index 0
Mějte na paměti, že pole NumPy mají pevnou velikost. Při použití append() nebo delete() se vytvoří nové pole a původní pole se nezmění.
6. Indexování
Operace indexování na polích NumPy můžete provádět stejným způsobem, jako byste je dělali na seznamech nebo n-ticích Pythonu. Podívejme se, jak můžete přistupovat k prvkům pole v daném poli nebo je měnit.
arr = np.array([1, 2, 3])
#Returns the array element on index 1
element_2 = b[1]
#Change the array element on index 0
arr[0]= 89
7. Krájení
Můžete také rozdělit pole NumPy a extrahovat nebo zobrazit část dat stejným způsobem, jako byste to dělali v Pythonu. Podívejme se na příklad níže:
arr1 = np.array([1, 2, 3, 4, 5, 6, 7])
arr2 = np.array([(1, 2, 3, 6, 0), (4, 5, 6, 11, 13)])
# To return the first 3 elements of arr1
print(arr1[0:3]) #Output: [1, 2, 3]
# To return the second row in arr2
b = arr2[1, : ].copy() #Output: [4, 5, 6, 11, 13]
Poznámka: Slicování vytvoří mělkou kopii, která stále odkazuje na hlavní pole. Takže jakákoli změna, kterou provedete v rozdělených datech, bude aplikována na hlavní pole a naopak.
Abyste tomu zabránili, můžete použít metodu copy() k vytvoření hluboké nezávislé kopie.
Elementární funkce
V této části se dozvíte o různých základních funkcích v NumPy, které vám usnadní úkoly analýzy dat. Probereme aritmetické operace, trigonometrii a exponenty a logaritmy.
1. Aritmetické operace
NumPy nabízí různé matematické operace na polích, díky kterým je práce s nimi jednoduchá a efektivní. pole matematika vektorová matematika
Některé z operací jsou:
Přidání: numpy.add(x1, x2)
Odečítání: numpy.subtract(x1, x2)
Násobení: numpy.multiply(x1, x2)
Dělení: numpy.divide(x1, x2)
Modul: numpy.mod(x1, x2)
Napájení: numpy.power(x1, x2)
Druhá odmocnina: numpy.sqrt(x)
Poznámka: Při použití těchto operací musí mít obě pole stejný tvar. Pokud ne, narazíte na chyby.
Pro určitá pole existuje výjimka díky funkci NumPy zvané vysílání. Tomu se budeme věnovat v pozdější části.
Tyto operace můžete provádět po jednotlivých prvcích na polích, což je činí vysoce efektivními pro manipulaci s daty ve velkém měřítku.
2. Trigonometrie
Goniometrické funkce hrají významnou roli v různých matematických a vědeckých výpočtech. NumPy poskytuje širokou škálu trigonometrických funkcí.
Některé ze základních funkcí jsou:
Sinus : numpy.sin(x)
Kosinus: numpy.cos(x)
Tangenta: numpy.tan(x)
Arcsine: numpy.arcsin(x)
Arcosine: numpy.arccos(x)
Arktangens : numpy.arctan(x)
Tyto funkce bezproblémově spolupracují s poli, což vám usnadňuje provádění vektorizovaných výpočtů na velkých souborech dat.
3. Exponenty a logaritmy
Exponenty a logaritmy jsou klíčové pro různé numerické operace. NumPy poskytuje rozsáhlou sbírku funkcí pro práci s exponenty a logaritmy.
Některé z primárních funkcí jsou:
Exponenciální : numpy.exp(x)
Logaritmus (základ e): numpy.log(x)
Logaritmus (základ 10): numpy.log10(x)
Logaritmus (základ 2): numpy.log2(x)
Pomocí těchto funkcí můžete rychle provádět složité matematické operace s každým prvkem v poli. Díky tomu jsou vaše úlohy analýzy dat přístupnější a efektivnější.
Analýza pole
V této části probereme různé techniky analýzy polí a prvků polí v NumPy. Některé z klíčových funkcí, které pokryjeme, zahrnují agregační funkce, statistické funkce, vyhledávání a třídění.
1. Agregační funkce
NumPy poskytuje několik agregačních funkcí, které vám umožňují provádět operace s poli, jako je sčítání všech jejich prvků, nalezení minimální nebo maximální hodnoty a další:
sum: np.sum(vaše_pole) – Vypočte součet všech prvků v poli.
min: np.min(vaše_pole) – Najděte minimální prvek pole.
max: np.max(vaše_pole) – Najděte maximální prvek pole.
mean : np.mean(vaše_pole) – Vypočte průměr hodnot v poli.
medián : np.median(vaše_pole) – Najděte medián hodnot v poli.
2. Statistické funkce
NumPy má také řadu statistických funkcí, které vám pomohou analyzovat data:
std: np.std(vaše_pole) – Vypočte směrodatnou odchylku hodnot v poli.
var: np.var(vaše_pole) – Vypočítejte rozptyl hodnot v poli.
corrcoef : np.corrcoef(vaše_pole) – Vypočte korelační koeficient pole.
3. Hledání
Vyhledávání v polích NumPy lze provádět různými metodami:
argmin: np.argmin(vaše_pole) – Najděte index minimálního prvku pole.
argmax: np.argmax(vaše_pole) – Najděte index prvku maximálního pole.
kde: np.where(podmínka) – Vrátí indexy prvků v poli, které splňují danou podmínku.
4. Třídění
Prvky v poli můžete třídit pomocí následujících funkcí:
sort : np.sort(vaše_pole) – Seřadí prvky v poli vzestupně.
argsort: np.argsort(vaše_pole) – Vrátí indexy, které by seřadily pole.
Pomocí těchto funkcí a technik můžete pohodlně analyzovat a manipulovat se svými poli NumPy, abyste odkryli cenné poznatky a podpořili své úsilí o analýzu dat.
Pokročilé funkce
V této části prozkoumáme některé pokročilé funkce v NumPy, které vám pomohou efektivněji pracovat s vašimi daty. Budeme se zabývat funkcemi Broadcasting a Linear Algebra.
1. Vysílání
Broadcasting je výkonná funkce NumPy, která vám umožňuje provádět operace na polích různých tvarů a velikostí. Funguje tak, že automaticky rozšíří rozměry menšího pole tak, aby odpovídalo většímu poli, což usnadňuje provádění operací po prvcích.
Zde je příklad:
import numpy as np
A = np.array([1, 2, 3])
B = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
C = A + B
V tomto příkladu je 1D pole A vysíláno tak, aby odpovídalo tvaru 2D pole B, což umožňuje přidávání prvků.
Při práci s vysíláním mějte na paměti tato pravidla:
Rozměry polí musí být kompatibilní (buď stejná velikost nebo jedna z nich je 1).
Vysílání je aplikováno od koncových rozměrů a pracuje směrem k předním rozměrům.
2. Lineární algebra
NumPy poskytuje několik funkcí lineární algebry, které mohou být užitečné při práci s vícerozměrnými poli. Některé z těchto funkcí zahrnují:
np.dot(A, B): Vypočítá bodový součin dvou polí.
np.linalg.inv(A) : Vypočítá inverzní hodnotu čtvercové matice.
np.linalg.eig(A) : Vypočítá vlastní hodnoty a vlastní vektory čtvercové matice.
np.linalg.solve(A, B): Řeší lineární systém rovnic, kde A je matice koeficientů a B je konstantní matice.
Před provedením těchto operací nezapomeňte vždy zkontrolovat, zda jsou vaše matice kompatibilní .
Vstup a výstup
V této části prozkoumáme, jak ukládat a načítat pole, a také jak číst a zapisovat soubory pomocí NumPy.
1. Ukládání a načítání polí
Chcete-li pole uložit, můžete použít funkci np.save() od NumPy. Tato funkce bere jako dva hlavní argumenty název souboru a pole.
import numpy as np
arr = np.array([1, 2, 3])
np.save('my_array.npy', arr)
Chcete-li načíst uložené pole, použijte funkci np.load() a jako argument uveďte název souboru.
loaded_array = np.load('my_array.npy')
print(loaded_array)
# Output: array([1, 2, 3])
Můžete také uložit a načíst více polí pomocí funkcí np.save() a np.load() .
2. Čtení a zápis do textových souborů
NumPy poskytuje funkce pro čtení a zápis textových souborů s poli, jako je np.loadtxt() a np.savetxt() . Tyto funkce můžete použít k ukládání a načítání dat z formátů souborů, jako je soubor txt nebo CSV.
Chcete-li načíst textový soubor do pole, použijte funkci np.loadtxt() . Jako hlavní argument bere název souboru a také podporuje volitelné argumenty pro určení oddělovače, dtype a dalších.
arr_from_txt = np.loadtxt('data.txt', delimiter=',')
print(arr_from_txt)
Chcete-li načíst data ze souboru CSV, můžete také použít funkci np.loadtxt() . Ujistěte se však, že oddělovač je vždy nastaven na čárku „ , “ .
Chcete-li zapsat pole do textového souboru, použijte funkci np.savetxt() . Tato funkce bere název souboru a pole jako dva hlavní argumenty, za nimiž následují volitelné argumenty, jako je oddělovač a záhlaví.
arr_to_txt = np.array([[1, 2, 3], [4, 5, 6]])
np.savetxt('output_data.txt', arr_to_txt, delimiter=',')
Tyto vstupní a výstupní funkce vám umožňují efektivně pracovat s poli a textovými soubory ve vašich úlohách zpracování dat a manipulace pomocí NumPy.
Níže si stáhněte svůj Cheat Sheet
Závěrečné myšlenky
No, to je vše, co potřebujete vědět, abyste mohli začít s knihovnou Numpy Python! Při práci s knihovnou můžete také použít cheat pro Python Numpy jako praktickou referenci.
Pro pokročilejší funkce se můžete podívat na dokumentaci NumPy . Můžete se také podívat na tuto zábavu, kterou jsme dali dohromady pro nové i zkušené vývojáře.
Hodně štěstí!
Zjistěte, proč je důležité mít vyhrazenou tabulku s daty v LuckyTemplates, a naučte se nejrychlejší a nejefektivnější způsob, jak toho dosáhnout.
Tento stručný návod zdůrazňuje funkci mobilního hlášení LuckyTemplates. Ukážu vám, jak můžete efektivně vytvářet přehledy pro mobily.
V této ukázce LuckyTemplates si projdeme sestavy ukazující profesionální analýzy služeb od firmy, která má více smluv a zákaznických vztahů.
Pozrite si kľúčové aktualizácie pre Power Apps a Power Automate a ich výhody a dôsledky pre platformu Microsoft Power Platform.
Objavte niektoré bežné funkcie SQL, ktoré môžeme použiť, ako napríklad reťazec, dátum a niektoré pokročilé funkcie na spracovanie alebo manipuláciu s údajmi.
V tomto tutoriálu se naučíte, jak vytvořit dokonalou šablonu LuckyTemplates, která je nakonfigurována podle vašich potřeb a preferencí.
V tomto blogu si ukážeme, jak vrstvit parametry pole s malými násobky, abychom vytvořili neuvěřitelně užitečné přehledy a vizuály.
V tomto blogu se dozvíte, jak používat funkce hodnocení LuckyTemplates a vlastní seskupování k segmentaci ukázkových dat a jejich seřazení podle kritérií.
V tomto tutoriálu se budu zabývat konkrétní technikou, jak zobrazit kumulativní součet pouze do určitého data ve vašich vizuálech v LuckyTemplates.
Naučte se vytvářet a přizpůsobovat Bullet grafy v LuckyTemplates, které se používají hlavně pro měření výkonu oproti cílovým nebo předchozím rokům.