Pythonである数字の一覧であるCSVファイルの中身に対して、特定の列と列の合計値が最大になる行を取ってきたいです。具体的には、テストとして以下のようなCSVファイルとコードを考えています。
<具体的にやりたいこと>
列名[A,B,C,D,E,F]の4行×6列のCSVファイルに対して、B列とC列の合計値が最大となる行を取得したいと思っています。
<sample.csv>
[A,B,C,D,E,F]
1,3,7,4,7,9
2,9,6,3,5,1
1,1,1,2,9,5
2,4,2,0,6,1
python3
1import pandas as pd 2 3# それぞれの列名を[A,B,C,D,E,F]にする。 4df = pd.read_csv('sample.csv', names=['A', 'B', 'C', 'D', 'E', 'F']) 5# 「B+C」列の合計値が最大値を取得 6x = (df['B + C'].max()) 7# xが存在する行名を取得 8result = df.query('B + C == @x').index[0]
上記のコードを考えていましたが、上手くいきません。
どう書き換えればよいか、わかる方がいらっしゃいましたら教えていただけたら幸いです。よろしくお願いします。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/02/03 09:50