[R] Normalizing grouped data in a data frame
Sandy Small
sandy.small at nhs.net
Fri Nov 9 11:56:42 CET 2007
Hi
I am a newbie to R but have tried a number of ways in R to do this and
can't find a good solution. (I could do it out of R in perl or awk but
would like to know how to do this in R).
I have a large data frame 49 variables and 7000 observations however for
simplicity I can express it in the following data frame
Base, Image, LVEF, ES_Time
A, 1, 4.32, 0.89
A, 2, 4.98, 0.67
A, 3, 3.7, 0.5
A, 3. 4.1, 0.8
B, 1, 7.4, 0.7
B, 3, 7.2, 0.8
B, 4, 7.8, 0.6
C, 1, 5.6, 1.1
C, 4, 5.2, 1.3
C, 5, 5.9, 1.2
C, 6, 6.1, 1.2
C, 7. 3.2, 1.1
For each value of LVEF and ES_Time I would like to normalise the value
to the maximum for that factor grouped by Base or Image number, adding
an extra column to the data frame with the normalised value in it.
So for the Base = B group in the data frame (the data frame should have
the same length I'm just showing the B part) I would get a modified data
frame as follows.
Base, Image, LVEF, ES_Time, Norm_LVEF, Norm_ES_Time
...
B,1,7.4, 0.7, 7.4/7.8, 0.7/0.8
B, 3, 7.2, 0.8, 7.2/7.8, 0.8/0.8
B, 4, 7.8, 0.6, 7.8/7.8, 0.6/0.8
...
Where the results of the division would replace the division shown here.
I hope this makes sense.
If anyone can help I would be very grateful.
Sandy Small
NHS Glasgow, UK
**********************************************************************
This message may contain confidential and privileged information.
If you are not the intended recipient please accept our apologies.
Please do not disclose, copy or distribute information in this e-mail
or take any action in reliance on its contents: to do so is strictly
prohibited and may be unlawful. Please inform us that this message has
gone astray before deleting it. Thank you for your co-operation.
NHSmail is used daily by over 100,000 staff in the NHS. Over a million
messages are sent every day by the system. To find out why more and
more NHS personnel are switching to this NHS Connecting for Health
system please visit www.connectingforhealth.nhs.uk/nhsmail
More information about the R-help
mailing list