У меня есть большой пандх Dataframe, который по сути имеет структуру, подобную следующей:
df = pd.DataFrame(np.random.randint(0,100,size=(20, 20)), columns=list('ABCDEFGHIJKLMNOPQRST'))
Каждая из «строк» представляет собой массив чисел.Например:
row_one = df.iloc[0, :].values
row_two = df.iloc[1, :].values
....
Я хотел бы рассчитать коэффициент корреляции (np.corrcoef) между всеми комбинациями строк, например:
np.corrcoef(row_one, row_one)[0][1]
np.corrcoef(row_one, row_two)[0][1]
np.corrcoef(row_one, row_three)[0][1]
....
np.corrcoef(row_two, row_one)[0][1]
np.corrcoef(row_one, row_two)[0][1]
np.corrcoef(row_one, row_three)[0][1]
...
Я хочу получить DataFrame в концеэто будет содержать все коэффициенты корреляции (CC) для всех комбинаций.Я не могу понять, как векторизовать код.Мой оригинальный фрейм данных довольно большой, поэтому я буду благодарен за любой совет, как ускорить код.
Спасибо!