Pandas столбец, возвращающий не тип, несмотря на наличие значений для всех строк - PullRequest
0 голосов
/ 22 апреля 2020

Я скачал набор данных, используя код и вывод ниже:

    def aroon(symbol):
        aroon =  TechIndicators(key='',output_format='pandas')
        data, meta_data = aroon.get_aroon(symbol = symbol, interval = 'daily')
        modifiedfp = pandas.DataFrame(data)
        modifiedfp = modifiedfp.reset_index()
        modifiedfp
        print modifiedfp

      x = aroon('msft')

и вывод:

          date  Aroon Down  Aroon Up
    0 2020-04-07        45.0     100.0
    1 2020-04-08        40.0      95.0
    2 2020-04-09        35.0      90.0
    3 2020-04-13        30.0      85.0
    4 2020-04-14        25.0     100.0
    5 2020-04-15        20.0      95.0
    6 2020-04-16        15.0     100.0
    7 2020-04-17        10.0     100.0
    8 2020-04-20         5.0      95.0
    9 2020-04-21         0.0      90.0

    Process finished with exit code 0

Таблица данных выходит нормально, но когда я пытаюсь изолировать В столбце со следующим я получаю эту ошибку:

    y = x['Aroon Down']

    Traceback (most recent call last):
    File "/Users/davidgaballa/Library/Preferences/PyCharmCE2018.3/scratches/scratch_7.py", 
    line 37, in <module>
    y = x['Aroon Down']
    TypeError: 'NoneType' object has no attribute '__getitem__'

В конечном счете, я хочу добавить один из этих столбцов в другой фрейм данных, но я столкнулся с этой же проблемой, когда пытался и работал в обратном направлении, чтобы изолировать проблема. Мне кажется, что все строки имеют значение, поэтому я не уверен, почему я сталкиваюсь с этой проблемой. Спасибо за помощь.

1 Ответ

0 голосов
/ 22 апреля 2020

Вы на самом деле ничего не возвращаете в своей функции aroon. Измените это так:

def aroon(symbol):
        aroon =  TechIndicators(key='',output_format='pandas')
        data, meta_data = aroon.get_aroon(symbol = symbol, interval = 'daily')
        modifiedfp = pandas.DataFrame(data)
        modifiedfp = modifiedfp.reset_index()
        print modifiedfp
        return modifiedfp
...