iT邦幫忙

2025 iThome 鐵人賽

DAY 24
0
佛心分享-讓我升級的那些書

菜雞學習 pandas 的 30 日讀書分享系列 第 24

菜雞學習 pandas 的 30 日讀書分享【Day 24】排序 (下)

  • 分享至 

  • xImage
  •  

https://ithelp.ithome.com.tw/upload/images/20250825/201682908Oz40DVeCq.png

排序 (下)

我們接續上次排序的內容,在預設情況下,所有缺失值都會排在 Series 的結尾:

In [244]: obj = pd.Series([4, np.nan, 7, np.nan, -3, 2])

In [245]: obj.sort_values()
Out[245]:
4   -3.0
5    2.0
0    4.0
2    7.0
1    NaN
3    NaN
dtype: float64

使用 na_postition 選項可以將缺失值排在開頭:

In [246]: obj.sort_values(na_position="first")
Out[246]:
1    NaN
3    NaN
4   -3.0
5    2.0
0    4.0
2    7.0
dtype: float64

在排序 DataFrame 時,可以根據一欄或多欄的資料來進行排序,作法將一個或多個欄名傳給 sort_value():

In [247]: frame = pd.DataFrame({"b": [4, 7, -3, 2], "a": [0, 1, 0, 1]})

In [248]:
   b  a
0  4  0
1  7  1
2 -3  0
3  2  1

In [249]: frame.sort_values("b")
Out[249]:
   b  a
2 -3  0
3  2  1
0  4  0
1  7  1

若使用多欄來排序,則需傳入一個名稱串列:

In [250]: frame.sort_values(["a", "b"])
Out[250]:
   b  a
2 -3  0
3  2  1
0  4  0
1  7  1

今日的分享就到這囉,我們明天見,掰掰!


上一篇
菜雞學習 pandas 的 30 日讀書分享【Day 23】排序 (上)
下一篇
菜雞學習 pandas 的 30 日讀書分享【Day 25】排名 (上)
系列文
菜雞學習 pandas 的 30 日讀書分享30
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言