From mboxrd@z Thu Jan 1 00:00:00 1970 From: Thierry Banel Subject: Re: aggregate: percent, table headers, float format Date: Wed, 1 Aug 2018 00:33:24 +0200 Message-ID: References: <874lhn9inv.fsf@mat.ucm.es> Mime-Version: 1.0 Content-Type: text/html; charset=utf-8 Content-Transfer-Encoding: 7bit Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:44548) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fkdCt-0004DJ-Dz for emacs-orgmode@gnu.org; Tue, 31 Jul 2018 18:33:32 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fkdCp-0007S7-Fq for emacs-orgmode@gnu.org; Tue, 31 Jul 2018 18:33:31 -0400 Received: from smtp5-g21.free.fr ([212.27.42.5]:51692) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1fkdCp-0007Rd-5X for emacs-orgmode@gnu.org; Tue, 31 Jul 2018 18:33:27 -0400 Received: from [IPv6:2a01:e35:2e21:def0:a491:4a05:5a24:6d5a] (unknown [IPv6:2a01:e35:2e21:def0:a491:4a05:5a24:6d5a]) by smtp5-g21.free.fr (Postfix) with ESMTP id A09155FFA5 for ; Wed, 1 Aug 2018 00:33:25 +0200 (CEST) In-Reply-To: <874lhn9inv.fsf@mat.ucm.es> Content-Language: en-US List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org Sender: "Emacs-orgmode" To: emacs-orgmode@gnu.org
Done.
Now orgaggregate takes org-calc-default-modes into account.
The priority is as follow:
  1. If given, a formatter modifier (like ;p17) takes precedence.
  2. Otherwise, if a customization of org-calc-default-modes is found (like calc-internal-prec set to 17), then it applies.
    To customize, type M-x customize-variable org-calc-default-modes RET.
  3. Ultimately, the Calc customization (like (setq calc-internal-prec 17)) is used.
The upgrade will take some time (a few hours maybe) to show up in the Melpa Emacs packages repository.

Thanks Uwe for reporting.
Regards
Thierry


On 28/06/2018 14:53, Uwe Brauer wrote:
Hi

Org-aggregate is great and very helpful.

However I have some problems/questions which I think a maybe interesting
for the list.

Take the following code


#+begin_src emacs-lisp
(setq org-calc-default-modes '(calc-internal-prec 12 calc-float-format
                    (fix 3)    ;;; the default here was (float 8)
                    calc-angle-mode deg calc-prefer-frac nil calc-symbolic-mode nil calc-date-format
                    (YYYY "-" MM "-" DD " " Www
                          (" " hh ":" mm))
                    calc-display-working-message t))

#+end_src

Which sets the float format to (fix 3) is taken into account by the
org-table but ignored by org aggregate as the example below shows.


#+TBLNAME: raw-data
| Number | CalJunio |
|--------+----------|
|      1 | AP       |
|      2 | NT       |
|      3 | SS       |
|      4 | SS       |
|      5 | SS       |
|      6 | AP       |
|      7 | SS       |
|      8 | NP       |
|      9 | AP       |
|     10 | NP       |
|     11 | NP       |
|     12 | AP       |
|     13 | NP       |
|     14 | AP       |
|     15 | NP       |
|     16 | AP       |
|     17 | SS       |
|     18 | NP       |
|     19 | AP       |
#+TBLFM: $1=@#-1


I want that org aggregate counts the entries in the second column of the
tale raw-data, which it does (thanks to Thierry), but I also would like
to have, automatically, to calculate its percentage. And that it seems I
can only do manually as the below example shows.

#+BEGIN: aggregate :table "raw-data" :cols "CalJunio count()  (count()/19)*100"
| CalJunio | count() | (count()/19)*100 |
|----------+---------+------------------|
| AP       |       7 |    36.8421052632 |
| NT       |       1 |    5.26315789474 |
| SS       |       5 |    26.3157894737 |
| NP       |       6 |    31.5789473684 |
#+END:


Is there a more elegant solution and how can I change the float format?

By the way is there a way to customize the header of the above table,
something like


#+BEGIN: aggregate :table "raw-data" :cols "CalJunio count()  (count()/19)*100"
| CalJunio | count |       percent |
|----------+-------+---------------|
| AP       |     7 | 36.8421052632 |
| NT       |     1 | 5.26315789474 |
| SS       |     5 | 26.3157894737 |
| NP       |     6 | 31.5789473684 |
#+END:


thanks

Uwe Brauer