объединить динамический столбец в панд

#pandas #dataframe

Вопрос:

позвольте мне прямо сказать о требовании

select components from food_factory; это возвращает сахар, пшеницу, дрожжи, хлебобулочные изделия, пищевой цвет

 for comp in components:
    querystring='select id, case when attr_value!=0 then 1 else 0 end as {attr_val from product where attr_val={attr_val}'.format(attr_val=comp)
    df=pd.read_sql_query(querystring, con=conn)
 

мой требуемый результат-это

ожидаемый

что у меня есть

добрался, присоединившись

существует одна проблема с созданием фрейма данных в виде списка; поэтому я пишу каждый запрос отдельно, создаю фрейм данных и присоединяюсь

 df3 = pd.concat([xx1, xx2,xx3,xx4,xx5],join='outer')
 

Проблема 1 — как создавать фреймы данных в виде списка и выполнять pd.concat.

вопрос 2 — как получить ожидаемый результат; значит, для 1010 сахара есть, затем установите значение; если есть тот же идентификатор 1010 дрожжей, то он должен быть в том же ряду.

Комментарии:

1. df.set_index('id', inplace=True, drop=True) dflist.append(df) df3 = pd.concat(dflist, sort=False, axis=1) df3 выдает мне необходимый вывод