#77 - Conditional Aggregation

esProc DesktopesProc Desktop
1 min read

Problem description & analysis:

Here below is a data table:

Task: Count the following information for each class: the number of students with scores above 90, the number of failed students, and the average score after removing the highest and lowest scores.

Solution:

Use SPL XLL and the code is as follows:

=spl("=E(?1).group(Class).new(Class,~.count(Score>=90):'ScoreAbove90',~.count(Score<60):Failed,~.sort(Score).m(2:-2).avg(Score):AverageScore)", A1:C19)

where m(2:-2) represents the set of members from the second to penultimate member of a sequence.

The results are shown below:


Download esProc Desktop for FREE, streamline data crunching, and improve overall productivity!! 🚀🔥⬇️

✨SPL download address: esProc Desktop FREE Download

✨Plugin Installation Method: SPL XLL Installation and Configuration

✨References to other rich Excel operation cases: Desktop and Excel Data Processing Cases

✨YouTube FREE courses: SPL Programming

0
Subscribe to my newsletter

Read articles from esProc Desktop directly inside your inbox. Subscribe to the newsletter, and don't miss out.

Written by

esProc Desktop
esProc Desktop

esProc Desktop is a desktop data processing & analytics tool and is specifically designed for ordinary business people. It supports complex computations & spreadsheet data manipulation, can deal with tasks that are hard to accomplish in Excel, and in addition, generates more concise code than VBA and Python. esProc Desktop boasts all-around programming capabilities, supports multi-step interactive data analytics and is easy to use without configurations. This significantly lowers the technical threshold for data analytics.