Функция применения Python может работать только для одной строки в кадре данных - PullRequest
0 голосов
/ 28 февраля 2019

У меня есть следующая таблица данных - (данные):

Index    A   B   C
  1      A   B   C
  2      A   B   C
  3      A   B   C

Я хотел заменить это значение на некоторые значения из другой таблицы, которая является корреляционной матрицей - (data_corr)

BLANK    A    B    C
  A      1   0.9  0.8
  B     0.9   1   0.4
  C     0.8  0.4   1

И вот моя функция: (Нет смысла в вычислениях, только тест)

def test(cell):

    r = data_corr.loc[cell].sort_values(ascending=False)[1:dt_length]
    t = sum(r)

    return cell.replace(cell,t)
output = data.apply(test)

И выведите ошибку:

TypeError: ("sort_values() missing 1 required positional argument: 'by'", 'occurred at index 1064A46E-8688-4667-BA4A-F82394C136B6')

Но вещьесли я использую только одну строку из данных, которая выглядела бы как

Index   A   B   C
  1     A   B   C

Функция будет работать и даст мне результаты.

Кто-нибудь может мне помочь с этой проблемой?

...