#python #pandas
#python #pandas
Вопрос:
Это не простое сопоставление двух списков. Список 2 длиннее списка 1. Сопоставьте по алфавиту.
Эти два списка являются:
List 1 List 2
a-1 a-2
b-1 z-99
c-1 a-3
z-99
b-2
Я хочу вернуть этот результат:
List 1 List 2
a-1 a-2
a-3
b-1 b-2
Есть идеи, как это сделать? ]
Спасибо!
Комментарии:
1. Я не вижу правила сопоставления. Кроме того, какие элементы я должен сохранить?
2. @thomas Сопоставьте по алфавиту.
Ответ №1:
Один из способов использования pandas.merge
:
df1 = df[["List 1"]]
df2 = df[["List 2"]]
df3 = df1.merge(df2, left_on=df1["List 1"].str[0], right_on=df2["List 2"].str[0])
print(df3.drop("key_0", 1))
Вывод:
List 1 List 2
0 a-1 a-2
1 a-1 a-3
2 b-1 b-2
Комментарии:
1. я думаю, это оно! Я знал, что это должно быть что-то связанное с pandas merge, но не знал, как это сделать. Спасибо