python: возможно ли отобразить значения с помощью строкового фрейма данных? - PullRequest
0 голосов
/ 16 октября 2018

Я пытаюсь отобразить данные между двумя фреймами данных (данные взяты из CSV-файла с использованием панд), но у меня проблема с индексами

первый df - df1

0         CAT11/06
1         CAT11/100
2         CAT23/223
3         CAT33/14
4         CAT13/14 
5         DOG12/04 
6         DOG24/14
7         CAT24/112

второй df - это df2

0    CAT1
3    CAT2
4    CAT3
5    DOG1
6    DOG2

, и я хотел бы создать новый фрейм данных для сбора ожидаемых данных, таких как этот, и определить его как df3

0  CAT1 CAT11/06 | CAT11/100 | CAT13/14
1  CAT2 CAT23/223 | CAT24/112
2  CAT3 CAT33/14
3  DOG1 DOG12/04
4  DOG2 DOG24/14

1 Ответ

0 голосов
/ 16 октября 2018

Использование двух для цикла с in и join

df2['col2']=['|'.join(df1[[x in y for y in df1]].tolist()) for x in df2.col1]
df2
Out[347]: 
   col1                         col2
0  CAT1  CAT11/06|CAT11/100|CAT13/14
3  CAT2          CAT23/223|CAT24/112
4  CAT3                     CAT33/14
5  DOG1                     DOG12/04
6  DOG2                     DOG24/14
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...