Стандартный столбец ошибки в кадре данных IndexEngine - PullRequest
0 голосов
/ 24 марта 2020

У меня есть несколько CSV-файлов, которые загружаются как

dataframe = pandas.concat (pandas.read_csv (name) for name in list)

, где list - список файлов данных.

, которые имеют следующие столбцы:

Date  Close/Last    Volume    Open    High    Low

I хочу вычислить стандартное отклонение для открытых и последних / последних столбцов.

Я пытался

std = dataframe.loc[:,"Open"].std(axis = 0, skipna = True)

Но получил ошибку:

Traceback (most recent call last):
  File "/home/saurabh/anaconda3/lib/python3.7/site-packages/pandas/core/indexes/base.py", line 2897, in get_loc
    return self._engine.get_loc(key)
  File "pandas/_libs/index.pyx", line 107, in pandas._libs.index.IndexEngine.get_loc
  File "pandas/_libs/index.pyx", line 131, in pandas._libs.index.IndexEngine.get_loc
  File "pandas/_libs/hashtable_class_helper.pxi", line 1607, in pandas._libs.hashtable.PyObjectHashTable.get_item
  File "pandas/_libs/hashtable_class_helper.pxi", line 1614, in pandas._libs.hashtable.PyObjectHashTable.get_item
KeyError: 'Open'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "download.py", line 9, in <module>
    analysis.simulateTicker("aapl")
  File "/play/downlaod/analysis.py", line 5, in simulateTicker
    std = dataframe.loc[:,"Open"].std(axis = 0, skipna = True)
  File "/home/saurabh/anaconda3/lib/python3.7/site-packages/pandas/core/indexing.py", line 1418, in __getitem__
    return self._getitem_tuple(key)
  File "/home/saurabh/anaconda3/lib/python3.7/site-packages/pandas/core/indexing.py", line 805, in _getitem_tuple
    return self._getitem_lowerdim(tup)
  File "/home/saurabh/anaconda3/lib/python3.7/site-packages/pandas/core/indexing.py", line 929, in _getitem_lowerdim
    section = self._getitem_axis(key, axis=i)
  File "/home/saurabh/anaconda3/lib/python3.7/site-packages/pandas/core/indexing.py", line 1850, in _getitem_axis
    return self._get_label(key, axis=axis)
  File "/home/saurabh/anaconda3/lib/python3.7/site-packages/pandas/core/indexing.py", line 160, in _get_label
    return self.obj._xs(label, axis=axis)
  File "/home/saurabh/anaconda3/lib/python3.7/site-packages/pandas/core/generic.py", line 3729, in xs
    return self[key]
  File "/home/saurabh/anaconda3/lib/python3.7/site-packages/pandas/core/frame.py", line 2980, in __getitem__
    indexer = self.columns.get_loc(key)
  File "/home/saurabh/anaconda3/lib/python3.7/site-packages/pandas/core/indexes/base.py", line 2899, in get_loc
    return self._engine.get_loc(self._maybe_cast_indexer(key))
  File "pandas/_libs/index.pyx", line 107, in pandas._libs.index.IndexEngine.get_loc
  File "pandas/_libs/index.pyx", line 131, in pandas._libs.index.IndexEngine.get_loc
  File "pandas/_libs/hashtable_class_helper.pxi", line 1607, in pandas._libs.hashtable.PyObjectHashTable.get_item
  File "pandas/_libs/hashtable_class_helper.pxi", line 1614, in pandas._libs.hashtable.PyObjectHashTable.get_item

Любая идея чего мне не хватает?

1 Ответ

0 голосов
/ 24 марта 2020

Похоже, в вашем столбце Open есть дополнительный пробел в начале. Попробуйте

std = dataframe.loc[:," Open"].std(axis = 0, skipna = True)

...