Aggregating Data

classic Classic list List threaded Threaded
4 messages Options
Reply | Threaded
Open this post in threaded view
|

Aggregating Data

Edgar F. Johns
I have a sample of about 1500 employees who have completed a survey. I want
to aggregate the survey data to their teams (about 100 teams). Is there a
procedure that I can use to get the (scale score) means by team and save
them in a system file?

The file of 1500 contains the survey results and a team variable.

Thanks.
Edgar
---
Discover Technologies
42020 Koppernick Rd.
Suite 204
Canton, MI 48187
(734) 564-4964
(734) 468-0800 fax
Reply | Threaded
Open this post in threaded view
|

Re: Aggregating Data

Melissa Ives
Calculate the scale score for all employees.
Make sure you have a team variables.
Sort by the team variable

Then use (untested):
AGGREGATE OUTFILE=<path/filename>/
        BREAK=team/
        n_emp=N/
        teamscale=mean(indscale).

Where indscale is the individual scale value for each employee
(teamscale and indscale can use the same name IF you are saving to a
separate system file as above)  N_emp will be the number of employees on
the team.  The system file created will contain 3 variables: team n_emp
teamscale.

Or if you want each client to have the team average score and total n on
the team added to their current record, use:
AGGREGATE OUTFILE=*/
        BREAK=team/
        n_emp=N/
        teamscale=mean(indscale).

The resulting file will contain all of your current variables plus n_emp
and teamscale.

If you need more information or variables, you can open a syntax file,
type in 'aggregate' then click on the 'Syntax Help' button on the Syntax
Editor Toolbar.

Melissa

-----Original Message-----
From: SPSSX(r) Discussion [mailto:[hidden email]] On Behalf Of
Edgar F. Johns
Sent: Monday, January 22, 2007 1:40 PM
To: [hidden email]
Subject: [SPSSX-L] Aggregating Data

I have a sample of about 1500 employees who have completed a survey. I
want to aggregate the survey data to their teams (about 100 teams). Is
there a procedure that I can use to get the (scale score) means by team
and save them in a system file?

The file of 1500 contains the survey results and a team variable.

Thanks.
Edgar
---
Discover Technologies
42020 Koppernick Rd.
Suite 204
Canton, MI 48187
(734) 564-4964
(734) 468-0800 fax



PRIVILEGED AND CONFIDENTIAL INFORMATION
This transmittal and any attachments may contain PRIVILEGED AND
CONFIDENTIAL information and is intended only for the use of the
addressee. If you are not the designated recipient, or an employee
or agent authorized to deliver such transmittals to the designated
recipient, you are hereby notified that any dissemination,
copying or publication of this transmittal is strictly prohibited. If
you have received this transmittal in error, please notify us
immediately by replying to the sender and delete this copy from your
system. You may also call us at (309) 827-6026 for assistance.
Reply | Threaded
Open this post in threaded view
|

Re: Aggregating Data

Richard Ristow
At 02:40 PM 1/22/2007, Edgar F. Johns wrote:

>I have about 1500 employees who have completed a survey. Is there a
>procedure that I can use to get the (scale score) means by team and
>save
>them in a system file?

Melissa's advice is good, with a couple of comments.

At 02:54 PM 1/22/2007, Melissa Ives wrote:

>Calculate the scale score for all employees. Make sure you have a team
>variables. Sort by the team variable

It isn't necessary, nor helpful, to sort by the team variable -
AGGREGATE builds its table dynamically, in memory. (This surprised the
dickens out of me, when I learned it.)

>Then use (untested):
>AGGREGATE OUTFILE=<path/filename>/
>         BREAK=team/
>         n_emp=N/
>         teamscale=mean(indscale).

Should be fine. Below, one mistake:

>Or if you want each client to have the team average score and total n
>on the team added to their current record, use:
>AGGREGATE OUTFILE=*/
>         BREAK=team/
>         n_emp=N/
>         teamscale=mean(indscale).
>
>The resulting file will contain all of your current variables plus
>n_emp and teamscale.

Not quite. To work as described, you need

AGGREGATE OUTFILE=* MODE=ADDVARIABLES/
         BREAK=team/
[etc.]
Reply | Threaded
Open this post in threaded view
|

Re: Aggregating Data

Edgar F. Johns
In reply to this post by Edgar F. Johns
Thank you very much Melissa and Richard. I will take your counsel and let
you know how it turns out.

This is probably a simple matter but it's been several years since I have
used SPSS.

Thanks,
Edgar
---
Discover Technologies
42020 Koppernick Rd.
Suite 204
Canton, MI 48187
(734) 564-4964
(734) 468-0800 fax

-----Original Message-----
From: Richard Ristow [mailto:[hidden email]]
Sent: Monday, January 22, 2007 3:22 PM
To: Edgar F. Johns; [hidden email]
Cc: Melissa Ives
Subject: [SPAM]Re: Aggregating Data

At 02:40 PM 1/22/2007, Edgar F. Johns wrote:

>I have about 1500 employees who have completed a survey. Is there a
>procedure that I can use to get the (scale score) means by team and
>save
>them in a system file?

Melissa's advice is good, with a couple of comments.

At 02:54 PM 1/22/2007, Melissa Ives wrote:

>Calculate the scale score for all employees. Make sure you have a team
>variables. Sort by the team variable

It isn't necessary, nor helpful, to sort by the team variable -
AGGREGATE builds its table dynamically, in memory. (This surprised the
dickens out of me, when I learned it.)

>Then use (untested):
>AGGREGATE OUTFILE=<path/filename>/
>         BREAK=team/
>         n_emp=N/
>         teamscale=mean(indscale).

Should be fine. Below, one mistake:

>Or if you want each client to have the team average score and total n
>on the team added to their current record, use:
>AGGREGATE OUTFILE=*/
>         BREAK=team/
>         n_emp=N/
>         teamscale=mean(indscale).
>
>The resulting file will contain all of your current variables plus
>n_emp and teamscale.

Not quite. To work as described, you need

AGGREGATE OUTFILE=* MODE=ADDVARIABLES/
         BREAK=team/
[etc.]