Python: ufunc 'add' não continha um loop com tipos de correspondência de assinatura dtype ('S21') dtype ('S21') dtype ('S21')
Eu tenho dois quadros de dados, ambos com umOrder ID
e umdate
.
Eu queria adicionar um sinalizador no primeiro quadro de dadosdf1
: se um registro com o mesmoorder id
edate
está no dataframedf2
e adicione umY
:
[ df1['R'] = np.where(orders['key'].isin(df2['key']), 'Y', 0)]
Para conseguir isso, eu criaria uma chave, que seria a concatenação doorder_id
edate
, mas quando tento o seguinte código:
df1['key']=df1['Order_ID']+'_'+df1['Date']
Eu recebo este erro
ufunc 'add' did not contain a loop with signature matching types dtype('S21') dtype('S21') dtype('S21')
O df1 fica assim:
Date | Order_ID | other data points ...
201751 4395674 ...
201762 3487535 ...
Estes são os tipos de dados:
df1.info()
RangeIndex: 157443 entries, 0 to 157442
Data columns (total 6 columns):
Order_ID 157429 non-null object
Date 157443 non-null int64
...
dtypes: float64(2), int64(2), object(2)
memory usage: 7.2+ MB
df1['Order_ID'].values
array(['782833030', '782834969', '782836416', ..., '783678018',
'783679806', '783679874'], dtype=object)