Оцінка та оптимізація продуктивності коду в R

Оптимізація коду R може значно підвищити продуктивність сценаріїв і програм R, завдяки чому вони працюватимуть ефективніше. Це особливо важливо для великих і складних наборів даних, а також для програм, які потрібно запускати в режимі реального часу або на регулярній основі.

У цьому підручнику ми оцінимо та оптимізуємо продуктивність R-коду за допомогою різних , таких як tidyverse та data.table. Як приклад, ми побачимо, скільки часу потрібно RStudio для читання великого файлу CSV за допомогою функції read.csv () , пакету tidyverse та пакету data.table.

Зміст

Оптимізація продуктивності в R

Відкрийте RStudio. У сценарії R призначте розширення файлу змінній.

Ви повинні використовувати функцію system.file () , щоб визначити, скільки часу потрібно для виконання функції чи операції. Оскільки ми хочемо оцінити, скільки часу потрібно для відкриття файлу, напишіть read.csv (df) в аргументі.

Оцінка та оптимізація продуктивності коду в R

Коли ви запускаєте код, консоль покаже вам час, який знадобився для відкриття файлу. Стовпець, що минув, показує, скільки часу знадобилося ЦП для виконання коду R. Результати показують, що RStudio зайняло 31,93 секунди, що є значною кількістю часу. Цей час завантаження непрактичний, якщо ви постійно працюєте з великими наборами даних.

Оцінка та оптимізація продуктивності коду в R

Одним із способів оптимізації продуктивності коду R є використання пакета tidyverse . Таким чином час скорочується з 30 до 5 секунд.

Зверніть увагу, що для того, щоб прочитати файл, вам потрібно використовувати функцію read_csv () .

Оцінка та оптимізація продуктивності коду в R

Пакет tidyverse покращує час завантаження в R завдяки використанню пакета readr , який забезпечує набір швидких і ефективних функцій для читання та запису даних. Пакет readr містить такі функції, як read_csv ( ) і read_table ( ) , які можуть швидко й ефективно читати великі набори даних.

Іншим методом оптимізації в R є використання пакета data.table . Це можна безкоштовно завантажити в Інтернеті.

Пакет data.table у R — це потужний і ефективний інструмент для роботи з великими та складними наборами даних. Він надає розширену версію об’єкта data.frame, який є основною структурою даних у R. Основною перевагою data.table є його висока продуктивність і низьке використання пам’яті під час роботи з великими наборами даних.

Зауважте, що під час використання цього пакета вам потрібно написати функцію fread ( ) замість read.csv ( ). Якщо ви запустите це разом із вашим кодом, ви побачите, що час завантаження скорочується до 2,25 секунди.

Оцінка та оптимізація продуктивності коду в R

Порівняння пакетів R за допомогою Microbenchmark

Щоб порівняти продуктивність кожного методу, ви можете скористатися функцією мікротесту ( ) .

Функція microbenchmark ( ) у R є інструментом для вимірювання продуктивності коду R. Він забезпечує простий і легкий у використанні інтерфейс для порівняльного аналізу часу виконання R-виразів.

Чудова особливість цієї функції полягає в тому, що ви можете встановити, скільки разів процес повторюється. Це дає більш точні результати. Ви також можете визначити, чи відповідають результати.

Оцінка та оптимізація продуктивності коду в R

Якщо у вас виникли проблеми з читанням файлу CSV у LuckyTemplates, RStudio може зробити це за вас. У R є інші параметри, які можна використовувати для оптимізації продуктивності коду. Але data.table настійно рекомендується через його простоту.

Висновок

Оптимізація коду R є важливим кроком у забезпеченні ефективної роботи ваших сценаріїв R. Існує кілька методів і інструментів, які можна використовувати для оптимізації коду R, наприклад використання пакета tidyverse для маніпулювання даними, використання пакета data.table для великих наборів даних і використання пакету мікротестів для вимірювання продуктивності коду R.

Також важливо пам’ятати про хороші практики кодування, такі як використання векторизованих операцій замість циклів, використання вбудованих функцій замість написання власних і пам’ятати про використання пам’яті кодом.

Все найкраще,

Джордж Маунт


Змініть формати дати за допомогою редактора Power Query

Змініть формати дати за допомогою редактора Power Query

У цьому посібнику ви дізнаєтеся, як перетворити текст у формат дати за допомогою редактора Power Query в LuckyTemplates.

Power Query: об’єднайте файли з кількох папок

Power Query: об’єднайте файли з кількох папок

Дізнайтеся, як об’єднати файли з кількох папок у мережі, робочому столі, OneDrive або SharePoint за допомогою Power Query.

Обчисліть місячне ковзне середнє з початку року (з початку року) у LuckyTemplates

Обчисліть місячне ковзне середнє з початку року (з початку року) у LuckyTemplates

Цей підручник пояснює, як обчислити місячне ковзне середнє на базі даних з початку року за допомогою функцій AVERAGEX, TOTALYTD та FILTER у LuckyTemplates.

Створення таблиці дат у LuckyTemplates

Створення таблиці дат у LuckyTemplates

Дізнайтеся, чому важлива спеціальна таблиця дат у LuckyTemplates, і вивчіть найшвидший і найефективніший спосіб це зробити.

Мобільні звіти LuckyTemplates. Поради та методи

Мобільні звіти LuckyTemplates. Поради та методи

У цьому короткому посібнику розповідається про функцію мобільних звітів LuckyTemplates. Я збираюся показати вам, як ви можете ефективно створювати звіти для мобільних пристроїв.

Звіти про професійну аналітику послуг у LuckyTemplates

Звіти про професійну аналітику послуг у LuckyTemplates

У цій презентації LuckyTemplates ми розглянемо звіти, що демонструють професійну аналітику послуг від фірми, яка має кілька контрактів і залучених клієнтів.

Оновлення Microsoft Power Platform | Microsoft Ignite 2021

Оновлення Microsoft Power Platform | Microsoft Ignite 2021

Ознайомтеся з основними оновленнями для Power Apps і Power Automate, а також їх перевагами та наслідками для Microsoft Power Platform.

Загальні функції SQL: огляд

Загальні функції SQL: огляд

Відкрийте для себе деякі поширені функції SQL, які ми можемо використовувати, наприклад String, Date і деякі розширені функції для обробки та маніпулювання даними.

Створення шаблону LuckyTemplates: керівництво та поради

Створення шаблону LuckyTemplates: керівництво та поради

У цьому підручнику ви дізнаєтеся, як створити свій ідеальний шаблон LuckyTemplates, налаштований відповідно до ваших потреб і вподобань.

Параметри полів і малі кратні в LuckyTemplates

Параметри полів і малі кратні в LuckyTemplates

У цьому блозі ми продемонструємо, як шарувати параметри поля з малими кратними, щоб створити неймовірно корисну інформацію та візуальні ефекти.