5
pandas
の2つのデータフレームを共通のカラム名(orderid)にマージしようとしています。結果のデータフレーム(マージされたデータフレーム)は、2番目のデータフレームからオーダーIDを削除しています。 documentationでは、明示的に指示しない限り、 'on'列を保持する必要があります。この出力パンダは 'on'カラムをマージしません
import pandas as pd
df = pd.DataFrame([[1,'a'], [2, 'b'], [3, 'c']], columns=['orderid', 'ordervalue'])
df['orderid'] = df['orderid'].astype(str)
df2 = pd.DataFrame([[1,200], [2, 300], [3, 400], [4,500]], columns=['orderid', 'ordervalue'])
df2['orderid'] = df2['orderid'].astype(str)
pd.merge(df, df2, on='orderid', how='outer', copy=True, suffixes=('_left', '_right'))
:私が作成しようとしています何
| |orderid | ordervalue_left | ordervalue_right |
|------|--------|-----------------|------------------|
| 0 | 1 | a | 200 |
| 1 | 2 | b | 300 |
| 2 | 3 | c | 400 |
| 3 | 4 | | 500 |
はこれです:
| | orderid_left | ordervalue_left | orderid_left | ordervalue_right |
|------|--------------|-----------------|--------------|------------------|
| 0 | 1 | a | 1 | 200 |
| 1 | 2 | b | 2 | 300 |
| 2 | 3 | c | 3 | 400 |
| 3 | NaN | NaN | 4 | 500 |
私がこれを書く必要がありますどのように?
ありがとうございました!信じられないほどパンダがこの醜い回避策を必要とすることを苛立たせる。 – oulenz