Сопоставить два кадра данных по столбцам и извлечь значения из другого столбца в определенном порядке - PullRequest
0 голосов
/ 03 декабря 2018

У меня есть два dataframe с, которые выглядят следующим образом

df1

    fileName    Text
0    file1        A
1    file2        B
2    file3        C
3    file4        D
4    file5        E


df2 

    fileName    Value
0    file3        0
1    file2        1
2    file1        1
3    file5        0
4    file6        1

Содержимое df1.fileName равно содержимому df2.fileName, но порядок перемешан в df2.Я хочу извлечь столбец значений в порядке df1.fileName.

1 Ответ

0 голосов
/ 03 декабря 2018

Если дубликаты в df2['fileName'], то создайте столбец ordered categorical, сортируйте и выберите Value:

print (df2)
  fileName  Value
0    file3      0
1    file2      1
2    file1      1
3    file5      0
4    file4      1
5    file1      1
6    file3      1


df2['fileName'] = pd.Categorical(df2['fileName'], categories=df1['fileName'], ordered=True)
out = df2.sort_values('fileName')['Value']
print (out)
2    1
5    1
1    1
0    0
6    1
4    1
3    0
Name: Value, dtype: int64
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...