2
同一の行と列を持ちながら異なる値を持つ2つのpandasデータフレームがあり、1つのデータフレームの各行から最大値を使用して、他のデータフレーム内の位置。例えばPandasデータベースの最大値が別のデータフレーム内の対応する値を返す
:私は 'B.max(軸= 1)' とBの最大値を取得することができます
s1 s2 s3 s1 s2 s3
d1 0 1 2 d1 -0.02 0.01 0.05
d2 3 4 5 d2 0.01 -0.03 -0.03
d3 6 7 8 d3 0.04 -0.06 0.02
、私は戻りたい:
A = DataFrame(np.arange(9).reshape((3, 3)), index=['d1', 'd2', 'd3'], columns=['s1', 's2', 's3'])
B = DataFrame(np.random.randn(3, 3), index=['d1', 'd2', 'd3'], columns=['s1', 's2', 's3'])
のような何かを与えますあなたはAGを比較するeq
を使用することができます
d1 2
d2 3
d3 6
を私はこれは私が後だったものであるかわかりません。多分私ははっきりしていなかったでしょう。私は、Bで見つかった各行の最大数を使用して、データフレーム内の同じ対応する位置にあるAからの生の数値を返します。したがって、(d1、s3)がBのd1行の最大値であれば、Aの(d1、s3)が返されて2になります。 – HenryB
A [B == B.max(axis = 1 )] '? – EdChum
OKが更新しました – EdChum