前提・実現したいこと
pandasのデータフレームにおいて、以下の例のように名前とx, yが存在しています。
これらから、
- xの閾値の幅に対して, yがある閾値以内であれば結合し、1行にする
- 1行にする際に、複数紐付いた場合は複数分でx, yの重心を取るように更新する
という処理を行う関数を書きたいです。(位置的に近いものを纏めたい)
インプットのデータフレームの例(3列)
name, x, y a, 10, 10 b, 12, 15 c, 11, 20 d, 21, 50 e, 23, 55 f, 22, 65 :
閾値の設定
x_threshold = 2 y_threshold = 5
アウトプットのデータフレームの例(3列)
name, x, y abc, 11, 15 de, 22, 52.5 f, 22, 65 :
考えたこと
閾値を見て、if文を書く感じになるかと思うのですが、 一行ずつ判定し、行方向で複数分纏めて行く方法がいまいちわからず手をこまねいております。
恐縮ではございますが、お知恵を拝借できましたら幸いです。
何卒よろしくお願い申し上げます。
回答1件
あなたの回答
tips
プレビュー