R: Converting a correlation matrix into a covariance matrix

cor2cov {propagate} | R Documentation

## Converting a correlation matrix into a covariance matrix

### Description

Converts a correlation matrix into a covariance matrix using variance information. It is therefore the opposite of `cov2cor`.

### Usage

    cor2cov(C, var)

### Arguments

`C` | a symmetric numeric correlation matrix \mathbf{C}.
`var` | a vector of variances σ_n^2.

### Details

Calculates the covariance matrix \mathbf{Σ} using a correlation matrix \mathbf{C} and outer products of the standard deviations σ_n:

\mathbf{Σ} = \mathbf{C} \cdot σ_n \otimes σ_n

### Value

The corresponding covariance matrix.

### Author(s)

Andrej-Nikolai Spiess

### Examples

    ## Example in Annex H.2 from the GUM 2008 manual
    ## (see 'References'), simultaneous resistance
    ## and reactance measurement.
    data(H.2)
    attach(H.2)

    ## Original covariance matrix.
    COV <- cov(H.2)
    ## extract variances
    VAR <- diag(COV)

    ## cor2cov covariance matrix.
    COV2 <- cor2cov(cor(H.2), VAR)

    ## Equal to original covariance matrix.
    all.equal(COV2, COV)

[Package propagate version 1.0-6 Index]