emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
From: Karl Voit <devnull@Karl-Voit.at>
To: emacs-orgmode@gnu.org
Subject: Re: org-table-duplicate-column
Date: Tue, 1 Oct 2013 17:50:51 +0200	[thread overview]
Message-ID: <2013-10-01T17-37-37@devnull.Karl-Voit.at> (raw)
In-Reply-To: CALn3zohG90RcNiSsJrZdOEb5SyM8-gX_KNEycCa7djHD2KRVwA@mail.gmail.com

Hi Michael!

* Michael Brand <michael.ch.brand@gmail.com> wrote:
>
> On Mon, Sep 30, 2013 at 1:43 PM, Karl Voit <devnull@karl-voit.at> wrote:
>> What about alternating data (no summary value at bottom row) and
>> evaluation columns?
>>
>> | Data 1 | Eval 1 | Data 2 | Eval 2 |
>>
>> What about moving columns:
>>
>> Switching two columns from:
>> | Eval 1 | Eval 2 | foo | bar |
>> to:
>> | Eval 1 | foo | Eval 2 | bar |
>
> Alternation and moving can be handled with conditional formulas
>
> #+TBLFM: @>$<..@>$> = if(subvec("@1", 2, 6) == "Eval", 42, $0)
>
> in Calc or even simpler (regex) with Lisp. Don't worry, For this I had
> to cheat and look in testing/lisp/test-org-table.el with the ERTs that
> should also be an advanced documentation. In this case
> test-org-table/compare for the comparison and
> test-org-table/copy-field for the substring.

:-)

I could not follow this example without looking into a manual
either.

>> I still tend to think that org-table-duplicate-column
>> would be handy in many cases.
>
> I can not understand how with a variable if you mean that
> literally. Also with macros for TBLFM as I imagine, that could be
> difficult because already now there are conflicts and traps with the
> TBLFM syntax.

I assume, there is a misunderstanding.

What I mean: I have got the following table with two columns
containing two different data columns and one result column
which contains two formulas:

| data1 | data2 | results1 |
|-------+-------+----------|
|     1 |   643 |        2 |
|     4 |    22 |        8 |
|     6 |    91 |       12 |
|-------+-------+----------|
|       |       |       22 |
#+TBLFM: $3=$1*2::@5$3=vsum(@I$3..@II$3)

While being in the outer right column and doing "M-x
org-table-duplicate-column", Org-mode simply duplicates the column
and its related TBLFM entries accordingly:

| data1 | data2 | results1 | results1 |
|-------+-------+----------+----------|
|     1 |   643 |        2 |        2 |
|     4 |    22 |        8 |        8 |
|     6 |    91 |       12 |       12 |
|-------+-------+----------+----------|
|       |       |       22 |       22 |
#+TBLFM: $3=$1*2::@5$3=vsum(@I$3..@II$3) :: $4=$1*2::@5$4=vsum(@I$4..@II$4)

This should be a pretty simple operation in cases where there are no
complicated references.

Then I adopt the resulting TBLFM with only minor effort (*instead of
writing everything from scratch*) and get my similar but not same
forth column:

| data1 | data2 | results1 | results2 |
|-------+-------+----------+----------|
|     1 |   643 |        2 |   321.50 |
|     4 |    22 |        8 |    11.00 |
|     6 |    91 |       12 |    45.50 |
|-------+-------+----------+----------|
|       |       |       22 |   378.00 |
#+TBLFM: $3=$1*2::@5$3=vsum(@I$3..@II$3) :: $4=$2/2;%.2f::@5$4=vsum(@I$4..@II$4);%.2f

Probably I have a different approach because I am clearly no calc
pro user (I need only basics) and I want to keep formulas (and
references) easy to read (maintainability).

Does this make any sense for you?

-- 
mail|git|SVN|photos|postings|SMS|phonecalls|RSS|CSV|XML to Org-mode:
       > get Memacs from https://github.com/novoid/Memacs <

https://github.com/novoid/extract_pdf_annotations_to_orgmode + more on github

  reply	other threads:[~2013-10-01 15:51 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-09-29  8:35 org-table-duplicate-column Karl Voit
2013-09-29  9:42 ` org-table-duplicate-column Michael Brand
2013-09-29 19:56   ` org-table-duplicate-column Karl Voit
2013-09-29 20:51     ` org-table-duplicate-column Michael Brand
2013-09-30 11:43       ` org-table-duplicate-column Karl Voit
2013-09-30 19:30         ` org-table-duplicate-column Michael Brand
2013-10-01 15:50           ` Karl Voit [this message]
2013-10-01 16:25             ` org-table-duplicate-column Michael Brand
2013-10-01 19:33               ` org-table-duplicate-column Karl Voit

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

  List information: https://www.orgmode.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=2013-10-01T17-37-37@devnull.Karl-Voit.at \
    --to=devnull@karl-voit.at \
    --cc=emacs-orgmode@gnu.org \
    --cc=news1142@Karl-Voit.at \
    /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 public inbox

	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).