Data preparation with RENUMF90

Yutaka Masuda

August 2026

Back to index.html.

Advanced usage of RENUMF90

In this section, we will introduce some advanced features in RENUMF90. We commonly use the following raw data and pedigree file. The files come from the multiple-trait model shown in the previous chapter.

  ID006  A  1  1.0  3.0  4.5
  ID009  A  2  1.0  2.0  7.5
  ID012  A  1  2.0  4.0  3.5
  ID007  B  2  2.0  6.0 -0.5
  ID010  B  1  1.0  3.0  5.5
  ID013  B  2  2.0  6.0  1.5
  ID008  C  1  2.0  6.0 -1.5
  ID011  C  2  1.0  6.0  2.5
  ID014  C  1  1.0  8.0  0.5
  ID015  C  2  2.0  4.0  4.5

The pedigree file is as follows.

 ID001      0      0
 ID002      0      0
 ID003      0      0
 ID004      0      0
 ID005      0      0
 ID006      0      0
 ID007  ID002  ID005
 ID008  ID001  ID004
 ID009  ID002  ID003
 ID010  ID007  ID006
 ID011  ID007  ID004
 ID012  ID011  ID008
 ID013  ID011  ID010
 ID014  ID009  ID013
 ID015  ID011  ID010

Combined effects

RENUMF90 can treat a field as a combination of existing fields. This is useful when an interaction effect is incorporated. The keyword COMBINE provides this feature. The following example is from the previous section, with this keyword added.

COMBINE
6 2 3
DATAFILE
rawdata9.txt
TRAITS
5
FIELDS_PASSED TO OUTPUT

WEIGHT(S)

RESIDUAL_VARIANCE
1.0
EFFECT          # 1st effect
2 cross alpha
EFFECT          # 2nd effect
3 cross alpha
EFFECT          # 3rd effect
4 cov
EFFECT          # interaction effect 1 x 2
6 cross alpha

The COMBINE statement should be used as follows.

You can run RENUMF90 and check renf90.tables. Columns 2 and 3 are successfully combined into one effect (group 4).

 Effect group 1 of column 1 with 3 levels , effect # 1
 Value    #    consecutive number
A 3 1
B 3 2
C 4 3
 Effect group 2 of column 1 with 2 levels , effect # 2
 Value    #    consecutive number
1 5 1
2 5 2
 Effect group 4 of column 1 with 6 levels , effect # 4
 Value    #    consecutive number
A1 2 1
A2 1 2
B1 1 3
B2 2 4
C1 2 5
C2 2 6

Pedigree manipulation

RENUMF90 prunes the pedigree. By default, the program traces back 3 generations (up to great-grandparents) from animals with phenotypes or genotypes. The number of generations to trace back can be changed with the option PED_DEPTH, which should be placed just after SNP_FILE (or FILE_POS if no genetic markers are used). The following statements define 10 generations to be traced.

PED_DEPTH
10

If you put a large number (such as 100), you can trace back all ancestors of the current animals. If you put 0, RENUMF90 tries to include all animals found in the raw pedigree file, even if the pedigree animals are not related to the animals with phenotypes or genotypes.

Animal model options

RENUMF90 supports the permanent environmental (PE) effect and the maternal genetic (MG) and maternal permanent environmental (MPE) effects as additional random effects in the animal model using the OPTIONAL keyword. The following is a parameter file with the maximum set of options (PE, MG, and MPE).

DATAFILE
rawdata9.txt
TRAITS
5
FIELDS_PASSED TO OUTPUT

WEIGHT(S)

RESIDUAL_VARIANCE
1.0
EFFECT          # 1st effect
2 cross alpha
EFFECT          # 2nd effect
3 cross alpha
EFFECT          # 3rd effect
4 cov
EFFECT          # 4th effect = animal
1 cross alpha
RANDOM
animal
OPTIONAL
pe mat mpe
FILE
rawpedigree9.txt
(CO)VARIANCES
1.0 0.2
0.2 0.3
(CO)VARIANCES_PE
1.5
(CO)VARIANCES_MPE
0.5

You can read this file as follows.

Definition of unknown parent groups (UPGs)

RENUMF90 can assign UPGs to unknown parents. There are 2 ways to do this, but here we introduce only one approach because of its simplicity. The following keyword generates UPGs.

UPG_TYPE
in_pedigrees

The option should be placed just after PED_DEPTH. With this option, RENUMF90 interprets a negative sire (or dam) ID as a UPG. Therefore, you should prepare separate columns for sires and dams that contain negative integers for unknown animals instead of 0. Also, all real animals should be in the pedigree file with standard IDs (other than negative integers).

The following is a simple example of UPGs. The 4th column is for sires with groups (1 and 2), and the 5th column is for dams with groups (3 and 4). You can specify column 4 (instead of 2) as the sire and column 5 (instead of 3) as the dam with the FILE_POS keyword.

 ID001      0      0     -1     -4
 ID002      0      0     -2     -3
 ID003      0      0     -1     -3
 ID004      0      0     -2     -3
 ID005      0      0     -2     -4
 ID006      0      0     -1     -3
 ID007  ID002  ID005  ID002  ID005
 ID008  ID001  ID004  ID001  ID004
 ID009  ID002  ID003  ID002  ID003
 ID010  ID007  ID006  ID007  ID006
 ID011  ID007  ID004  ID007  ID004
 ID012  ID011  ID008  ID011  ID008
 ID013  ID011  ID010  ID011  ID010
 ID014  ID009  ID013  ID009  ID013
 ID015  ID011  ID010  ID011  ID010

The instruction file can be as follows.

DATAFILE
rawdata9.txt
TRAITS
5
FIELDS_PASSED TO OUTPUT

WEIGHT(S)

RESIDUAL_VARIANCE
1.0
EFFECT          # 1st effect
2 cross alpha
EFFECT          # 2nd effect
3 cross alpha
EFFECT          # 3rd effect
4 cov
EFFECT          # 4th effect = animal
1 cross alpha
RANDOM
animal
FILE
rawpedigree9c.txt
FILE_POS        #  positions of animal, sire, dam, 0, 0
1 4 5 0 0
UPG_TYPE
in_pedigrees
(CO)VARIANCES
1.0

The resulting pedigree file is as follows. Although you have only 15 real animals, there are codes greater than 15 (between 16 and 19) in the sire and dam columns. These numbers greater than the number of real animals represent UPGs.

1 7 5 1 0 2 1 0 0 ID015
13 17 18 3 0 0 0 0 2 ID004
11 17 19 3 0 0 0 0 1 ID005
2 16 18 3 0 0 1 0 1 ID006
3 12 11 1 0 2 1 2 0 ID007
4 14 13 1 0 2 1 0 1 ID008
5 3 2 1 0 2 1 0 2 ID010
6 12 15 1 0 2 1 1 0 ID009
7 3 13 1 0 2 1 3 0 ID011
8 7 4 1 0 2 1 0 0 ID012
14 16 19 3 0 0 0 1 0 ID001
9 7 5 1 0 2 1 0 1 ID013
12 17 18 3 0 0 0 2 0 ID002
10 6 9 1 0 2 1 0 0 ID014
15 16 18 3 0 0 0 0 1 ID003

Considering inbreeding coefficients in \(\mathbf{A}^{-1}\)

By default, RENUMF90 creates a pedigree file that results in \(\mathbf{A}^{-1}\) without inbreeding. To include inbreeding coefficients in \(\mathbf{A}^{-1}\), you have to generate a special renumbered pedigree file with RENUMF90 using the INBREEDING keyword.1 This keyword should be placed after UPG_TYPE.

The basic usage of this option is shown below.

INBREEDING
pedigree

You should put the literal word pedigree here (you should not replace it with the pedigree file name). With this option, RENUMF90 calculates inbreeding coefficients using Meuwissen and Luo (1992), based on the pedigree, and saves them in the file renaddxx.ped, which may have been pruned by several generations (see PED_DEPTH for details).

If you want to supply pre-calculated inbreeding coefficients stored in a file, use another option. Assuming your file is inb.txt, the following option can be used.

INBREEDING
file inb.txt

The file is a space-separated text file with 2 columns: (1) the original animal ID and (2) the inbreeding coefficient (ranging from 0 to 1).

The following example uses the pedigree option.

DATAFILE
rawdata9.txt
TRAITS
5
FIELDS_PASSED TO OUTPUT

WEIGHT(S)

RESIDUAL_VARIANCE
1.0
EFFECT          # 1st effect
2 cross alpha
EFFECT          # 2nd effect
3 cross alpha
EFFECT          # 3rd effect
4 cov
EFFECT          # 4th effect = animal
1 cross alpha
RANDOM
animal
FILE
rawpedigree9.txt
INBREEDING
pedigree
(CO)VARIANCES
1.0

The resulting pedigree file renadd04.ped has the inb/upg code in the 4th column.

1 7 5 2000 0 2 1 0 0 ID015
13 0 0 1000 0 0 0 0 2 ID004
11 0 0 1000 0 0 0 0 1 ID005
2 0 0 1000 0 0 1 0 1 ID006
3 12 11 2000 0 2 1 2 0 ID007
4 14 13 2000 0 2 1 0 1 ID008
5 3 2 2000 0 2 1 0 2 ID010
6 12 15 2000 0 2 1 1 0 ID009
7 3 13 2000 0 2 1 3 0 ID011
8 7 4 2000 0 2 1 0 0 ID012
14 0 0 1000 0 0 0 1 0 ID001
9 7 5 2000 0 2 1 0 1 ID013
12 0 0 1000 0 0 0 2 0 ID002
10 6 9 2133 0 2 1 0 0 ID014
15 0 0 1000 0 0 0 0 1 ID003

Looking at the 4th column, when an animal has non-inbred parents, the value should be 1000 if both parents are unknown, 1333 if one parent is unknown, or 2000 if both parents are known. Animal 10 (ID014) has inbred parents, so the inb/upg code is different from those of the other animals.

Order of keywords

The keywords used in the instruction file should be ordered according to the manual. We show the exact order of keywords supported by RENUMF90.

Keyword optional possible values
COMBINE optional definition of new field as a combination of existing fields
DATAFILE mandatory name of raw data file
TRAITS mandatory positions of observations in the raw data file
`FIELDS_PASSED TO OUTP UT` mandator y positions of items in the raw data file to be passed to renf90.dat
WEIGHT(S) mandatory positions of weights in the raw data file
RESIDUAL_VARIANCE mandatory residual covariance matrix
EFFECT mandatory effect description
NESTED optional positions of nested covariates
RANDOM optional declaration of random effect
FILE optional name of raw pedigree file
FILE_POS optional positions of animal ID, sire ID and dam ID
SNP_FILE optional name of SNP marker file
PED_DEPTH optional the maximum number of generations back from animals with phenotypes or genotypes
GEN_INT optional generation interval to set unknown parent groups (UPG)
REC_SEX optional check if records are found in specific sex
UPG_TYPE optional UPG specification
INBREEDING optional create pedigree file with inbreeding
RANDOM_REGRESSION optional put covariates for random regressions
RR_POSITION optional positions of covariates for random regressions
(CO)VARIANCES optional covariance components
(CO)VARIANCES_PE optional covariance components for animal’s PE effects
(CO)VARIANCES_MPE optional covariance components for maternal PE effects
OPTION optional option parameters

Renumbering table and “back-numbering”

RENUMF90 replaces the level or individual identifier with an integer code for the effects specified in the instruction file. The file renf90.tables contains the cross-reference (correspondence) table representing the original identifiers and their integer codes. RENUMF90 produces one more table file, renf90.fields, which contains the effects that have been processed (“renumbered”). These files can be used to link the original identifiers with the solutions (BLUEs and BLUPs) from BLUPF90+ (and the other family programs).

You can perform “back-numbering” manually, although a tool called IDSOLF90 is available for this purpose. Although there is no formal manual for IDSOLF90, its usage is simple. This is an interactive command-line tool, and the user enters the required information to complete the tasks. IDSOLF90 gets the original identifiers from renf90.tables, renf90.fields, and the renumbered pedigree file, then matches them with the BLUEs and BLUPs stored in a file named solutions. The program assumes that the renumbering tables are consistent across these files.

More recently, the BLUPF90 programs have introduced an option, OPTION origID, which automatically performs “back-numbering” and saves the estimates and predictions with their original codes or IDs in the file solutions.orig.

Back to index.html.