Package 'SSrat'

Title: Two-Dimensional Sociometric Status Determination with Rating Scales
Description: A set of functions for two-dimensional sociometric status determination with rating scales. For each person assessed, SSrat computes probability distributions of the total scores for `Sympathy' (S), `Antipathy' (A), social `Preference' (P) and social `Impact' (I), and applies a set of criteria for sociometric status categorization.
Authors: Hans Landsheer
Maintainer: Hans Landsheer <[email protected]>
License: GPL-2
Version: 1.1
Built: 2024-11-11 03:13:17 UTC
Source: https://github.com/cran/SSrat

Help Index


Background data of 8 groups from a longitudinal study on Dutch primary schools

Description

Background data of the children, complementary to the files with the rating data Ss96.rat, Ss97.rat and Ss98.rat. This data file contains 205 observations of 4 variables. Measurements of these Dutch primary school children were taken three times, in 1996, 1997 and 1998. In 1996, the sample consisted of 193 students (91 boys, 96 girls, six gender unknown); 189 students were involved in 1997 (90 boys, 95 girls, 4 gender unknown); and in 1998, 189 students participated (91 boys, 98 girls). Average age in 1998 was 11.3 years, with ages ranging from 11 to 13 years. The participants were asked to rate all their classmates on a seven-point scale: dislike very much, dislike much, dislike, ordinary, like, like much, and like very much.

Format

A data frame with 205 observations of 4 variables.

groupid

a numeric vector, identifying the first group level.

respid

a numeric vector, identifying the individual.

sex

Sex of the respondents, 1 = Male, 2 = Female

age

Age of the respondents

Source

Maassen, G.H., Van Boxtel, H.W., & Goossens, F.A. (2005). Reliabilty of nomination and two-dimensional rating scale methods for sociometric status determination. Journal of Applied Developmental Psychology, 26, 51-68.

Examples

data(Ss98.rat)

Calculates the social status determinations of multiple groups.

Description

Calculates the social status determinations from a SSrat compliant dataframe, as described in readratdatafixed.
The dataframe may contain multiple groups. This function can only be used when the rating scale is equal for all groups.
Basically, this function calls the calcgroup function as often as there are groups in the SSrat compliant dataframe.
The resulting dataframe with social sttaus determinations can be analyzed with standard tools for statistical analyis, such as linear regression (lm). Other data, such as background variables can be added to the dataframe.

Usage

calcallgroups(dataframe, alpha = c(0.1, 0.05, 0.01), NBcriteria = F)

Arguments

dataframe

The input dataframe with the rating data. This dataframe should have columns schoolid, groupid, respid, and for n raters n columns named "r01", "r02" .. "r<n>", with a maximum of r99.

alpha

The significance levels to be applied to the probability distributions of the four total scores that have been derived from the ratings. By choosing an appropriate alpha, the user can fine tune the criterion for the status determination. A list of various alphas can be supplied. Default is the list (.10, .05, .01).

NBcriteria

A boolean. When TRUE, the classification criteria of Newcomb & Bukowski (1983) will be applied, in stead of the SSrat criteria. These criteria are applicable to three-point rating scales. When this option is selected for longer scales, the scale midpoint is recoded to 2, all scores larger than the midscore are recoded to 3 and all scores lower than the midscore are recoded to 1. When another recoding scheme is preferred, the input ratings themselves should be recoded (use recode from package car).

Details

See function calcgroup for more details.

Value

dataframe

dataframe with the most relevant output of SSrat, calculated for each rated respondent

dataframe$schoolid

school id as entered in the input dataframe

dataframe$groupid

group id as entered in the input dataframe

dataframe$respid

respondent id as entered in the input data frame

dataframe$nrAss

number of assessors who have given a valid rating

dataframe$tr.S

total rating Sympathy

dataframe$tr.A

total rating Antipathy

dataframe$tr.P

total rating Preference

dataframe$tr.I

total rating Impact

dataframe$SS.xx

Social Determination as attributed by SSrat, applying alpha = .xx. Defaults to SS.10, SS.05 and SS.01

Note

Use calcgroup for generating more detailed information on social status determination.

Author(s)

Hans Landsheer

References

Coie, J. D., Dodge, K. A., & Coppotelli, H.(1982). Dimensions and types of social status: A cross-age perspective. Developmental Psychology, 18, 557-570.
Coie, J.D., & Dodge, K.A. (1983). Continuities and changes in children's social status: A five-year longitudinal study. Merril-Palmer Quarterly, 29, 261-282.
Newcomb, A. F., & Bukowski, W. M. (1983). Social impact and social preference as determinants of children's peer group status. Developmental Psychology, 19, 856-867.
Maassen, G. H. and Landsheer, J. A. (1998). SSRAT: The processing of rating scales for the determination of two-dimensional sociometric status. Behavior Research Methods Instruments &amp; Computers, 30(4), 674-679.

See Also

readratdatafixed calcgroup

Examples

data(example5.rat)
calcgroup (school=1, group=23, data=example5.rat, scalelength="3")$dataframe
calcallgroups(example5.rat)

#readmultiple groups
data(example6.rat)
calcallgroups(example6.rat)

data(example7.rat)
calcallgroups(example7.rat) # Wrong!
calcgroup (school=1, group=1, dataframe=example7.rat, scalelength="7")$dataframe
calcgroup (school=1, group=3, dataframe=example7.rat, scalelength="7")$dataframe
calcgroup (school=2, group=1, dataframe=example7.rat, scalelength="7")$dataframe

#use names
data(example1a.rat)
calcallgroups(example1a.rat)

Calculates sociometric status determinations of a specified single group from a SSrat compliant dataframe

Description

In a group, all group members are asked to rate all other group members on a rating scale. This rating scale can have 3 (1..3), 5 (1..5), 7 (1..7) or 9 (1..9) rating points. The rating scale has a neutral mid point (respectively 2, 3, 4 and 5).
Application of SSrat::calcgroup calculates a classification into five categories of sociometric status, which is labeled as follows: (1) popular, (2) rejected, (3) negelected, (4) controversial and (5) average.

Usage

calcgroup(schoolid = 1, groupid = 1, dataframe, scalelength = c(5, 3, 7,
  9), alpha = c(0.1, 0.05, 0.01), NBcriteria = F, printresult = F)

Arguments

schoolid

The schoolnumber that identifies the school. Default = 1.

groupid

The groupnumber that identifies the group. Default = 1.

dataframe

The dataframe with the rating data. This dataframe should have columns schoolid, groupid, respid, and for n raters columns r01 to rn, with a maximum of r99. Function readratdatfixed can be used to create such a dataframe from a prepared text file.

scalelength

Either 3, 5, 7 or 9. Default = 5.

alpha

The significance levels to be applied to the probability distributions of the four total scores that have been derived from the ratings. By choosing an appropriate alpha, the user can fine tune the criterion for the status determination. A list of various alphas can be supplied. Default is the list (.10, .05, .01).

NBcriteria

A boolean. When TRUE, the classification criteria of Newcomb & Bukowski (1983) will be applied, in stead of the SSrat criteria. These criteria are applicable to rating scales of length 3. When this option is selected with longer scales, the midscore is conversed to 2, alls cores larger than the midscore are conversed to 3 and all scores lower than the midscore are conversed to 1. When another recoding scheme of the scores is preferred, the input ratings should be recoded to 1, 2 and 3 before the use of this function (use car::recode).

printresult

Boolean which identifies whether the calculated results should be shown. Default is False.

Details

It is assumed that the data are gathered on a single (2R+1)-point rating scale. For a 7-point scale, R = 3. The scale midpoint must represent a neutral judgment. The data are arranged in a matrix P, with rows belonging to assessors and columns belonging to the assessed.Let P[i, k] denote the rating given by assessor i to group member k.
First P* scores are calculated by subtracting R+1 from the values of P. The Sympathy scores S are calculated by replacing all negative scores of P* by zero. The Antipathy score A are calculated by replacing all positive scores of P* by zero and taking the absolute value. P* = S - A.The Preference score P are equal to the ratings obtained. The Impact scores I are calculated by taking the absolute values of P*. I = S + A.
In the next step, sum scores are calculated over columns. Then the distributions of these sumscores are calculated, using the principle of convolution. Lastly, the positions in the distributions are calculated to identify persons with scores in the areas of the lower and higher alpha percent. This allows us to translate the criteria of Coie et al. (1983) into probability terms. A person k obtains the following social determinations (E is expected value): Popular = sum(P[,k]) significantly high, sum(S[,k]) > E(sum(S[,k])) and sum(A[,k]) < E(sum(A[,k])); Rejected = sum(P[,k]) significantly low, sum(S[,k]) < E(sum(S[,k])) and sum(A[,k]) > E(sum(A[,k])); Neglected = sum(I[,k]) significantly low, sum(S[,k]) < E(sum(S[,k])) and sum(A[,k]) < E(sum(A[,k])); Controversial = sum(I[,k]) significantly high, sum(S[,k]) > E(sum(S[,k])) and sum(A[,k]) > E(sum(A[,k])); Average = remaining group members.

When the criteria of Newcomb & Bukowski (1993) are applied, the most liked nominations LM are the ratings > R and the least liked nominations LL are the ratings < R, and the impact score SI = LM + LL. The criteria for a person k are: Popular = sum(LM[,k]) significantly high, sum(LL[,k]) < E(sum(LL[,k])); Rejected = sum(LL[,k]) significantly high, sum(LM[,k]) < E(sum(LM[,k])); Neglected = sum(SI[,k]) significantly low; Controversial = sum(LM[,k]) significantly high and sum(LL[,k] > E(sum(LL[,k])) or sum(LL[,k]) significantly high and sum(LM[,k] > E(sum(LM[,k])); Average = remaining group members.

Value

dataframe

dataframe with the most relevant results, as calculated for each respondent by SSrat

dataframe$schoolid

school id as entered

dataframe$groupid

group id as entered

dataframe$respid

respondent id as entered

dataframe$nrAss

number of assessors who have given a valid rating

dataframe$tr.S

total rating Sympathy

dataframe$tr.A

total rating Antipathy

dataframe$tr.P

total rating Preference

dataframe$tr.I

total rating Impact

dataframe$SS.xx

Social Determination as attributed by SSrat, applying alpha = .xx. Defaults to SS.10, SS.05 and SS.01

S

matrix of Sympathy ratings

A

matrix of Antipathy ratings

P

matrix of Preferences

I

matrix of Impact scores

intermediate$pls

probability referring to left-sided testing of tr.S

intermediate$prs

probability referring to right-sided testing of tr.S

intermediate$es

expected value of tr.S

intermediate$pla

probability referring to left-sided testing of tr.A

intermediate$pra

probability referring to right-sided testing of tr.A

intermediate$ea

expected value of tr.A

intermediate$plp

probability referring to left-sided testing of tr.P

intermediate$prp

probability referring to right-sided testing of tr.P

intermediate$ep

expected value of tr.P

intermediate$pli

probability referring to left-sided testing of tr.I

intermediate$pri

probability referring to right-sided testing of tr.I

intermediate$ei

expected value of tr.I

Author(s)

Hans Landsheer

References

Coie, J.D., & Dodge, K.A. (1983). Continuities and changes in children's social status: A five-year longitudinal study. Merril-Palmer Quarterly, 29, 261-282.
Newcomb, A. F., & Bukowski, W. M. (1983). Social impact and social preference as determinants of children's peer group status. Developmental Psychology, 19, 856-867.
Maassen, G. H. and Landsheer, J. A. (1998). SSRAT: The processing of rating scales for the determination of two-dimensional sociometric status. Behavior Research Methods Instruments &amp; Computers, 30(4), 674-679.

See Also

readratdatafixed

Examples

data(example5.rat)
# calc SSRAT results fot this group
out =calcgroup (school=1, group=23, data=example5.rat, scalelength="3")
out$dataframe

# calc Newcomb & Bukowski results for this group
out =calcgroup (school=1, group=23, data=example5.rat, scalelength="3", NBcriteria=TRUE)
out$dataframe

# calc Newcomb & Bukowski results for example1
data(example1.rat)
out =calcgroup (school=1, group=1, data=example1.rat, scalelength="7", NBcriteria=TRUE)
out$dataframe

# calc SSrat results for example1
out =calcgroup (school=1, group=1, data=example1.rat, scalelength="7")
out$dataframe

Show various features of the SSrat dataframe

Description

describeratdata shows the following features: Number of unique school, number of unique groups of raters/assessed, and for each group, the school to which the group belongs, the group identifier, the ratings that are actually used, the count of assessors, the count of assessed, the number of missing ratings, the bias in the ratings, the number of ratings less than the midrating, the number of ratings equal to the midrating, the number of ratings larger than the midrating. Function describeratdata is useful for a first check of the ratings./cr N.B. Unavailable values (NA) on the diagonal are not counted as mssing ratings.

Usage

describeratdata(dataframe)

Arguments

dataframe

The dataframe should have the following columns: schoolid groupid respid, and for n raters the columns r01 .. rn, with a maximum of r99. Function readratdatafixed creates an appropriate data frame from a text file with ratings.

Value

A data.frame with for each group:

schoolid

The school identifier

groupid

The group identifier

scores

The scores that have been used by the raters

assessors

The number of assessors

assessed

The number of assessed

missing

The number of missing ratings, not counting the missings on the diagonal

bias

The bias in the ratings, defined as the mean of the ratings minus the midscore value (R)

ltR

The number of ratings, less than the midscore value (R)

R

The number of ratings, equal to the midscore value (R)

gtR

The number of ratings, greater than the midscore value (R)

Author(s)

Hans Landsheer

See Also

readratdatafixed

Examples

data(example6.rat)
describeratdata(example6.rat)
data(example7.rat)
describeratdata(example7.rat)
data(example1a.rat)
describeratdata(example1a.rat)

Enter or edit rating data

Description

Enter or edit rating data. Function enterratdata creates a dataframe in a format that can be processed by SSrat functions calcgroup and calcallgroups.

Usage

enterratdata(dataframe = NULL, resplabel = F)

Arguments

dataframe

Ssrat conformant dataframe. If NULL a new dataframe is created (default). Otherwise, the dataframe is opened for editing.

resplabel

Boolean, default is FALSE. When TRUE, a column resplabel is added as the first column of the dataframe. If dataframe already has a column resplabel, this id preserved.

Details

The SSrat conformant dataframe has repondent identifiers and ratings received. The respondent identifiers are schoolid, groupid, respid en optionally respname. The ratings received are named r01, r02 .. rn, where n is the last rated, with a maximum of r99. Multiple groups can be entered. It is not possible (or sensible) to add other variables.

Value

A data.frame with columns:

resplabel

An identification label of the rater (and of the assessed). Optional.

schoolid

Identification number of the secondary group level, most often a school.

groupid

Identification number of the first group level, most often a school class.

respid

Identification number of the rater (and of the assessed).

r01..r0n

Ratings received by respid = 1 .. respid = n, with a maximum ofr99. Respid's < 10 are padded with a zero.

Note

To allow for the combination of groups with different sizes in a single file, it is important to enumerate the n respondents from 1 to n, respectively use the columnnames r01 to rn for the received ratings. These column names are padded with a zero (r01, r02 etc.) to allow for easy ordening of these columns after a merge. Background data of each respondent can be added to the output data.frame of calcgroup or calcallgroups.

Author(s)

Hans Landsheer

See Also

calcgroup calcallgroups readratdatafixed edit

Examples

# These examples require human intervention and are therefore placed in a
# don't run section. They can only be excuted interactively.
# create a new data frame with rating data
## Not run: df=enterratdata()
 
# edit existing data frame
## Not run: df=enterratdata(df)
 
# add respondent names to the dataframe
## Not run: df=enterratdata(df, resplabel=TRUE)
 
#create a new data frame with rating data and respondent names
## Not run: df=enterratdata(resplabel=TRUE)

Example 1 of rating data that can be processed further to obtain social status determinations

Description

The result of readratdatafixed("<example1.rat.txt>"). A 7-point rating scale has been used. Numbers of assessors and assessed are equal (10). Each respondent is identified by a schoolid, a group id and a respondent id. The rows contain the assessors, the columns contain the assessed. When rater equals ratee (diagonal), the rating is NA.

Format

A data frame with 10 observations of 9 ratings.

schoolid

a numeric vector, identifying the second group level

groupid

a numeric vector, identifying the first group level.

respid

a numeric vector, identifying the individual.

r01

ratings received by respondent 1.

r02

ratings received by respondent 2.

r03

ratings received by respondent 3.

r04

ratings received by respondent 4.

r05

ratings received by respondent 5.

r06

ratings received by respondent 6.

r07

ratings received by respondent 7.

r08

ratings received by respondent 8.

r09

ratings received by respondent 9.

r10

ratings received by respondent 10.

Note

Rating data can be entered directly into a SSrat compliant dataframe, using edit. Colums needed are: "schoolid", "groupid", "respid", and for <n> raters "r01", "r02".."r<n>". Optionally, a column named "resplabel" can be entered, containing the names of the raters/assessed. The raters (assessors) are in rows and assessed in columns. For example:
mydata=data.frame(schoolid=numeric(0), groupid=numeric(0), respid=numeric(0),
r01=numeric(0), r02=numeric(0), r03=numeric(0)); mydata=edit(mydata)

See Also

readratdatafixed example1a.rat example2.rat example3.rat example4.rat example5.rat example6.rat example7.rat klas2.rat

Examples

data(example1.rat)

Example 1a of rating data with names of the raters (and assessed)

Description

Ratings with the names of the raters (and of the assessed).
The result of readratdatafixed("<example1a.rat.txt>"). A 7-point rating scale has been used. Numbers of assessors and assessed are equal (10). Each respondent is identified by a respname, schoolid, a group id and a respondent id. The rows contain the assessors, the columns contain the assessed. When rater equals assessed (diagonal), the rating is NA.

Format

A data frame with 10 observations of 9 ratings.

resplabel

a string vector with an additional identifier of the raters (and assessed).

schoolid

a numeric vector, identifying the second group level.

groupid

a numeric vector, identifying the first group level.

respid

a numeric vector, identifying the individual.

r01

ratings received by respondent 1.

r02

ratings received by respondent 2.

r03

ratings received by respondent 3.

r04

ratings received by respondent 4.

r05

ratings received by respondent 5.

r06

ratings received by respondent 6.

r07

ratings received by respondent 7.

r08

ratings received by respondent 8.

r09

ratings received by respondent 9.

r10

ratings received by respondent 10.

Note

Rating data can be entered directly into a SSrat compliant dataframe, using edit. Colums needed are: "schoolid", "groupid", "respid", and for <n> raters "r01", "r02".."r<n>". Optionally, a column named "resplabel" can be entered, containing the names of the raters/assessed. The raters (assessors) are in rows and assessed in columns. For example:
mydata=data.frame(schoolid=numeric(0), groupid=numeric(0), respid=numeric(0),
r01=numeric(0), r02=numeric(0), r03=numeric(0)); mydata=edit(mydata)

See Also

readratdatafixed example1.rat example1a.rat example2.rat example3.rat example4.rat example5.rat example6.rat example7.rat klas2.rat

Examples

data(example1a.rat)

Example 2 of rating data with more raters than assessed

Description

Number of assessors (rows) is smaller then the number of assessed (columns).
The result of readratdatafixed("<example2.rat.txt>"). A 7-point rating scale has been used. Each respondent is identified by a schoolid, a group id and a respondent id. The rows contain the assessors, the columns contain the assessed. When rater equals assessed (diagonal), the rating is NA.

Format

This dataframe has 10 rated persons, but only 7 raters.

schoolid

a numeric vector, identifying the second group level

groupid

a numeric vector, identifying the first group level.

respid

a numeric vector, identifying the individual.

r01

ratings received by respondent 1.

r02

ratings received by respondent 2.

r03

ratings received by respondent 3.

r04

ratings received by respondent 4.

r05

ratings received by respondent 5.

r06

ratings received by respondent 6.

r07

ratings received by respondent 7.

r08

ratings received by respondent 8.

r09

ratings received by respondent 9.

r10

ratings received by respondent 10.

Note

Rating data can be entered directly into a SSrat compliant dataframe, using edit. Colums needed are: "schoolid", "groupid", "respid", and for <n> raters "r01", "r02".."r<n>". Optionally, a column named "resplabel" can be entered, containing an additional identifier of the raters/assessed. The raters (assessors) are in rows and assessed in columns. For example:
mydata=data.frame(schoolid=numeric(0), groupid=numeric(0), respid=numeric(0),
r01=numeric(0), r02=numeric(0), r03=numeric(0)); mydata=edit(mydata)

See Also

readratdatafixed example1.rat example1a.rat example2.rat example3.rat example4.rat example5.rat example6.rat example7.rat klas2.rat

Examples

data(example2.rat)

Example 3 of rating data with more assessors than assessed

Description

Number of assessors (rows) is larger then the number of assessed (columns).
This data set has missing ratings. It is the result of readratdatafixed("<example3.rat.txt>"). A 7-point rating scale has been used. Each respondent is identified by a schoolid, a group id and a respondent id. The rows contain the assessors, the columns contain the assessed. When rater equals ratee (diagonal), the rating is NA.

Format

This dataframe has 7 rated persons, who are assessed by 10 raters.

schoolid

a numeric vector, identifying the second group level

groupid

a numeric vector, identifying the first group level.

respid

a numeric vector, identifying the individual.

r01

ratings received by respondent 1.

r02

ratings received by respondent 2.

r03

ratings received by respondent 3.

r04

ratings received by respondent 4.

r05

ratings received by respondent 5.

r06

ratings received by respondent 6.

r07

ratings received by respondent 7.

Note

Rating data can be entered directly into a SSrat compliant dataframe, using edit. Colums needed are: "schoolid", "groupid", "respid", and for <n> raters "r01", "r02".."r<n>". Optionally, a column named "resplabel" can be entered, containing an additional identifier of the raters/assessed. The raters (assessors) are in rows and assessed in columns. For example:
mydata=data.frame(schoolid=numeric(0), groupid=numeric(0), respid=numeric(0),
r01=numeric(0), r02=numeric(0), r03=numeric(0)); mydata=edit(mydata)

See Also

readratdatafixed example1.rat example1a.rat example2.rat example3.rat example4.rat example5.rat example6.rat example7.rat klas2.rat

Examples

data(example3.rat)

Example 4 of rating data with some missing data

Description

The result of readratdatafixed("<example4.rat.txt>"). A 7-point rating scale has been used. Numbers of assessors and assessed are equal (10). Each respondent is identified by a schoolid, a group id and a respondent id. The rows contain the assessors, the columns contain the assessed. When rater equals ratee (diagonal), the rating is NA.

Format

A data frame with 10 observations of 9 ratings; some of the ratings are missing.

schoolid

a numeric vector, identifying the second group level

groupid

a numeric vector, identifying the first group level.

respid

a numeric vector, identifying the individual.

r01

ratings received by respondent 1.

r02

ratings received by respondent 2.

r03

ratings received by respondent 3.

r04

ratings received by respondent 4.

r05

ratings received by respondent 5.

r06

ratings received by respondent 6.

r07

ratings received by respondent 7.

r08

ratings received by respondent 8.

r09

ratings received by respondent 9.

r10

ratings received by respondent 10.

Note

Rating data can be entered directly into a SSrat compliant dataframe, using edit. Colums needed are: "schoolid", "groupid", "respid", and for <n> raters "r01", "r02".."r<n>". Optionally, a column named "resplabel" can be entered, containing an additional identifier of the raters/assessed. The raters (assessors) are in rows and assessed in columns. For example:
mydata=data.frame(schoolid=numeric(0), groupid=numeric(0), respid=numeric(0),
r01=numeric(0), r02=numeric(0), r03=numeric(0)); mydata=edit(mydata)

See Also

readratdatafixed example1.rat example1a.rat example2.rat example3.rat example5.rat example6.rat example7.rat klas2.rat

Examples

data(example4.rat)

Example 5 of rating data Newcomb and Bukowski ‘3-point ratings’

Description

Newcomb and Bukowski rating scale with 3 points.
The result of readratdatafixed("<example5.rat.txt>"). Numbers of assessors and assessed are equal (10). Each respondent is identified by a schoolid, a group id and a respondent id. The rows contain the assessors, the columns contain the assessed. When rater equals assessed (diagonal), the rating is NA.

Format

A data frame with 10 observations of 9 ratings.

schoolid

a numeric vector, identifying the second group level

groupid

a numeric vector, identifying the first group level.

respid

a numeric vector, identifying the individual.

r01

ratings received by respondent 1.

r02

ratings received by respondent 2.

r03

ratings received by respondent 3.

r04

ratings received by respondent 4.

r05

ratings received by respondent 5.

r06

ratings received by respondent 6.

r07

ratings received by respondent 7.

r08

ratings received by respondent 8.

r09

ratings received by respondent 9.

r10

ratings received by respondent 10.

Note

Rating data can be entered directly into a SSrat compliant dataframe, using edit. Colums needed are: "schoolid", "groupid", "respid", and for <n> raters "r01", "r02".."r<n>". Optionally, a column named "resplabel" can be entered, containing an additional identifier of the raters/assessed. The raters (assessors) are in rows and assessed in columns. For example:
mydata=data.frame(schoolid=numeric(0), groupid=numeric(0), respid=numeric(0),
r01=numeric(0), r02=numeric(0), r03=numeric(0)); mydata=edit(mydata)

See Also

readratdatafixed example1a.rat example2.rat example3.rat example4.rat example5.rat example6.rat example7.rat klas2.rat

Examples

data(example5.rat)

Example 6 of rating data of two groups of unequal size

Description

The combined data matrices of two groups, groups 10 and 20. Please note that the missing ratings in group 10 are padded with NA's.
The result of readratdatafixed("<example6.rat.txt>"). A 7-point rating scale has been used. Each respondent is identified by a schoolid, a group id and a respondent id. The rows contain the assessors, the columns contain the assessed. When rater equals assessed (diagonal), the rating is NA.

Format

A data frame with 10 observations of 9 ratings.

schoolid

a numeric vector, identifying the second group level

groupid

a numeric vector, identifying the first group level.

respid

a numeric vector, identifying the individual.

r01

ratings received by respondent 1.

r02

ratings received by respondent 2.

r03

ratings received by respondent 3.

r04

ratings received by respondent 4.

r05

ratings received by respondent 5.

r06

ratings received by respondent 6.

r07

ratings received by respondent 7.

r08

ratings received by respondent 8.

r09

ratings received by respondent 9.

r10

ratings received by respondent 10.

Note

Rating data can be entered directly into a SSrat compliant dataframe, using edit. Colums needed are: "schoolid", "groupid", "respid", and for <n> raters "r01", "r02".."r<n>". Optionally, a column named "resplabel" can be entered, containing an additional identifier of the raters/assessed. The raters (assessors) are in rows and assessed in columns. For example:
mydata=data.frame(schoolid=numeric(0), groupid=numeric(0), respid=numeric(0),
r01=numeric(0), r02=numeric(0), r03=numeric(0)); mydata=edit(mydata)

See Also

readratdatafixed calcallgroups calcgroup example1.rat example1a.rat example2.rat example3.rat example4.rat example5.rat example7.rat klas2.rat

Examples

data(example6.rat)

Example 7 of rating data of three groups and two different rating scales

Description

The combined data matrices of three groups. Because the rating scale is 5 points for the groups (1, 1) and (2, 1), while a 7 points rating scale has been used in group (1, 3), function calcallgroups cannot be used for further processing. In stead, calcgroups must be used for each group seperately.
The result of readratdatafixed("<example7.rat.txt>"). Each respondent is identified by a schoolid, a group id and a respondent id. The rows contain the assessors, the columns contain the assessed. When rater equals assessed (diagonal), the rating is NA.

Format

A data frame with 10 observations of 9 ratings.

schoolid

a numeric vector, identifying the second group level

groupid

a numeric vector, identifying the first group level.

respid

a numeric vector, identifying the individual.

r01

ratings received by respondent 1.

r02

ratings received by respondent 2.

r03

ratings received by respondent 3.

r04

ratings received by respondent 4.

r05

ratings received by respondent 5.

r06

ratings received by respondent 6.

r07

ratings received by respondent 7.

r08

ratings received by respondent 8.

r09

ratings received by respondent 9.

r10

ratings received by respondent 10.

Note

Rating data can be entered directly into a SSrat compliant dataframe, using edit. Colums needed are: "schoolid", "groupid", "respid", and for <n> raters "r01", "r02".."r<n>". Optionally, a column named "resplabel" can be entered, containing an additional identifier of the raters/assessed. The raters (assessors) are in rows and assessed in columns. For example:
mydata=data.frame(schoolid=numeric(0), groupid=numeric(0), respid=numeric(0),
r01=numeric(0), r02=numeric(0), r03=numeric(0)); mydata=edit(mydata)
To allow for the combination of groups with different sizes in a single file, it is important to enumerate the n respondents from 1 to n, respectively use the columnnames r01 to rn for the received ratings. These column names are padded with a zero (r01, r02 etc.) to allow for easy ordening of these columns after a merge.

See Also

readratdatafixed calcallgroups calcgroup example1.rat example1a.rat example2.rat example3.rat example4.rat example5.rat example6.rat

Examples

data(example7.rat)

Plots the Sympathy, Antipathy, Preference or Impact table of a group

Description

Shows the social status of each person and the persons who have contributed to that status

Usage

gplot.SSrat(calcedgroup, maintitle = c("Sympathy", "Antipathy", "Preference",
  "Impact"), SS.alpha = "SS.05", thresh = 0)

Arguments

calcedgroup

calcedgroup is the outcome of the function calcgroup. See calcgroup for more information. When calcgroup$dataframe is extended with the variable resplabel, this is used automatically as an extra indicator of each respondent.

maintitle

The maintitle is either "Sympathy", "Antipathy"", "Preference"" or "Impact". This also determinates the selection of the correct table from calcedgroup.See calcgroup for more information. Default is "Sympathy".

SS.alpha

This can be any of the alpha's used for the calculation of status in the calcedgroups. Reasonable values are "SS.01" , "SS.05" or 0.10. Default is "SS.05". As a rule of thumb, alpha should be chosen so that the group of Popular respondents is about 15 column from the dataframe to use, and should be equal to that column name.

thresh

Number indicating the threshold for tie values. Only ties of value > thresh are displayed. By default, thresh = 0. This allows for the reduction of arrows (edges), which may make the plot more readable.

Details

Plots the Sociometric Status, as calculated by SSrat, of each individual in a group. In the case of positive or negative ratings (Sympathy or Antipathy), the arrows shows who has has provided these ratings. The left legend shows the social status, identified by color. The right legend shows the individuals, identified by number and optionally their names. See calcgroup for more information on the four SSrat data tables and alpha.

Value

A two-column matrix containing the vertex positions as x,y coordinates. See also gplot sna.

Author(s)

Hans Landsheer

References

Wasserman, S. and Faust, K. (1994) Social Network Analysis: Methods and Applications. Cambridge: Cambridge University Press.
Maassen, G. H. and Landsheer, J. A. (1998). SSRAT: The processing of rating scales for the determination of two-dimensional sociometric status. Behavior Research Methods Instruments & Computers, 30(4), 674-679.

See Also

calcgroup gplot

Examples

data(klas2.rat)
out =calcgroup (school=3, group=2, dataframe=klas2.rat, scalelength="3")
out$dataframe

gplot.SSrat(calcedgroup=out, maintitle="Sympathy", SS.alpha="SS.10")
gplot.SSrat(out, "Antipathy", SS.alpha="SS.10")
gplot.SSrat(out, "Preference", SS.alpha="SS.10")
x=gplot.SSrat(out, "Impact", SS.alpha="SS.10")
x

Example klas2 of rating data with names of the raters (assessed) and some missing values

Description

Ratings with the names of the raters (and of the assessed as the members of the group assess each other). Furthermore, some of these ratings are missing (NA).
The result of readratdatafixed("<klas2.rat.txt>"). A 3-point rating scale has been used. Numbers of assessors and assessed are equal (11). Each respondent is identified by a respname, schoolid, a group id and a respondent id. The rows contain the assessors, the columns contain the assessed. When rater equals assessed (diagonal), the rating is NA.

Format

A data frame with 10 observations of 9 ratings.

resplabel

a string vector with an optional identifier of the raters (and assessed).

schoolid

a numeric vector, identifying the second group level

groupid

a numeric vector, identifying the first group level.

respid

a numeric vector, identifying the individual.

r01

ratings received by respondent 1.

r02

ratings received by respondent 2.

r03

ratings received by respondent 3.

r04

ratings received by respondent 4.

r05

ratings received by respondent 5.

r06

ratings received by respondent 6.

r07

ratings received by respondent 7.

r08

ratings received by respondent 8.

r09

ratings received by respondent 9.

r10

ratings received by respondent 10.

r11

ratings received by respondent 11.

Note

Rating data can be entered directly into a SSrat compliant dataframe, using edit. Colums needed are: "schoolid", "groupid", "respid", and for <n> raters "r01", "r02".."r<n>". Optionally, a column named "resplabel" can be entered, containing an extra identifier of the raters/assessed. The raters (assessors) are in rows and assessed in columns. For example:
mydata=data.frame(schoolid=numeric(0), groupid=numeric(0), respid=numeric(0),
r01=numeric(0), r02=numeric(0), r03=numeric(0)); mydata=edit(mydata)
To allow for the combination of groups with different sizes in a single file, it is important to enumerate the n respondents from 1 to n, respectively use the columnnames r01 to rn for the received ratings. These column names are padded with a zero (r01, r02 etc.) to allow for easy ordening of these columns after a merge.

See Also

readratdatafixed calcallgroups calcgroup example1.rat example1a.rat example2.rat example3.rat example4.rat example5.rat example6.rat example7.rat

Examples

data(klas2.rat)

Reads the ratings of a group of raters from a specified textfile into a SSrat compliant dataframe

Description

Given the ratings of a group in a specified textfile, readratdatafixed produces a dataframe that can be processed further with SSrat, using function calcgroup.

Usage

readratdatafixed(filename, pnames = c(0, 0), pschoolid = c(1, 2),
  pgroupid = c(3, 4), prespid = c(5, 6), pratings = c(8, 17),
  rowsEQassessors = T)

Arguments

filename

the filename of the textfile to be processed

pnames

optional: the fixed postion of the names of the raters/assessed. Default: c(0, 0), not available.

pschoolid

the fixed position of a number that identifies the school.

pgroupid

the fixed position of a number that identifies the group.

prespid

the fixed position of a number that identifies the rater.

pratings

the fixed position of the ratings, where each rating is a number of the set 1, 2, 3, 1..5, 1..7 or 1..9. When there are 10 raters, the positions covers 10 single digit numbers.

rowsEQassessors

A boolean that identifies whether the raters (assessors) are in rows or not. Default is TRUE, the assessors are in rows.

Details

Example text file "example1.rat.txt" has the following format:
010101 .717211723
010102 7 72121714
010103 76 7231711
010104 771 141756
010105 7672 51171
010106 77172 1123
010107 767216 711
010108 7717211 45
010109 76721711 6
010110 771722112

schoolid has position c(1,2), groupid has position c(3,4), respid has position c(5,6), and rating has position c(8,17)

The ratings form often a square (i.e., number of raters is equal to the number of assessed), but the number of raters can be larger or smaller than the number of assessed. See example2.rat.txt for number of raters larger than the number of ratees. See example3.rat.txt for number of raters smaller than the number of ratees.
Ratings can be MISSING, identified by a zero or a non-numeric character. In example1.rat.txt the missing value indicator is a space. File klas2.rat.txt provides another example.
Raters can be in columns. Set rowsEQassessors = FALSE. See example4.rat.txt.
Multiple groups can be processed by radratdatafixed in a single run. It is recommended that the groups are divided by an empty line. The positions of the fields need to be the same for each group. File example6.rat.txt. example7.rat.txt and example8.rat.txt provide examples. A string that identifies each respondent can be entered optionally. File example1a.rat.txt and klas2.rat.txt provide examples.

Value

The output is a dataframe that can be processed further by SSrat.
File example1.rat.txt produces a dataframme with the following columns:
schoolid groupid respid r01 r02 r03 r04 r05 r06 r07 r08 r09 r10
and NA where missing values are detected.

N.B. Wrong identification of the various field positions easily leads to a dataframe with unexpected missing values (NA's).

Note

Rating data can be entered directly into a SSrat compliant dataframe, using Edit. Colums needed are: "schoolid", "groupid", "respid", and for <n> raters "r01", "r02".."r<n>", with a maximum of r99. Optionally, a column named "resplables" can be entered, containing an extra string identifier of the raters/assessed. The raters (assessors) are in rows and assessed in columns.

Author(s)

Hans Landsheer

References

Maassen, G. H. and Landsheer, J. A. (1998). SSRAT: The processing of rating scales for the determination of two-dimensional sociometric status. Behavior Research Methods Instruments & Computers, 30(4), 674-679.

See Also

calcgroup

Examples

#example file names
filenames = c("example1.rat.txt","example2.rat.txt","example3.rat.txt",
              "example4.rat.txt","example5.rat.txt","example6.rat.txt",
              "example7.rat.txt","example1a.rat.txt","klas2.rat.txt")
filenames=paste(path.package("SSrat"),"/extdata/",filenames, sep="") 

# show raw text file
cat( readLines( filenames[1] ) , sep = "\n" )
              
#single group, no names, standard positions
(example1.rat = readratdatafixed(filenames[1]))
(example2.rat = readratdatafixed(filenames[2])) # raters < assessed
(example3.rat = readratdatafixed(filenames[3])) # raters > assessed
(example4.rat = readratdatafixed(filenames[4], rowsEQassessors = FALSE)) # raters in columns
(example5.rat = readratdatafixed(filenames[5]))


#multiple groups
(example6.rat = readratdatafixed(filenames[6]))
(example7.rat = readratdatafixed(paste(filenames[7])))

#single groups, with names: define positions
(example1a.rat = readratdatafixed(filenames[8], 
                           pnames=c(1,10), 
                           pschoolid=c(11,12), pgroupid=c(13,14),
                           prespid=c(15,16), pratings=c(18,27)))
(klas2.rat = readratdatafixed(filenames[9], 
                            pnames=c(10,20), 
                            pschoolid=c(1,2), pgroupid=c(3,4),
                            prespid=c(5,6), pratings=c(21,32)))

school, year 1996

Description

Rating data of 1996. Measurements of these Dutch primary school children were taken three times, in 1996, 1997 and 1998. In 1996, the sample consisted of 193 students (91 boys, 96 girls, six gender unknown); 189 students were involved in 1997 (90 boys, 95 girls, 4 gender unknown); and in 1998, 189 students participated (91 boys, 98 girls). Average age in 1998 was 11.3 years, with ages ranging from 11 to 13 years. The participants were asked to rate all their classmates on a seven-point scale: dislike very much, dislike much, dislike, ordinary, like, like much, and like very much.

Details

A data frame with 193 observations of 32 variables, with (a maximum of) 29 ratings (r01..r29). schoolid a numeric vector, identifying the second group level; groupid a numeric vector, identifying the first group level; respid a numeric vector, identifying the individual; r01:r29 ratings received by respondent 1..29.

Source

Maassen, G.H., Van Boxtel, H.W., & Goossens, F.A. (2005). Reliabilty of nomination and two-dimensional rating scale methods for sociometric status determination. Journal of Applied Developmental Psychology, 26, 51-68.

See Also

Ss97.rat Ss98.rat bg

Examples

data(Ss96.rat)

school, year 1997

Description

Rating data of 1997. Measurements of these Dutch primary school children were taken three times, in 1996, 1997 and 1998. In 1996, the sample consisted of 193 students (91 boys, 96 girls, six gender unknown); 189 students were involved in 1997 (90 boys, 95 girls, 4 gender unknown); and in 1998, 189 students participated (91 boys, 98 girls). Average age in 1998 was 11.3 years, with ages ranging from 11 to 13 years. The participants were asked to rate all their classmates on a seven-point scale: dislike very much, dislike much, dislike, ordinary, like, like much, and like very much.

Details

A data frame with 189 observations of 32 variables, (with a maximum of 29) ratings (r01..r29). schoolid a numeric vector, identifying the second group level; groupid a numeric vector, identifying the first group level; respid a numeric vector, identifying the individual; r01:r29 ratings received by respondent 1..29.

Source

obtained ~~ Maassen, G.H., Van Boxtel, H.W., & Goossens, F.A. (2005). Reliabilty of nomination and two-dimensional rating scale methods for sociometric status determination. Journal of Applied Developmental Psychology, 26, 51-68.

See Also

Ss96.rat Ss98.rat bg

Examples

data(Ss97.rat)

school, year 1998

Description

Rating data of 1998. Measurements of these Dutch primary school children were taken three times, in 1996, 1997 and 1998. In 1996, the sample consisted of 193 students (91 boys, 96 girls, six gender unknown); 189 students were involved in 1997 (90 boys, 95 girls, 4 gender unknown); and in 1998, 189 students participated (91 boys, 98 girls). Average age in 1998 was 11.3 years, with ages ranging from 11 to 13 years. The participants were asked to rate all their classmates on a seven-point scale: dislike very much, dislike much, dislike, ordinary, like, like much, and like very much.

Details

A data frame with 189 observations of 33 variables, with (a maximum of) 30 ratings (r01..r30). schoolid a numeric vector, identifying the second group level; groupid a numeric vector, identifying the first group level; respid a numeric vector, identifying the individual; r01:r30 ratings received by respondent 1..30.

Source

obtained ~~ Maassen, G.H., Van Boxtel, H.W., & Goossens, F.A. (2005). Reliabilty of nomination and two-dimensional rating scale methods for sociometric status determination. Journal of Applied Developmental Psychology, 26, 51-68.

See Also

Ss96.rat Ss97.rat bg

Examples

data(Ss98.rat)

Ssrat, a Program for Two-dimensional Sociometric Status Determination with Rating Scales

Description

SSrat is a collection of functions for two-dimensional sociometric status determination with rating scales. The theory underlying the program is described in Maassen, Akkermans and Van der Linden (1996). A discussion of the advantages of using ratings for sociometric status classification is given by Maassen, Van der Linden and Akkermans (1997). The basics of the algorithms are described in Maassen and Landsheer (1998). For each person assessed, SSRAT computes probability distributions of the total scores for ‘sympathy’ (S), ‘antipathy’ (A), ‘social preference’ (P) and ‘social impact’ (I), and applies criteria for sociometric status categorization as described in Maassen et al. (1996).

Details

Package: SSrat
Type: Package
Version: 1.0
Date: 2014-09-09
License: GPL-2

Author(s)

Gerard Maassen and Hans Landsheer
Maintainer: Hans Landsheer

References

Maassen, G.H., Akkermans, W. and Van der Linden, J.L. (1996). Two-dimensional Sociometric Status Determination with Rating Scales; a Probability and a Standard Score Method. Small Group Research, 27, 56-78.
Maassen, G. H., Linden, J. L. V. D., & Akkermans, W. (1997). Nominations, Ratings, and the Dimensions of Sociometric Status. International Journal of Behavioral Development, 21(1), 179-200. doi:10.1080/016502597385045
Maassen, G. H., & Landsheer, J. A. (1998). SSRAT: The processing of rating scales for the determination of two-dimensional sociometric status. Behavior Research Methods Instruments & Computers, 30(4), 674-679.

See Also

For plotting see also package sna
Also readratdatafixed uses packages plyr