PythonスクリプトであるCSVファイルの中身に対して、Excelの「V Look Up」的なことをして、特定の値を表示させたいと思っています。
具体的には、以下のようなコードを考えています。
[具体的にやりたいこと]
4行×6列の数字のみのCSVファイルに対して、
それぞれの列名を[A,B,C,D,E,F]と名付け、B列の最大値および、その最大値と同じ行のD列の値を表示させたいと思っています。
[CSVファイルの中身]
1,3,7,4,7,9
2,9,6,3,5,1
1,1,1,2,9,5
2,4,2,0,6,1
Python
1import pandas as pd 2 3df = pd.read_csv('sample.csv', names=['A', 'B', 'C', 'D', 'E', 'F']) 4 5x = (df['B'].max()) 6 7result = df.query('B == @x') 8 9y = result['D'] 10 11print('B列の最大値は、',x,'で、その時のD列の値は、',y,'です。')
考えた、上記のコードで実行すると以下のような実行結果になってしまいます。
[実行結果]
B列の最大値は、 2 9
Name: B, dtype: objectで、その時のD列の値は、 2 3
Name: B, dtype: objectです。
[表示させたい結果]
B列の最大値は、9で、その時のD列の値は、3です。
[表示させたい結果]にするために、今のコードを、どのように書き換えればよいのかわかりません。
わかる方がいたら、ぜひ教えて頂きたいです。
また、もっと簡単にできる方法があれば知りたいです。
よろしくお願いします。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/01/03 15:11