Нахождение цифрового корня из набора данных чисел - PullRequest
0 голосов
/ 08 февраля 2019

У меня есть простой массив данных с числами, и я хочу найти его цифровой корень, также как и кадр данных

код, который я использую для нахождения цифрового корня:

def digital_root (n):
    ap = 0
    n = abs(int(n))
    while n >= 10:
        n = sum(int(digit) for digit in str(n))
        ap += 1
    return n

и код, который я пишу:

for i in range(0, 24):
    for w in range(0, len(w_24)):
        column = []
        a = w_24.iloc[w:i]
        df = a.to_string()
        x = digital_root(df)
        column.append(x)
    w_dr = pd.DataFrame(list(column.items()), columns = ['i']) 

Я получаю следующую ошибку:

ValueError: invalid literal for int() with base 10: 'Empty DataFrame\nColumns

какие-либо предложения о том, как выполнить эту задачу?

спасибо

1 Ответ

0 голосов
/ 08 февраля 2019

Ваш digital_root ожидает int.

Вы даете ему строку

df = a.to_string()
x = digital_root(df)

Вы не намеревались вместо этого отправить a = w_24.iloc[w, i]?Примечание iloc[w, i] не iloc[w:i], двухосный индекс не является срезом первой оси

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...