Змініть формати дати за допомогою редактора Power Query
У цьому посібнику ви дізнаєтеся, як перетворити текст у формат дати за допомогою редактора Power Query в LuckyTemplates.
Усічення числа з плаваючою комою є звичайною операцією, з якою багато програмістів стикаються в різних програмах. Процес передбачає видалення десяткового знака з плаваючою речовиною, залишаючи лише цілу частину. Це цінна техніка для спрощення обчислень, покращення читабельності вихідних даних і зменшення можливих помилок округлення.
Щоб скоротити значення з плаваючою точкою в Python, ви можете використовувати функцію math.trunc(), десятковий модуль або операцію з рядками. Використовуючи ці прийоми, розробники Python можуть гнучко та точно адаптувати процес скорочення до своїх конкретних вимог.
У цій статті ми розглянемо, як можна застосувати скорочення до . Ми заглибимося в різні практичні приклади, представивши комплексний погляд на те, як використовувати цю техніку для досягнення максимального ефекту.
Давайте почнемо з розгляду основних концепцій і методів скорочення рядків, чисел і структур даних у Python.
Зміст
Основи Python Truncate
У цьому розділі ми розглянемо визначення скорочення, розглянемо функції Python для скорочення та навчимося скорочувати десяткові знаки та числа з плаваючою точкою.
1. Визначення Truncate в Python
Усічення — це процес скорочення числа шляхом видалення десяткового знака. Це важливе поняття в інформатиці та математиці, яке використовується для скорочення цифр до простішої форми без зміни їх значення.
2. Як використовувати функцію усічення Python
У Python є кілька способів скоротити абсолютні значення. Одним із поширених методів скорочення є використання функції math.trunc() , яка безпосередньо видаляє десяткові знаки з двійкового значення з плаваючою комою.
Ось приклад:
import math
float1 = 123.356
float2 = -2434.545
print(math.trunc(float1))
print(math.trunc(float2))
Вихід:
123
-2434
Цей метод дає результати, подібні до функції int() , яка також скорочує задане число, видаляючи десяткові знаки.
3. Як скоротити десяткові знаки та числа з плаваючою точкою в Python
У деяких випадках вам може знадобитися скоротити число з плаваючою точкою до певної кількості десяткових цифр. У таких випадках для округлення чисел можна використовувати функцію round () . Однак зауважте, що функція round() лише округлює число, а не скорочує його.
Якщо ви хочете скоротити до певної десяткової крапки, ви можете скористатися таким підходом:
def truncate_float(float_number, decimal_places):
multiplier = 10 ** decimal_places
return int(float_number * multiplier) / multiplier
float3 = 3.14159
result = truncate_float(float3, 2)
print(result)
Вихід:
3.14
У наведеному вище прикладі функція truncate_float() приймає два параметри — число float, яке буде скорочено, і бажану кількість десяткових ком.
Він використовує множник, щоб спочатку зсунути десяткову крапку з плаваючою точкою, потім перетворює результат у ціле число (фактично скорочуючи число) і, нарешті, ділить ціле число на множник, щоб відновити десяткову крапку до початкової позиції.
Майте на увазі, що робота з числами з плаваючою комою в Python може призвести до певної неточності в обчисленнях через природу арифметики з плаваючою комою. Тому, коли точність і точність є вирішальними, розгляньте можливість використання десяткового модуля.
Гаразд, це основи скорочення значень у Python. У наступному розділі ми розглянемо, як можна скоротити значення за допомогою математичної бібліотеки та інших функцій Python.
Усічення в Python за допомогою математичної бібліотеки та функцій
У сфері програмування Python оптимізація часто є ключовою. Використання математичної бібліотеки Python і її вбудованих функцій може значно підвищити продуктивність, особливо при роботі з великими наборами даних або складними обчисленнями.
Цей розділ присвячено вивченню того, як ми можемо використовувати «математичну» бібліотеку та її надійні функціональні можливості для завдань скорочення — ефективного зменшення або обмеження розміру даних — у Python.
1. math.trunc()
Математична бібліотека Python надає кілька функцій для роботи з плаваючими значеннями, одна з яких math.trunc() . Ця функція повертає скорочене значення даного числа з плаваючою точкою, фактично видаляючи його дробову частину та залишаючи лише цілу частину.
Ось приклад використання math.trunc() :
import math
number = 3.7
truncated_number = math.trunc(number)
print("Original number:", number)
print("Truncated number:", truncated_number)
Вихід:
3
3.7
math.trunc() округляє число до нуля. Для додатних чисел вона працює як функція підлоги, а для від’ємних чисел – як функція стелі.
2. math.floor() і math.ceil()
Окрім math.trunc() , математична бібліотека також надає функції для округлення чисел різними способами, наприклад функції math.floor() і math.ceil() .
Функція math.floor () округлює значення з плаваючою комою до найближчого цілого числа, тоді як math.ceil() округлює до найближчого цілого числа.
import math
# Example using math.floor() function
x = 3.7
y = 9.2
floor_x = math.floor(x)
floor_y = math.floor(y)
print("Floor of x:", floor_x)
print("Floor of y:", floor_y)
Вихід:
Floor of x: 3
Floor of y: 9
Ось ілюстрація функції math.floor().
Цей фрагмент коду демонструє використання функції math.ceil() :
import math
# Example usage of math.ceil()
x = 3.7
y = 9.2
z = -4.5
ceil_x = math.ceil(x)
ceil_y = math.ceil(y)
ceil_z = math.ceil(z)
# Output the results
print("Ceiling of", x, "is", ceil_x)
print("Ceiling of", y, "is", ceil_y)
print("Ceiling of", z, "is", ceil_z)
Вихід:
Ceiling of 3.7 is 4
Ceiling of 9.2 is 10
Ceiling of -4.5 is -4
3. Перетворення плаваючого значення за допомогою int()
Ще один спосіб обрізати значення з плаваючою точкою — це використовувати вбудовану функцію int() . Коли значення передається в float, воно перетворює його на ціле число шляхом скорочення десяткової частини.
Цей підхід може бути зручнішим для простих випадків усікання, оскільки не вимагає імпорту математичної бібліотеки.
float5 = 7.65
float6 = -3.14
print(int(float5))
print(int(float6))
Вихід:
7
-3
Однак важливо пам’ятати, що функція int() не еквівалентна math.floor() або math.ceil() , оскільки вона лише обрізає число без урахування його знака.
Ось ілюстрація наведеної вище функції int() для скорочення float у редакторі коду;
Таким чином, математична бібліотека Python пропонує кілька функцій для роботи зі значеннями з плаваючою точкою, включаючи усікання, округлення вниз і округлення вгору. Математична бібліотека — це важливий інструмент, на який можна покластися, коли потрібно виконувати складні математичні операції.
У той час як функції int() і math.trunc() пропонують прості способи скорочення значень з плаваючою комою, десятковий модуль забезпечує більш потужний і точний підхід, тому давайте розглянемо це в наступному розділі.
Як скоротити значення в Python за допомогою десяткового модуля
«Decimal» модуль Python є потужним інструментом, який пропонує точне оброблення десяткових чисел, функція, яка стає особливо зручною, коли потрібне скорочення.
У цьому розділі розглядаються практичні застосування цього модуля для скорочення значень у Python. Ми розглянемо покрокові приклади та надамо глибоке розуміння концепцій цієї ефективної та точної техніки маніпулювання даними.
1. Використання методу квантування
Метод квантування класу Decimal є універсальним інструментом для скорочення десяткових екземплярів. Цей метод дозволяє розробникам задавати потрібну точність і режим округлення, забе��печуючи точне скорочення.
Розглянемо такий приклад:
from decimal import Decimal, ROUND_DOWN
number = Decimal('3.14159')
truncated = number.quantize(Decimal('1.'), rounding=ROUND_DOWN) print(truncated)
Вихід:
3
У цьому прикладі метод квантування застосовано до номера екземпляра Decimal з точністю до одного знака після коми та режимом округлення ROUND_DOWN , який фактично скорочує значення.
2. Використання методу to_integral_value
Ще один корисний метод, наданий класом Decimal , це to_integral_value . Цей метод повертає найближче ціле число до вказаного десяткового значення, фактично скорочуючи десяткові знаки.
Метод to_integral_value дозволяє розробникам також вказати режим округлення.
Ось приклад:
from decimal import Decimal, ROUND_DOWN
number = Decimal('3.14159')
truncated = number.to_integral_value(rounding=ROUND_DOWN) print(truncated)
Вихід:
3
У цьому прикладі метод to_integral_value використовується з режимом округлення ROUND_DOWN , що призводить до скорочення.
3. Застосування методу нормалізації
Метод normalize класу Decimal надає спосіб налаштувати експоненту та масштаб десяткового примірника. Використовуючи цей метод, розробники можуть ефективно скорочувати десяткові знаки.
Розглянемо такий приклад:
from decimal import Decimal
number = Decimal('3.14159')
truncated = number.normalize()
print(truncated)
Вихід:
3.14159
У цьому прикладі метод нормалізації застосовано до числа екземпляра Decimal , що призводить до того самого значення без десяткових знаків.
Далі розглянемо способи скорочення рядків і списків у Python.
Методи скорочення для рядків і списків у Python
У цьому розділі ми обговоримо різні прийоми скорочення рядків і списків у функціях Python. Ми розглянемо наступні підрозділи: методи скорочення рядків і скорочення списку .
1. Методи скорочення рядків
У Python існує кілька способів скоротити a, включаючи використання str.format , нарізку та f-рядки .
1) Використання str.format : цей метод дозволяє обрізати рядок, вказавши значення точності. Наприклад:
truncated_string = '{:.5}'.format('aaabbbccc')
print(truncated_string)
Вихід:
aaabb
2) Використання фрагментів : за допомогою нотації фрагментів ви можете вибрати підрядок вихідного рядка. Наприклад:
my_string = 'aaabbbccc'
truncated_string = my_string[:5]
print(truncated_string)
Вихід:
aaabb
3) Using f-strings: With f-strings, the truncation can be performed inline within the string. For example:
my_string = 'aaabbbccc'
truncated_string = f'{my_string[:5]}'
print(truncated_string)
Output:
aaabb
2. List Truncation
There are several ways to truncate lists in Python, such as slicing and using list comprehensions.
1) Using slicing: Slicing allows you to select a range of elements in a list. For example:
my_list = [1, 2, 3, 4, 5, 6, 7, 8, 9]
truncated_list = my_list[:5]
print(truncated_list)
Output:
[1, 2, 3, 4, 5]
2) Using list comprehensions: List comprehensions allow you to create a new list by iterating over an existing list and applying a condition or operation. For example, to truncate tuples in a list:
my_list = [('apple', 3), ('orange', 5), ('banana', 2)]
truncated_list = [(fruit, count) for fruit, count in my_list if count < 5]
print(truncated_list)
Output:
[('apple', 3), ('banana', 2)]
Now that we’ve covered the various techniques for truncating strings and lists using Python, let’s take a look at how you can do the same using libraries like NumPy and pandas.
How to Use NumPy and pandas to Truncate Values in Python
When it comes to numerical and data analysis in Python, the names ‘NumPy’ and ‘pandas’ undoubtedly resonate among developers. These powerful libraries have transformed the landscape of data manipulation by providing extensive functionality for array processing, data handling, and much more.
In this section, we’ll explore common ways to truncate elements in Python using NumPy and pandas DataFrames.
1. Truncation in Python Using NumPy
NumPy offers a simple, built-in function called trunc which allows you to truncate values to the nearest whole number.
The trunc function eliminates the fractional part of the input, returning only the integer.
import numpy as np
values = np.array([1.234, 5.678, 9.012])
truncated_values = np.trunc(values)
print(truncated_values)
Output:
array([1., 5., 9.])
Here are some key points about the trunc function:
It works element-wise, meaning it can truncate each element in an array or a list.
The data type (dtype) of the output array will be the same as the input array.
The function can be applied to different data structures, such as , tuples, or arrays, as long as the elements are numeric.
2. Using DataFrame and Loc for Truncation in Python
Pandas DataFrame is a powerful, flexible data structure for handling large, structured datasets. You can use the DataFrame.truncate() function to truncate a DataFrame based on the index.
To see a practical demonstration of how to load datasets in Python, watch this YouTube video:
Alternatively, you can use the loc property to filter rows or columns based on a specific condition.
import pandas as pd
data = {'A': [1.234, 5.678, 9.012], 'B': [4.567, 8.901, 2.345]}
df = pd.DataFrame(data)
# Truncating based on the index
truncated_df = df.truncate(before=1, after=2)
print(truncated_df)
Output:
A B
1 5.678 8.901
2 9.012 2.345
Використовуючи loc і умову, ми також можемо досягти скорочення на основі значень:
# Condition to truncate values in column 'A'
condition = (df['A'] < 6)
# Truncating DataFrame based on condition
truncated_df = df.loc[condition]
print(truncated_df)
Вихід:
A B
0 1.234 4.567
1 5.678 8.901
У цьому прикладі було використано логічну умову для фільтрації рядків у DataFrame. Залежно від вашого випадку використання ви можете застосувати різні умови та операції за допомогою loc .
Давайте тепер розглянемо практичне застосування скорочення в Python.
3 Практичні застосування скорочення в Python
Розуміння концепції скорочення в Python і відповідних технік — це лише половина рівняння. Інша половина передбачає ефективне застосування цих знань у практичних сценаріях.
У цьому розділі ми переходимо від теорії до практики, ілюструючи, як можна використовувати скорочення для оптимізації коду Python у реальних програмах.
Усічення корисне в різних програмах, деякі з яких:
1. Фінансові розрахунки : під час роботи з валютами зазвичай скорочують десяткові значення, щоб відобразити фактичні гроші, де враховуються лише центи, а менші одиниці не мають значення.
price = 49.987
truncated_price = int(price * 100) / 100
print(truncated_price)
Вихід:
49.98
2. Агрегація даних : усікання також можна використовувати для агрегування даних відповідно до певного критерію. Наприклад, агрегування середнього значення добової температури на основі цілих значень.
temperature_data = [22.3, 23.9, 24.8, 23.4, 22.7, 24.1, 24.6]
truncated_temperature = [int(temp) for temp in temperature_data]
mean_temperature = sum(truncated_temperature) / len(truncated_temperature)
print(mean_temperature)
Вихід:
23.142857142857142
3. Впорядкування елементів : іноді елементи потрібно впорядкувати на основі певного правила скорочення. Цього можна досягти за допомогою параметра key у функції sorted() Python .
data = [4.8, 3.2, 2.9, 7.5, 6.1, 9.0, 1.5]
sorted_data = sorted(data, key=lambda x: int(x))
print(sorted_data)
Вихід:
[1.5, 2.9, 3.2, 4.8, 6.1, 7.5, 9.0]
Ці реальні додатки скорочення демонструють безцінне значення в різних сферах, таких як аналіз даних і машинне навчання.
Проте виникає важливе питання: як порівняти методи скорочення та який метод слід використовувати для певного сценарію? Щоб відповісти на це питання, наш наступний розділ зануриться в порівняльний аналіз різних методів скорочення, які ми обговорювали.
Порівняння методів усічення в Python
Щоб порівняти різні методи скорочення з точки зору продуктивності та точності, давайте розглянемо великий набір даних і виміряємо час виконання для кожного підходу.
import random
import time
from decimal import Decimal, ROUND_DOWN
import math
# Generate a large dataset of floating-point values
data = [random.uniform(0, 1000) for _ in range(10**6)]
# Using int function
start_time = time.time()
truncated_int = [int(number) for number in data]
int_execution_time = time.time() - start_time
# Using math.trunc function
start_time = time.time()
truncated_math = [math.trunc(number) for number in data]
math_execution_time = time.time() - start_time
# Using decimal module
start_time = time.time()
truncated_decimal = [Decimal(str(number)).quantize(Decimal('1.'), rounding=ROUND_DOWN) for number in data]
decimal_execution_time = time.time() - start_time
print(f"Execution time using int function: {int_execution_time:.5f} seconds")
print(f"Execution time using math.trunc function: {math_execution_time:.5f} seconds")
print(f"Execution time using decimal module: {decimal_execution_time:.5f} seconds")
У цьому прикладі генерується набір даних із мільйона випадкових значень із плаваючою комою від 0 до 1000. Час виконання для кожного методу скорочення вимірюється за допомогою модуля часу. Підхід десяткового модуля перетворює кожне число на екземпляр Decimal перед усіканням, щоб забезпечити точні результати.
Запустивши код, ви можете спостерігати за часом виконання кожного методу та порівнювати продуктивність.
Вибір відповідного методу скорочення
Коли справа доходить до скорочення значень з плаваючою комою в Python, вибір відповідного методу залежить від конкретних вимог програми або варіанту використання.
Вирішуючи, який метод використовувати, враховуйте такі фактори:
Точність: якщо точність є надзвичайно важливою і вам потрібен точний контроль над десятковими знаками, десятковий модуль забезпечує найвищий рівень точності.
Продуктивність. Для простого скорочення без потреби у високій точності функції int() і math.trunc() пропонують ефективні рішення.
Поведінка округлення: залежно від бажаної поведінки округлення, десятковий модуль дозволяє вказати різні режими округлення, наприклад ROUND_DOWN , ROUND_UP , ROUND_HALF_UP тощо.
Сумісність: якщо вам потрібно забезпечити сумісність із застарілим кодом або системами, які не підтримують десятковий модуль, функція int() або функція math.trunc можуть бути життєздатними варіантами.
Заключні думки
Розуміння основ скорочення значень з плаваючою точкою в Python має важливе значення для точної обробки та аналізу даних. Python надає різні методи та функції для скорочення або округлення чисел з плаваючою комою на основі конкретних вимог.
Використовуючи такі вбудовані функції, як math.trunc() , math.floor() і math.ceil() , ми можемо ефективно виконувати операції скорочення. Ці функції пропонують гнучкість у обробці позитивних і негативних плаваючих значень, що дозволяє нам контролювати бажаний результат.
Крім того, десятковий модуль пропонує кращий контроль над округленням і точністю, що робить його придатним для фінансових розрахунків або ситуацій, де точність має першорядне значення.
Як і в будь-якій концепції програмування, практика та експериментування є ключовими для опанування мистецтва скорочення значень з плаваючою точкою. Застосовуйте ці методи в реальних сценаріях і досліджуйте додаткові ресурси, такі як документація Python і форуми спільноти, щоб покращити розуміння та навички!
У цьому посібнику ви дізнаєтеся, як перетворити текст у формат дати за допомогою редактора Power Query в LuckyTemplates.
Дізнайтеся, як об’єднати файли з кількох папок у мережі, робочому столі, OneDrive або SharePoint за допомогою Power Query.
Цей підручник пояснює, як обчислити місячне ковзне середнє на базі даних з початку року за допомогою функцій AVERAGEX, TOTALYTD та FILTER у LuckyTemplates.
Дізнайтеся, чому важлива спеціальна таблиця дат у LuckyTemplates, і вивчіть найшвидший і найефективніший спосіб це зробити.
У цьому короткому посібнику розповідається про функцію мобільних звітів LuckyTemplates. Я збираюся показати вам, як ви можете ефективно створювати звіти для мобільних пристроїв.
У цій презентації LuckyTemplates ми розглянемо звіти, що демонструють професійну аналітику послуг від фірми, яка має кілька контрактів і залучених клієнтів.
Ознайомтеся з основними оновленнями для Power Apps і Power Automate, а також їх перевагами та наслідками для Microsoft Power Platform.
Відкрийте для себе деякі поширені функції SQL, які ми можемо використовувати, наприклад String, Date і деякі розширені функції для обробки та маніпулювання даними.
У цьому підручнику ви дізнаєтеся, як створити свій ідеальний шаблон LuckyTemplates, налаштований відповідно до ваших потреб і вподобань.
У цьому блозі ми продемонструємо, як шарувати параметри поля з малими кратними, щоб створити неймовірно корисну інформацію та візуальні ефекти.