Python / Dash: Как фильтровать категории значений в сводных таблицах при построении графиков? - PullRequest
0 голосов
/ 04 июля 2018

Образец моего набора данных выглядит так:

date    enrolled
6/29/2018   1
6/29/2018   1
6/29/2018   
6/29/2018   1
6/29/2018   1
6/29/2018   1
6/29/2018   1
6/20/2018   1
6/20/2018   1
6/22/2018   1
6/19/2018   1
6/19/2018   1
6/27/2018   1
6/28/2018   1
6/28/2018   1
6/28/2018   
6/28/2018   1
6/28/2018   1

Я сделал сводную таблицу и нанес на нее разброс по этому коду:

df=pd.read_csv('demo.csv', encoding="latin-1", infer_datetime_format=True, parse_dates=['date'], skipinitialspace=True)

pv = pd.pivot_table(df, index=['date'], values=['enrolled'], aggfunc=sum, fill_value=0)

df["date"]=pd.to_datetime(df['date']) # Converts date to datetime dtype

df["enrolled"]=pd.to_numeric(df['enrolled'], errors='coerce').fillna(0) # Converts float to numeric adding zero to empty cells

dfb.enrolled.round(0).astype(np.int64) # Converts Float to int

trace1 = go.Scatter(x=pv.index, y=pv[('enrolled')], name='Enrolled')

trace2 = go.Bar(x=pv.index, y=pv.values == 0, name='No Criteria')

trace3 = go.Scatter(x=pv.index, y=pv.values == 2, name='Rejected')

ПРОБЛЕМА

Я не могу выполнить трассировку 2 и трассировку 3:

Трассировка 1: я могу построить график, если число участников равно 1

Трассировка 2: Я хочу построить график, если количество зарегистрированных мест равно пустым ячейкам

Трассировка 3: Я хочу построить график, если количество зарегистрированных равно 2

Исходный d-тип даты был объектом и преобразован в datetime Первоначальный зарегистрированный dtype был float и преобразован в int, а затем в str (объект).

Спасибо.

...