Pandas Сложенные фильтры DF не работают, выдает ошибку в диапазоне - PullRequest
2 голосов
/ 13 июля 2020

Я пытаюсь отфильтровать как по диапазону дат, так и по столбцам, а затем представить графики данных. К сожалению, я получаю сообщение об ошибке.

import yfinance as yf
import pandas as pd
import matplotlib.pyplot as plot

ticker = yf.Ticker("mnf.ax")
history = ticker.history(period="max").reset_index()
history["Date"] = pd.to_datetime(history["Date"])
history = history.set_index('Date')

# this works
history['2019-01-01' : '2020-07-01'].resample('W').mean().plot.line(figsize=(20, 16), subplots=True)

# This also works
history[['Low','High']].resample('W').mean().plot.line(figsize=(20, 16), subplots=True)

# However this doesn't
history[['2019-01-01' : '2020-07-01'],['Low','High]]'.resample('W').mean().plot.line(figsize=(20, 16), subplots=True)

Хотелось бы немного узнать

1 Ответ

2 голосов
/ 13 июля 2020

Кажется, вы неправильно используете скобки. Я предлагаю вам использовать loc для этого случая:

history.loc['2019-01-01':'2020-07-01'][['Low','High']].resample('W').mean().plot.line(figsize=(20, 16), subplots=True)

Разбивка:

history.loc['2019-01-01':'2020-07-01'] #Returns the full dataframe within the specified dates

[['Low','High']] # Selects the specific columns

.resample('W').mean().plot.line(figsize=(20, 16), subplots=True) ## Resamples, aggregates using mean and plots.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...