Я получаю ключевую ошибку, когда пытаюсь построить диаграмму ohlc, пожалуйста, помогите ?
ОШИБКА, КОТОРУЮ Я ПОЛУЧАЮ, ЗАКЛЮЧАЕТСЯ В СЛЕДУЮЩЕМ :-
Traceback (most recent call last): File "C:\Users\MAVERICK\Desktop\FINANCE PYTHON\candlestickgraph.py", line 16, in <module> ohlc = data.loc[:, ['Date', 'Open', 'High', 'Low', 'Close']] File "C:\Users\MAVERICK\AppData\Local\Programs\Python\Python38-32\lib\site-packages\pandas\core\indexing.py", line 1762, in __getitem__ return self._getitem_tuple(key) File "C:\Users\MAVERICK\AppData\Local\Programs\Python\Python38-32\lib\site-packages\pandas\core\indexing.py", line 1289, in _getitem_tuple retval = getattr(retval, self.name)._getitem_axis(key, axis=i) File "C:\Users\MAVERICK\AppData\Local\Programs\Python\Python38-32\lib\site-packages\pandas\core\indexing.py", line 1954, in _getitem_axis return self._getitem_iterable(key, axis=axis) File "C:\Users\MAVERICK\AppData\Local\Programs\Python\Python38-32\lib\site-packages\pandas\core\indexing.py", line 1595, in _getitem_iterable keyarr, indexer = self._get_listlike_indexer(key, axis, raise_missing=False) File "C:\Users\MAVERICK\AppData\Local\Programs\Python\Python38-32\lib\site-packages\pandas\core\indexing.py", line 1552, in _get_listlike_indexer self._validate_read_indexer( File "C:\Users\MAVERICK\AppData\Local\Programs\Python\Python38-32\lib\site-packages\pandas\core\indexing.py", line 1654, in _validate_read_indexer raise KeyError( KeyError: 'Passing list-likes to .loc or [] with any missing labels is no longer supported, see https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#deprecate-loc-reindex-listlike'
я пытался получить данные непосредственно для построения ohlc, но он дает эту ошибку, пожалуйста, помогите.
я дал код, который я пробовал:-
Что я уже пробовал:
# python_candlestick_chart.py import datetime as dt import matplotlib.pyplot as plt from mpl_finance import candlestick_ohlc import pandas as pd import matplotlib.dates as mpl_dates import pandas_datareader.data as web plt.style.use('ggplot') start = dt.datetime(1980,1,1) end = dt.datetime(2020,5,22) # Extracting Data for plotting data = web.DataReader('INFY.NS' , 'yahoo' , start , end) ohlc = data.loc[:, ['Date', 'Open', 'High', 'Low', 'Close']] ohlc['Date'] = pd.to_datetime(ohlc['Date']) ohlc['Date'] = ohlc['Date'].apply(mpl_dates.date2num) ohlc = ohlc.astype(float) # Creating Subplots fig, ax = plt.subplots() candlestick_ohlc(ax, ohlc.values, width=0.6, colorup='green', colordown='red', alpha=0.8) # Setting labels & titles ax.set_xlabel('Date') ax.set_ylabel('Price') fig.suptitle('Daily Candlestick Chart of INFY') # Formatting Date date_format = mpl_dates.DateFormatter('%d-%m-%Y') ax.xaxis.set_major_formatter(date_format) fig.autofmt_xdate() fig.tight_layout() plt.show()
Richard MacCutchan
KeyError: 'передача списка-любит .loc или [] с отсутствующими метками больше не поддерживаются, видишь ли https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#deprecate-loc-reindex-listlike'
PythonPreran
я видел его, сэр, но я все еще не могу его получить, пожалуйста, скажите мне, в чем проблема ?
Richard MacCutchan
Извините, без понятия. Вам нужно изучить документацию, как говорится в сообщении.
karma2447
Цитата:В предыдущих версиях использование .loc[list-of-labels] работало бы до тех пор, пока был найден хотя бы 1 ключ (в противном случае это вызвало бы ошибку KeyError). Это поведение устарело и будет показывать предупреждающее сообщение, указывающее на этот раздел. Рекомендуемой альтернативой является использование .переиндексировать().
Обратиться : Индексирование и выбор данных — документация pandas 1.0.5[^]
Используйте метки или переиндексируйте их с помощью меток.
Это означает то, что сведения.переиндексация(['дата', 'открыть', 'высокая', 'низкий', 'близко']])
Хотя я не уверен на 100%, не знаю, как выглядят данные.
PythonPreran
Я получаю ключевую ошибку, говорящую "дата". Это не работает.