Hi Angelo,
You can solve thins using the "melt" and "cast" functions in the "reshape"
package.

Tal




----------------Contact
Details:-------------------------------------------------------
Contact me: Tal.Galili@gmail.com |  972-52-7275845
Read me: www.talgalili.com (Hebrew) | www.biostatistics.co.il (Hebrew) |
www.r-statistics.com (English)
----------------------------------------------------------------------------------------------




On Thu, May 6, 2010 at 10:06 AM, <ANGELO.LINARDI@bancaditalia.it> wrote:

>
> Dear R experts,
>
> I am trying to solve this problem, related to the possibility of
> changing the shape of a data frame using a "pivoting-like" function.
> I have a dataframe df of observations as follows:
>
> ID              VALIDITY YEAR           PROPERTY        PROPERTY VALUE
> A1              2007                            P1              V1
> A1              2007                            P2              V2
> A1              2007                            P3              V3
> A1              2008                            P1              V10
> A1              2008                            P2              V20
> A2              2007                            P5              V50
> A2              2008                            P6              V20
> A3              2007                            P1              V1
> A3              2007                            P3              V30
> A3              2008                            P1              V10
> A3              2008                            P2              V4
> A3              2008                            P6              V25
>
> (you can imagine that this data is collected every year from a sample of
> people with several "measures" - weight, number of children, income...
> It can happen that some properties could be missing from some IDs).
> I have to obtain a data frame like this:
>
>
> ID      VALIDITY YEAR   P1      P2      P3      P4      P5      P6
> A1      2007                    V1      V2      V3      -       -
> -
> A1      200                     V10     V20     -       -       -
> -
> A2      2007                    -       -       -       -       V50
> -
> A2      2008                    -       -       -       -       -
> V60
> A3      2007                    V1      -       V30     -       -
> -
> A3      2008                    V10     V4      -       -       -
> V25
>
>
> I started using the operator "by" obtaining the different "slices" of
> data:
>
> by(df,df$PROPERTY,list)
>
> but then ?
>
> I also tried using tapply:
>
> tapply(df$CID,df$PROPERTY,list)
>
> obtaining a list but I am not able to go on.
>
> Can you help me ?
>
> Thank you in advance
>
> Angelo Linardi
>
>
>
> ** Le e-mail provenienti dalla Banca d'Italia sono trasmesse in buona fede
> e non
> comportano alcun vincolo ne' creano obblighi per la Banca stessa, salvo che
> cio' non
> sia espressamente previsto da un accordo scritto.
> Questa e-mail e' confidenziale. Qualora l'avesse ricevuta per errore, La
> preghiamo di
> comunicarne via e-mail la ricezione al mittente e di distruggerne il
> contenuto. La
> informiamo inoltre che l'utilizzo non autorizzato del messaggio o dei suoi
> allegati
> potrebbe costituire reato. Grazie per la collaborazione.
> -- E-mails from the Bank of Italy are sent in good faith but they are
> neither binding on
> the Bank nor to be understood as creating any obligation on its part except
> where
> provided for in a written agreement. This e-mail is confidential. If you
> have received it
> by mistake, please inform the sender by reply e-mail and delete it from
> your system.
> Please also note that the unauthorized disclosure or use of the message or
> any
> attachments could be an offence. Thank you for your cooperation. **
>
> ______________________________________________
> R-help@r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide
> http://www.R-project.org/posting-guide.html
> and provide commented, minimal, self-contained, reproducible code.
>

	[[alternative HTML version deleted]]

