我有一个数据框如下:
venue innings batting_team bowling_team score batsmen
M Chinnaswamy Stadium 1 Kolkata Knight Riders Royal Challengers Bangalore 61 [SC Ganguly, BB McCullum, RT Ponting]
M Chinnaswamy Stadium 2 Royal Challengers Bangalore Kolkata Knight Riders 26 [R Dravid, W Jaffer, V Kohli, JH Kallis, CL White, MV Boucher]
Feroz Shah Kotla 1 Rajasthan Royals Delhi Daredevils 40 [T Kohli, YK Pathan, SR Watson, M Kaif]
Feroz Shah Kotla 2 Delhi Daredevils Rajasthan Royals 55 [G Gambhir, V Sehwag, S Dhawan]
Wankhede Stadium 1 Mumbai Indians Royal Challengers Bangalore 47 [L Ronchi, ST Jayasuriya, DJ Thornely, RV Uthappa, PR Shah]
Wankhede Stadium 2 Royal Challengers Bangalore Mumbai Indians 40 [S Chanderpaul, R Dravid, LRPL Taylor]
Eden Gardens 1 Deccan Chargers Kolkata Knight Riders 39 [AC Gilchrist, Y Venugopal Rao, VVS Laxman, A Symonds]
Eden Gardens 2 Kolkata Knight Riders Deccan Chargers 26 [WP Saha, BB McCullum, RT Ponting, SC Ganguly, DJ Hussey]
Sawai Mansingh Stadium 1 Kings XI Punjab Rajasthan Royals 54 [K Goel, JR Hopes, KC Sangakkara]
Sawai Mansingh Stadium 2 Rajasthan Royals Kings XI Punjab 53 [M Kaif, YK Pathan, Kamran Akmal, SR Watson, DS Lehmann]
可以看出,该batsmen
列将列表作为其元素。现在我需要对每个列表进行排序。我用了代码
df['batsmen'] = df['batsmen'].sort()
但我得到的错误是Series object as no attribute 'sort'
. 我怎样才能做到这一点,以便列中的每个列表都按升序排序?
试试
df['batsmen'] = df['batsmen'].apply(sorted)
如果你想反转列表,你可以这样做
df['batsmen'] = df['batsmen'].apply(lambda x: sorted(x, reversed=True))
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句