前提・実現したいこと
各calendarごとに持っている一番小さいscoreを出したい。
listsはスコア、listcにはカレンダーの値を入れていきたい。
発生している問題・エラーメッセージ
1.listsの中身のスコアがcalendarごとではなく全体で一番小さいscoreしか入らない。
(125,125)となる
2.listsは中身が3つならなければならないのに2つだけ。
3.listcに12が入っていない。
(13,14)となる
該当のソースコード
python3
1df = pd.DataFrame({calendar: [12,12,12,13,13,13,13,14,14,14,14,14], 2 score: [429,485,444,659,548,478,985,125,458,326,594,578], 3 hour: [15,14,12,13,14,15,18,17,19,19,10,17] 4 }) 5 6 7 8s0 = 1000000#取りあえず大きい値を初期値にしている 9c0 = 12 10lists = list() 11listc = list() 12 13for c in df[calendar]: 14 15 for s in df[score]: 16 17 if c0==c and s0>=s: 18 s0 = s 19 elif c0!=c: 20 lists.append(s0) 21 s0 = 1000000 22 c0 = c 23 listc.append(c0)
calendar | score | hour |
---|---|---|
12 | 492 | 15 |
12 | 485 | 14 |
12 | 444 | 12 |
13 | 659 | 13 |
13 | 548 | 14 |
13 | 478 | 15 |
13 | 985 | 18 |
14 | 125 | 17 |
14 | 458 | 19 |
14 | 326 | 19 |
14 | 594 | 10 |
14 | 578 | 17 |
補足情報
もしできるのでしたら各carendarの一番小さいscoreが出た時のhourもわかるようになればうれしいです。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
退会済みユーザー
2019/01/21 03:52