From: emanuel.charpentier@gmail.com
To: oub@mat.ucm.es
Cc: emacs-orgmode <emacs-orgmode@gnu.org>
Subject: join two or more tables
Date: Fri, 23 Aug 2019 11:55:23 +0200 [thread overview]
Message-ID: <c524673312f9e37f0ad598efe109287e8eeedea1.camel@gmail.com> (raw)
In-Reply-To: 871rxirifk.fsf@mat.ucm.es
> Hi
>
> I was googling this a bit, I found more complicated scenarios, but
> not how to join one or more tables.
>
> For example
> #+begin_src
>
> #+tblname: nut
> | type | Fiber | Sugar | Protein | Carb |
> |----------+-------+-------+---------+------|
> | eggplant | 2.5 | 3.2 | 0.8 | 8.6 |
> | tomatoe | 0.6 | 2.1 | 0.8 | 3.4 |
> | onion | 1.3 | 4.4 | 1.3 | 9.0 |
> | egg | 0 | 18.3 | 31.9 | 18.3 |
>
>
> #+tblname: nut2
> | type | Fiber | Sugar | Protein | Carb |
> |----------+-------+-------+---------+------|
> | rice | 0.2 | 0 | 1.5 | 16.0 |
> | bread | 0.7 | 0.7 | 3.3 | 16.0 |
> | orange | 3.1 | 11.9 | 1.3 | 17.6 |
> | banana | 2.1 | 9.9 | 0.9 | 18.5 |
> | tofu | 0.7 | 0.5 | 6.6 | 1.4 |
> | nut | 2.6 | 1.3 | 4.9 | 7.2 |
> | corn | 4.7 | 1.8 | 2.8 | 21.3 |
> #+end_src
What about:
#+begin_src emacs-lisp :var t1=nut :var t2=nut2 :colnames yes
(append t1 t2)
#+end_src
#+RESULTS:
| type | Fiber | Sugar | Protein | Carb |
|----------+-------+-------+---------+------|
| eggplant | 2.5 | 3.2 | 0.8 | 8.6 |
| tomatoe | 0.6 | 2.1 | 0.8 | 3.4 |
| onion | 1.3 | 4.4 | 1.3 | 9.0 |
| egg | 0 | 18.3 | 31.9 | 18.3 |
| rice | 0.2 | 0 | 1.5 | 16.0 |
| bread | 0.7 | 0.7 | 3.3 | 16.0 |
| orange | 3.1 | 11.9 | 1.3 | 17.6 |
| banana | 2.1 | 9.9 | 0.9 | 18.5 |
| tofu | 0.7 | 0.5 | 6.6 | 1.4 |
| nut | 2.6 | 1.3 | 4.9 | 7.2 |
| corn | 4.7 | 1.8 | 2.8 | 21.3 |
Of course, this works because both tables have headers, which can be
handled by the ":colnames yes" header-argument. If both are headerless,
"colnames: no" would do the trick.
Handling the case where one has headers and the other not, or when
there are hlines in the table is still a conudrum for me: I haven't
(yet) been able to find the documentation on how these things are
stored...
HTH,
--
Emmanuel Charpentier
next reply other threads:[~2019-08-23 9:55 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-08-23 9:55 emanuel.charpentier [this message]
2019-08-23 10:54 ` join two or more tables Uwe Brauer
-- strict thread matches above, loose matches on Subject: below --
2019-08-18 8:23 Uwe Brauer
2019-08-18 8:31 ` Uwe Brauer
2019-08-18 11:00 ` Jude DaShiell
2019-08-18 10:21 ` Ken Mankoff
2019-08-18 10:24 ` Uwe Brauer
2019-08-18 10:49 ` Achim Gratz
2019-08-18 11:34 ` Uwe Brauer
2019-08-23 18:09 ` Achim Gratz
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=c524673312f9e37f0ad598efe109287e8eeedea1.camel@gmail.com \
--to=emanuel.charpentier@gmail.com \
--cc=emacs-orgmode@gnu.org \
--cc=oub@mat.ucm.es \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/emacs.git
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.