Если ваша ковариационная матрица представляет собой массив numpy, например:
cov = np.array([[1, 2, 3],
[2, 10, 4],
[3, 4, 100]])
Тогда вы можете получить нужную подматрицу с помощью расширенного индексирования :
subset = [0, 2] # a, c
cov[np.ix_(subset, subset)]
# array([[ 1, 3],
# [ 3, 100]])
Редактировать :
Если ваша ковариационная матрица имеет вид pandas DataFrame (например, полученный как cov = df.cov()
для некоторого кадра данных df
со столбцами 'a', 'b', 'c', ...
), чтобы получить подмножество 'a'
и 'c'
вы можете сделать следующее:
cov.loc[['a','c'], ['a','c']]