Tabulky proporcí a četností v Excelu
Chtěli jsme se ponořit do tabulek četností v Excelu a také do tabulek proporcí. Podívejte se, co to je a kdy je použít.
Při programování se můžete setkat se situacemi, kdy proměnná nemá hodnotu. Tyto instance jsou běžně reprezentovány speciální hodnotou známou jako null. Mnoho programovacích jazyků, jako je C, Java, JavaScript a PHP, má vestavěné hodnoty null, ale Python používá mírně odlišný přístup k reprezentaci null proměnných.
V Pythonu je ekvivalentem null None. Je to speciální konstanta v Pythonu, která představuje nepřítomnost hodnoty nebo nulové hodnoty. Je to instance vlastního datového typu — NoneType. Není to totéž jako 0, False nebo prázdný řetězec, protože je to vlastní datový typ, který nepředstavuje žádnou hodnotu nebo žádný objekt.
Pokud se učíte Python, je důležité porozumět konceptu Žádné v Pythonu. Poskytuje vám prostředky k vytvoření efektivního kódu, který zvládne okrajové případy. Při prozkoumávání programování v Pythonu narazíte na různé scénáře, kde se žádný ukáže jako zásadní.
V tomto článku prozkoumáme, co je v Pythonu hodnota null nebo žádná. Projdeme si příklady a případy použití, které vám pomohou upevnit koncept nulových hodnot. Nejprve však porozuměme konceptu hodnot None nebo Null v Pythonu.
Obsah
Co je Null v Pythonu?
Abyste porozuměli null v Pythonu, musíte pochopit následující dva koncepty:
Rozdíl mezi None a Null
Žádný typ
1. Rozdíl mezi None a Null
Null se v mnoha programovacích jazycích používá k označení prázdného ukazatele nebo neznámé hodnoty. V těchto jazycích můžete definovat hodnotu null jako 0.
V Pythonu však místo null používáte klíčové slovo None k definování prázdných objektů a proměnných. Žádný slouží některým stejným účelům jako null v jiných jazycích. Ale je to samostatná entita a není definována jako 0 nebo jakákoli jiná hodnota.
2. ŽádnýTyp
V Pythonu je None jedinečný druh datové struktury, klasifikovaný pod typem nazvaným NoneType. Je to občan první třídy, což znamená, že jej můžete přiřadit k proměnným. Můžete to také předat jako argument a vrátit se jako výsledek.
Když proměnné přiřadíte hodnotu None, stane se objektem NoneType. None není ekvivalentní prázdnému řetězci, booleovské hodnotě False nebo číselné hodnotě 0. Znamená to jednoduše nulovou proměnnou nebo nic.
Nyní, když rozumíte terminologii související s none, pojďme se podívat, jak můžete None použít pro různé případy použití!
Jak používat None v Pythonu
V Pythonu můžete None použít pro řadu případů použití. V této části se podíváme na 4 důležité případy použití None v Pythonu.
Konkrétně se podíváme na následující případy použití:
Přiřazení None k proměnným
Použití Žádné jako výchozí parametr
Kontrola žádné s operátorem identity
Manipulace s chybějícími hodnotami
Jdeme do toho!
1. Přiřazení Žádné k proměnným
Proměnným můžete přiřadit None, abyste označili absenci hodnoty.
Například:
x = None
Žádné zde znamená, že hodnota x chybí nebo ještě nebyla stanovena platná hodnota.
2. Použití Žádné jako výchozí parametr
Můžete použít None jako výchozí hodnotu parametru k definování funkcí. To je užitečné, když chcete povolit volitelné argumenty pro výchozí parametry ve vašich funkcích.
Následující kód ukazuje, jak použít None jako výchozí parametr:
def greet(name=None):
if name is None:
print("Hello, World!")
else:
print(f"Hello, {name}!")
# Call the function without providing a name
greet()
# Call the function with a name
greet("Alice")
Když spustíte tento kód, zobrazí se "Hello, World!" když zavoláte greet() bez jakéhokoli argumentu. Ale když zavoláte greet() s argumentem, jako greet(“Alice”), vypíše se “Ahoj, Alice!”. To umožňuje funkci mít volitelné argumenty.
3. Kontrola, zda není žádná s operátorem identity
Operátor identity is můžete použít ke kontrole, zda je proměnná Žádná. To vám umožní porovnat, zda dvě proměnné odkazují na stejný objekt.
Níže je uveden příklad, který vám ukáže, jak používat operátor identity:
# Define a variable with no value
var1 = None
# Define a variable with a value
var2 = "Hello, World!"
# Check if var1 is None
if var1 is None:
print("var1 is None")
else:
print("var1 is not None")
# Check if var2 is None
if var2 is None:
print("var2 is None")
else:
print("var2 is not None")
V tomto kódu var1 je None vrátí True, protože var1 byla přiřazena hodnota None. Na druhou stranu var2 is None vrátí hodnotu False, protože var2 má hodnotu řetězce.
Výstup pro skript je uveden níže:
4. Zpracování chybějících hodnot
Můžete se také setkat s údaji s chybějícími hodnotami. Tyto chybějící hodnoty můžete reprezentovat pomocí None a podle toho s nimi zacházet.
Následuje příklad při práci se seznamem čísel:
# Define a list of data with some missing values
data = [1, 2, 3, None, 5, None, 7, 8, None, 10]
def calculate_average(data):
# Filter out None values using list comprehension
valid_data = [value for value in data if value is not None]
# Calculate average if valid_data is not empty
average = sum(valid_data) / len(valid_data) if valid_data else None
return average
# Call the function and print the result
print(calculate_average(data))
Tím se vypočítá součet všech hodnot, které nejsou v seznamu, a vydělí se počtem hodnot, které nejsou žádné. Pokud jsou všechny hodnoty v seznamu None, funkce vrátí None.
Výstup je uveden níže:
Pomocí None a různých výše zmíněných technik můžete efektivně zvládnout chybějící hodnoty v Pythonu.
Chcete-li se dozvědět více o zpracování chybějících hodnot v Pythonu, podívejte se na následující video:
Některé další případy použití žádné v Pythonu
Kromě případů použití popsaných v části výše existují také některé další případy použití Žádné. Tyto případy použití nejsou často používané, ale je dobré je znát a v některých scénářích jsou užitečné.
V této části se podíváme na následující 3 případy použití Žádné v Pythonu:
Použití None v návratových příkazech
Použití Žádné jako příznaky
Použití Žádné pro vlastní objekty
Pojďme se do toho ponořit!
1. Použití Žádné jako prohlášení o vrácení
V příkazech return můžete použít None, zejména když funkce dokončí své provádění, aniž by našla konkrétní výsledek.
Například funkce, která hledá prvek v seznamu, může vrátit Žádné, pokud prvek není nalezen. Následující kód ukazuje použití None jako návratové hodnoty:
# Define a list
numbers = [10, 20, 30, 40, 50]
def find_in_list(lst, target):
for i, value in enumerate(lst):
if value == target:
return i
return None
# Search for a number in the list
print(find_in_list(numbers, 30))
print(find_in_list(numbers, 60))
V tomto kódu funkce find_in_list iteruje přes vstupní seznam lst . Pokud nalezne cílovou hodnotu, vrátí index této hodnoty. Pokud po kontrole celého seznamu nenalezne cílovou hodnotu, vrátí Žádné.
Výstup je uveden níže:
2. Použití Žádné jako příznaky
Můžete také použít None jako příznak k označení stavu proměnné. Můžete jej například použít k označení, zda je hodnota neinicializovaná, nebo ke sledování zvláštní podmínky v programu.
Následuje příklad toho, jak můžete použít None jako příznak:
def find_first_even_number(numbers):
# Initialize the first_even_number to None
first_even_number = None
# Iterate over the list of numbers
for number in numbers:
# If we find an even number and first_even_number is still None
if number % 2 == 0 and first_even_number is None:
first_even_number = number
break
return first_even_number
numbers = [1, 3, 5, 7, 8, 10]
# Call the function and print the result
print(find_first_even_number(numbers)) # Outputs: 8
V tomto kódu se None používá jako příznak, který označuje, že jsme v seznamu ještě nenašli sudé číslo.
Pokud je první_sudé_číslo za znakem stále žádné, znamená to, že v seznamu nebyla žádná sudá čísla.
Pokud first_even_number není None, obsahuje první sudé číslo ze seznamu.
3. Použití Žádné pro vlastní objekty
None můžete použít také pro vlastní, uživatelem definované objekty. Při práci s atributy, vlastnostmi nebo metodami, které vracejí jiné objekty, můžete použít Žádné k označení absence hodnoty nebo vztahu.
Následující příklad ukazuje, jak můžete použít None pro uživatelem definované objekty:
class Person:
def __init__(self, name):
self.name = name
self.best_friend = None
def set_best_friend(self, person):
self.best_friend = person
def get_best_friend_name(self):
if self.best_friend is not None:
return self.best_friend.name
else:
return None
# Create two Person objects
alice = Person('Alice')
bob = Person('Bob')
# Alice's best friend is Bob
alice.set_best_friend(bob)
print(alice.get_best_friend_name())
# Charlie doesn't have a best friend
charlie = Person('Charlie')
print(charlie.get_best_friend_name())
V tomto příkladu je None použita jako výchozí hodnota pro atribut best_friend instance Person. Metoda get_best_friend_name vrací jméno nejlepšího přítele, pokud existuje, a None, pokud neexistuje.
Výše uvedený kód vypíše následující:
Speciální funkce a techniky pro nulový objekt
Nyní probereme některé speciální funkce a techniky, které můžete použít v souvislosti s NoneType a zpracováním hodnot null. Probereme dvě hlavní podsekce:
Funkce ID
Funkce Getattr
1. Funkce ID
Funkce id() v Pythonu je vestavěná funkce , která vrací identitu objektu. Tato identita je jedinečné a konstantní celé číslo přiřazené objektu během jeho životnosti.
To umožňuje rozlišovat mezi objekty s různými adresami paměti. Funkce je užitečná zejména při práci s objekty NoneType, protože ji lze použít ke kontrole přítomnosti None v proměnných nebo výrazech.
Následuje příklad použití funkce id() :
a = None
b = None
c = 42
print(id(a)) # Output: some unique integer representing None
print(id(b)) # Output: same integer as id(a)
print(id(c)) # Output: different integer from id(a) and id(b)
Výstup tohoto kódu je uveden níže:
Protože None je prvotřídní občan v Pythonu, má svou vlastní jedinečnou identitu. To znamená, že můžete použít funkci id() k porovnání proměnných s None pomocí jejich identit:
if id(a) == id(None):
print("a is None")
Výstup je uveden níže:
2. Funkce Getattr
Funkce getattr () je další vestavěná funkce Pythonu, která vám umožňuje přistupovat k atributům objektu podle názvu.
Daný objekt a řetězec vrátí getattr() hodnotu pojmenovaného atributu nebo objektu None, pokud atribut neexistuje.
To vám může být užitečné při práci s hodnotami null, zejména v případech, kdy potřebujete získat přístup k atributům, které mohou chybět.
Následuje příklad použití funkce getattr() :
class ExampleClass:
def __init__(self, x, y):
self.x = x
self.y = y
example_obj = ExampleClass(3, 4)
# Access attribute using getattr
print(getattr(example_obj, "x")) # Output: 3
print(getattr(example_obj, "z", None)) # Output: None
Ve výše uvedeném příkladu používáme getattr() k přístupu k atributu x a pokusu o přístup k neexistujícímu atributu z.
Poskytnutím výchozí hodnoty None zabráníme AttributeError a místo toho obdržíme objekt None.
Výsledkem je, že tato funkce umožňuje bezpečný přístup k atributům i v případě přítomnosti prázdných objektů nebo chybějících atributů.
Výstup tohoto kódu je uveden níže:
Porovnání Null v jiných programovacích jazycích
Na začátku tohoto článku jsme provedli krátké srovnání Null v Pythonu a Null v jiných programovacích jazycích.
V této části toto téma posuneme vpřed a porovnáme Null v jiných oblíbených programovacích jazycích s Null v Pythonu. To vám pomůže lépe porozumět konceptu None v Pythonu, pokud pocházíte z jiného programátorského prostředí.
Jdeme do toho!
1. Null v Javě
V Javě představuje klíčové slovo „null“ odkaz, který neukazuje na žádný objekt nebo hodnotu. Používá se k označení nepřítomnosti hodnoty a často se používá jako výchozí hodnota pro odkazy na objekty.
Například:
String myString = null; // Declare a String object with a null reference
Null v Javě se liší od None v Pythonu. Null představuje nedostatek objektu, zatímco None je skutečný objekt NoneType.
2. Null v C
V programovacím jazyce C je null reprezentován nulovým ukazatelem, který označuje neinicializovaný nebo prázdný ukazatel. Nulový ukazatel je často reprezentován celočíselnou hodnotou 0.
Následuje příklad použití nulového ukazatele v C:
int *myPointer = NULL; // Declare an integer pointer with a null reference
Null v C není přidružen ke konkrétnímu datovému typu. Slouží jako zástupný symbol pro neinicializované nebo prázdné ukazatele.
3. Null v PHP
V PHP představuje null proměnnou bez hodnoty nebo bez odkazu. Stejně jako v jiných jazycích se null používá k označení neinicializovaných nebo prázdných proměnných.
Následuje příklad Null v PHP:
$myVar = NULL; // Declare a variable with a null reference
Hodnota null PHP není objekt specifického datového typu, ale spíše speciální konstanta, která představuje absenci hodnoty.
Závěrečné myšlenky
Na vaší cestě programátora Pythonu je velmi důležité naučit se hodnoty None. Je to jedinečná funkce, která slouží jako způsob, jakým Python říká „zde nic“.
Je to nezbytné pro vyjádření absence hodnoty. Pochopením a správným používáním None budete schopni vytvářet flexibilnější funkce s volitelnými argumenty a efektivně zpracovávat chybějící data.
Kromě toho hodnoty Žádné umožňují vašim funkcím jasně komunikovat, když něco chybí nebo když není splněna podmínka. Pochopení None je navíc zásadní při práci s databázemi, uživatelsky definovanými objekty nebo když potřebujete inicializovat proměnné.
Tato příručka o hodnotách None v Pythonu ukazuje některé důležité scénáře, kdy budete chtít ve svém kódu použít objekt None.
Chtěli jsme se ponořit do tabulek četností v Excelu a také do tabulek proporcí. Podívejte se, co to je a kdy je použít.
Zistite, ako stiahnuť a nainštalovať DAX Studio a Tabular Editor 3 a ako ich nakonfigurovať na použitie v LuckyTemplates a v Exceli.
Tento blog obsahuje vizualizáciu Shape Map pre priestorovú analýzu v LuckyTemplates. Ukážem vám, ako môžete efektívne využiť túto vizualizáciu s jej funkciami a prvkami.
V tomto návode predstavujem jedinečný nápad týkajúci sa finančného výkazníctva, ktorý spočíva v prideľovaní výsledkov na vopred určené šablóny tabuliek v rámci LuckyTemplates.
Vytvářejte míry DAX v LuckyTemplates pomocí existujících mír nebo vzorců. Tomu říkám technika větvení opatření.
V tomto blogu preskúmajte množinu údajov LuckyTemplates, najvýkonnejšie volanie funkcií, ktoré vám prináša tisíce funkcií M a DAX na dosah ruky.
V dnešnom návode sa podelím o niekoľko techník modelovania údajov o tom, ako lepšie usporiadať vaše merania DAX pre efektívnejší pracovný tok.
LuckyTemplates je skvelý nástroj pre finančné výkazníctvo. Tu je návod, ako vytvoriť prispôsobené tabuľky pre váš finančný dashboard LuckyTemplates.
V tomto návode sa bude diskutovať o toku jazyka Power Query a o tom, ako môže pomôcť vytvoriť hladkú a efektívnu zostavu údajov.
Budu diskutovat o jedné z mých oblíbených technik kolem vlastních ikon LuckyTemplates, která používá vlastní ikony dynamickým způsobem ve vizuálech LuckyTemplates.