|
> -----Original Message-----
> From: SAS(r) Discussion [mailto:SAS-L@LISTSERV.UGA.EDU] On Behalf Of Tara
> Wernsing
> Sent: Thursday, January 04, 2007 8:22 AM
> To: SAS-L@LISTSERV.UGA.EDU
> Subject: FW: Calculating differences between team members
>
> one more complexity to this---I need it to produce an individual level
> score
> for each person (for each ID in my data), not team level score.
> So this score will differ for each person on the team. Below is an
> excerpt
> from an article that used this measure that explains this in words:
>
> **********************
> Tsui, Egan, Oreilly 1989. Being Different. Administration Science
> Quarterly.
>
>
> The relational demography score is the difference between an individual
> and
> all other individuals in the work unit (i.e., the sample) on a specific
> demographic attribute, using a formula similar to that used by O'Reilly,
> Caldwell, and Barnett (1989) and by Tsui and O'Reilly (1989). It is the
> square root of the summed squared differences between an individual S,'s
> value on a specific demographic variable and the value on the same
> variable
> for every other individual Si in the sample for the work unit, divided by
> the total number of respondents in the unit (n). The following formula was
> used for this calculation:
>
> SQRT of (1/n)*[SUM (Si - Sj)**2]
>
> i=target individual member
> J=each other team members
>
> A relational measure was derived for each demographic variable.
> Differences
> in age, company tenure, and education were measured in years. Differences
> in
> gender and race were measured by a score ranging from zero to approaching
> but never reaching 1.00. For example, a man in a work unit of two men and
> three women would have a relational score of .77 on gender, 0 for being
> the
> same as the other man and 3 for being different from each of the three
> women. We would then divide the score of 3 by 5 and take the square root
> of
> the result. Each of the two women, in turn, would have a relational score
> of
> .63. A score of .999 could be obtained by someone who is the sole minority
> member (on either gender or race) in an extremely large group .4
>
> The relational score on race was computed by considering the differences
> among all the racial groups in the work unit. In a work unit with one
> African-American, one Asian, and two whites, the relational score for the
> African-American and the Asian, respectively, would be 3 (1 for being
> different from each other and 2 for being different from each of the two
> whites), 2 for each of the two whites (1 for being different from the
> African-American, 1 for being different from the Asian, and 0 for being
> different from each other).
>
> All the relational measures were scaled in such a way that a large value
> always connotes a large difference. The individual with a large score on a
> relational measure differs more, in terms of that-specific demographic
> attribute, from other individuals in the work unit (i.e., the sample) than
> another individual with a small score. The actual scores observed on the
> relational age and tenure measures ranged from zero to 30 and on the
> relational education measure ranged from zero to 15. The actual scores
> ranged from zero to .99 for both the relational gender and race measures.
>
>
> -----Original Message-----
> From: SAS(r) Discussion [mailto:SAS-L@LISTSERV.UGA.EDU] On Behalf Of toby
> dunn
> Sent: Thursday, January 04, 2007 9:04 AM
> To: SAS-L@LISTSERV.UGA.EDU
> Subject: Re: Calculating differences between team members
>
> Data Have ;
> Infile Cards ;
> Input ID Team Member Attitude ;
> Cards ;
> 1 1 1 4
> 2 1 2 5
> 3 1 3 5
> 4 2 1 3
> 5 2 2 4
> 6 2 3 2
> ;
> Run ;
>
> Data Need ( Drop = Lastatt ) ;
> Set Have ;
> By Team ;
> Retain Sum ;
>
> LastAtt = Lag( Attitude ) ;
>
> If Not First.Team Then Do ;
> Sum = Sum + ( Attitude - LastAtt )**2 ; End ;
>
> If Last.Team Then Do ;
> Output ;
> Sum = 0 ;
> End ;
>
> Run ;
>
>
> Proc Print
> Data = Need ;
> Run ;
>
>
>
> Toby Dunn
>
> To sensible men, every day is a day of reckoning. ~John W. Gardner
>
> The important thing is this: To be able at any moment to sacrifice that
> which we are for what we could become. ~Charles DuBois
>
> Don't get your knickers in a knot. Nothing is solved and it just makes you
> walk funny. ~Kathryn Carpenter
>
>
>
>
>
>
> From: Tara Wernsing <twernsing@YAHOO.COM>
> Reply-To: Tara Wernsing <twernsing@YAHOO.COM>
> To: SAS-L@LISTSERV.UGA.EDU
> Subject: Re: Calculating differences between team members
> Date: Thu, 4 Jan 2007 08:50:21 -0600
>
> Yes, of couse. Here is sample layout:
>
> ID team member attitude
> 1 1 1 4
> 2 1 2 5
> 3 1 3 5
> 4 2 1 3
> 5 2 2 4
> 6 2 3 2
>
>
> -----Original Message-----
> From: Jack Clark [mailto:JClark@chpdm.umbc.edu]
> Sent: Thursday, January 04, 2007 8:44 AM
> To: 'Tara Wernsing'; SAS-L@LISTSERV.UGA.EDU
> Subject: RE: Calculating differences between team members
>
> Tara,
>
> Could you provide some sample data to the list?
>
> The suggested solutions will vary depending on the layout of your data.
> For
> example, does a single observation represent the team or an individual
> person?
>
>
> Jack Clark
> Research Analyst
> Center for Health Program Development and Management University of
> Maryland,
> Baltimore County
>
>
>
> -----Original Message-----
> From: SAS(r) Discussion [mailto:SAS-L@LISTSERV.UGA.EDU] On Behalf Of Tara
> Wernsing
> Sent: Thursday, January 04, 2007 9:09 AM
> To: SAS-L@LISTSERV.UGA.EDU
> Subject: Calculating differences between team members
>
> Hi all~
> I am trying to calculate a formula where I need the sum of the squared
> differences between 3 people on a team (I have 24 teams of 3 people) for
> the
> same variable.
>
> so for example, for attitude toward a team project, I need to calculate
> the
> value of one team member's attitude score subtracted from the second
> member,
> and then subtracted from the third member.
> then square each difference, and sum up all three sq differences.
>
> I can figure out the latter part, but having trouble figuring out how I
> can
> hold the first person's value in memory, while getting the second person's
> value (could use _point ?) and doing the subtraction but then also a
> needing
> the third person's value (can I use another _point--can't seem to figure
> out
> how in the same do loop)?
>
> any ideas are appreciated! thanks, Tara
>
> Tara Wernsing
> Doctoral Candidate
> University of Nebraska-Lincoln
> Gallup Leadership Institute
> <http://www.gli.unl.edu/> www.gli.unl.edu
> --
> "People take different roads seeking fulfillment and happiness. Just
> because
> they're not on your road doesn't mean they have gotten lost." ~Cesare di
> Bonesana Beccaria
>
Tara,
I'm not sure from the description whether the divisor should be 2 or 3 (I chose 3). Does the code below do what you want?
data have;
input ID team member attitude;
cards;
1 1 1 4
2 1 2 5
3 1 3 5
4 2 1 3
5 2 2 4
6 2 3 2
;run;
data want;
do i=1 to 3;
set have;
array team_a[3] _temporary_;
team_a[i]=attitude;
end;
do i=1 to 3;
score = ((team_a[i]-team_a[1])**2
+ (team_a[i]-team_a[2])**2
+ (team_a[i]-team_a[3])**2) / 3;
member = i;
attitude=team_a[i];
output;
end;
run;
proc print;
run;
Hope this is helpful,
Dan
Daniel J. Nordlund
Research and Data Analysis
Washington State Department of Social and Health Services
Olympia, WA 98504-5204
|