При объединении двух фреймов данных следующей командой:
df = pd.merge(df,LFA1, left_on='Vendor', right_index=True, how='left')
... и получено печально известное сообщение: «Вы пытаетесь объединить столбцы объекта и int64».Похоже, что наиболее вероятной причиной является то, что левая или правая клавиша имеет тип int.
Я нашел два метода, чтобы принудительно заставить типы клавиш str: a.при создании DataFrame:
LFA1= pd.read_excel(r'G:\FAIA 2018\Extracts\LFA1(Full).xlsx',converters={'Vendor':str})
b.после создания DataFrame:
LFA1['Vendor']=LFA1['Vendor'].astype(str)
Даже если я запрашиваю тип сразу после команды:
df.types()
LFA1.types()
столбец «Поставщик» остается «объектом», но никогда не отображается'str'.
Я полагаю, что это основная причина сообщения, но ни один из этих методов не преуспел в переключении типа на строку.
Я неправильно понял или пропустил шаг ...