Я пытаюсь вычислить ошибку отслеживания для ряда различных критериев по сравнению с фондом, на который я смотрю (ошибка отслеживания определяется как стандартное отклонение процентной разницы между фондом и тест). Временные ряды для фонда и всех эталонных тестов находятся в кадре данных, который я читаю из файла excel, и того, что у меня есть до сих пор (с идеей, что arg1 представляет все эталонные тесты и затем применяется с использованием applymap), но он возвращает KeyError, любые предложения?Ошибка отслеживания ряда тестов
import pandas as pd
import numpy as np
data = pd.read_excel('File_Path.xlsx')
def index_analytics(arg1):
tracking_err = np.std((data['Fund'] - data[arg1])/data[arg1])
return tracking_err
data.applymap(index_analytics)
Спасибо! Я вижу вашу мысль о создании списка. Итак, теперь я создал benchmark_columns = data.columns.tolist(), но когда я использую структуру, ((данные ['Fund']) - data [benchmark_columns])/data [benchmark_columns]). Std() , я получаю ошибку: –
RuntimeWarning: unorderable types: str()
'benchmark_columns' должно быть подмножеством ваших столбцов. Из вашего вышеуказанного кода вы захватываете все столбцы, которые были бы бессмысленными. Выберите только контрольные столбцы. Также используйте '.values' при выполнении вычитания. –