質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
87.20%
Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

pandas

Pandasは、PythonでRにおけるデータフレームに似た型を持たせることができるライブラリです。 行列計算の負担が大幅に軽減されるため、Rで行っていた集計作業をPythonでも比較的簡単に行えます。 データ構造を変更したりデータ分析したりするときにも便利です。

解決済

複数の条件下におけてdataframeをdropする方法(python,pandas)

usuke
usuke

総合スコア0

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

pandas

Pandasは、PythonでRにおけるデータフレームに似た型を持たせることができるライブラリです。 行列計算の負担が大幅に軽減されるため、Rで行っていた集計作業をPythonでも比較的簡単に行えます。 データ構造を変更したりデータ分析したりするときにも便利です。

1回答

0評価

0クリップ

1318閲覧

投稿2020/07/14 07:21

複数の条件下におけてdataframeをdropする方法

以下の表(dataframe)が与えられたとします。
列["max_"]は同一の"kigou"における"point"が最も高いデータに対してTrueと記載されています。

|kigou|memo|point|max_|
|:--|:--:|--:|
|AA|〇|20|NaN
|AA|×|40|True
|CC|〇|50|True
|CC|〇|10|NaN
|CC|×|20|NaN

以下のルールに基づいて処理を行いたいです。
列["max_"] == 'True"のデータについて、
・kigouとmemoが同じものは残す
・kigouが同じだけれども、memoが異なるデータ(行)は削除

つまり、次のような表(dataframe)を得たいです。
|kigou|memo|point|max_
|:--|:--:|--:|
|AA|×|40|True
|CC|〇|50|True
|CC|〇|10|NaN

pandasのdropを用いて検討しましたが、うまくできませんでした。
また明らかに間違っていますが、以下のようなfor文を回しても出来ませんでした。

どなたかヒントを頂けないでしょうか。

python3

for i in range(len(data)): if data.loc[i,'max_'] == 'True': a = data.loc[i,'kigou'] b = data2.loc[i,'memo'] for j in range(len(data)): if data.loc[j,'memo'] != a and data2.loc[j,'kigou'] == b: data.drop(data.index[j])

良い質問の評価を上げる

以下のような質問は評価を上げましょう

  • 質問内容が明確
  • 自分も答えを知りたい
  • 質問者以外のユーザにも役立つ

評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

気になる質問をクリップする

クリップした質問は、後からいつでもマイページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

  • プログラミングに関係のない質問
  • やってほしいことだけを記載した丸投げの質問
  • 問題・課題が含まれていない質問
  • 意図的に内容が抹消された質問
  • 過去に投稿した質問と同じ内容の質問
  • 広告と受け取られるような投稿

評価を下げると、トップページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

まだ回答がついていません

会員登録して回答してみよう

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
87.20%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問

同じタグがついた質問を見る

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

pandas

Pandasは、PythonでRにおけるデータフレームに似た型を持たせることができるライブラリです。 行列計算の負担が大幅に軽減されるため、Rで行っていた集計作業をPythonでも比較的簡単に行えます。 データ構造を変更したりデータ分析したりするときにも便利です。