私は多くの人が遭遇したと感じるデータ問題にぶつかってきました。私は現在、取引情報を含むデータセットを持っています。 Transaction_Numberに基づいて、トランザクションに関わる各人がどれくらい時間を費やしているかを知ります。1対多の行レベルをマージする
最終出力はこの
Transaction_Number Created On Created_By Time_Diff
27327920232 2014-12-08 03:29:08 jake NaN
27323232336 2017-04-28 18:39:03 James 0
27323232336 2017-04-28 18:26:23 Tony 760.0
のように見える今、私が直面しています問題は、私は1つの列が欠落していますということです。 DBからクエリを実行して解決し、Product_Numberという名前のフィールドを取得しました。私はTransaction_Numberの2つのテーブルを結合しています。ここで、問題が発生するのは、2番目のデータフレーム名Dは、Product_Numberに一致するTransaction_Numberが1回だけリストされていることです。マスタデータフレームにはトランザクションが複数発生しています。したがって、私は次のコードを実行すると私の結果は意味をなさない。 12K +の可能性に基づいて4つのマッチだけを出力します。
X D D
Transaction_Number Transaction_Number Product_Number
27327920232 27327920232 Cw-xs-re-89
27327920232 72732332323 pw-ts-sf-89
27327920232 32338033383 Cw-ns-tn-86
results = pd.merge(X, D, how='inner', on= "Transaction_Number")
適切なマッチングを見つけるには、どうすればよいですか。私はまた、左の結合を試みました、ヒントの任意のタイプが役立ちます。 - ありがとう
あなたはこの同じ質問をしませんでしたか?最初の取引番号の前にダッシュが表示されるのはなぜですか? –
*正しいマッチを検索するにはどうすればよいですか*?あなただけが、 'merge'が必要に応じて動作しているので、これを私たちに伝えることができます。どの* Product_Number *を複数の* Transactions *から取り込むか?最初?最終? – Parfait