функция поиска Python hlookup - PullRequest
0 голосов
/ 29 ноября 2018

У меня есть два таких кадра данных, и я хочу объединить df2 с информацией из df1

df1

Topic1  Topic2  Topic3  
Aa        Bb      Cc  
Dd        Ee      Ff  
Gg        Hh      Ii

df2

My_topics    
Topic2
Topic3
Topic1

Требуемый вывод

My_topics   Word1  Word2  Word3 
Topic2      Bb      Ee    Hh
Topic3      Cc      Ff    Ii
Topic1      Aa      Dd    Gg

Я использовал lookup функции, но не смог получить желаемый вывод.

df2['Word1'] = df1.set_index('I dont know what put here').lookup(df2['My_topics'],df2['My_topics'])

1 Ответ

0 голосов
/ 29 ноября 2018

Учитывая

>>> df1
  Topic1 Topic2 Topic3
0     Aa     Bb     Cc
1     Dd     Ee     Ff
2     Gg     Hh     Ii
>>> 
>>> df2
  My_topics
0    Topic2
1    Topic3
2    Topic1

вы можете выдать

>>> df3 = pd.concat([df2, df1.reindex(columns=df2['My_topics']).T.reset_index(drop=True)], axis=1)
>>> new_names = {i:'Word{}'.format(i + 1) for i in range(len(df1.columns))}
>>> df3.rename(columns=new_names, inplace=True)
>>> 
>>> df3
  My_topics Word1 Word2 Word3
0    Topic2    Bb    Ee    Hh
1    Topic3    Cc    Ff    Ii
2    Topic1    Aa    Dd    Gg
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...