pythonのpandasを使用し、元のdata.csvデータから値を抽出しlist.csvに出力したいと考えております。
data.csv[id,id2,cost]:[1,10,5][2,10,3][3,10,1][1,13,10][2,13,5][3,13,4]......
list.csv[id2,min]:[10, ][13, ]...
といった内容になっております。
data.csvのid2の値に対してcostが一つであれば、list.csvのminに入る値は一つに決まるのですが、data.csvのid2の値に対してcostが複数ある場合(今回は3つ)に、最小となるcostをlist.csvに出力するにはどのようにしたらよいでしょうか。
list.csvにおいてid2が10の時には1を、13の時には4を出力したいです。
なお、data.csvにおいてid2が1つである場合には、list.csvのminは1つに決まると思いますが、その時のスクリプトは以下になります。
python
1import pandas as pd 2 3df = pd.read_csv("data.csv") 4df1 = pd.read_csv("list.csv") 5new_file = "data_min.csv" 6results = df.merge(df1,on="id2") 7results.to_csv(new_file,index=False)
上記について教えていただけたらと思います。
よろしくお願いいたします。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
退会済みユーザー
2019/11/11 06:24
2019/11/11 07:46
退会済みユーザー
2019/11/11 08:16
2019/11/11 10:47
2019/11/12 04:24 編集
退会済みユーザー
2019/11/12 04:24
2019/11/12 07:39
退会済みユーザー
2019/11/12 07:44