iT邦幫忙

第 12 屆 iThome 鐵人賽

DAY 23
0
Software Development

30天的python學習 系列 第 23

python30天-DAY23-pandas(9)

  • 分享至 

  • xImage
  •  

今天我們來介紹一些之前沒有講到的函數。

drop()

可以用來決定你要刪掉哪一行或那一列。
為了進行示範我創建了一個數據表名為 da (如下圖)。
https://ithelp.ithome.com.tw/upload/images/20200923/20129601S3w2r97TIl.png

import pandas as pd
import numpy as np
csv = "test.csv"
da = pd.read_csv(csv)
na = da.drop([0,1])
na

我們使用了 drop 函數來將第0、1列進行刪除,結果如下圖。
https://ithelp.ithome.com.tw/upload/images/20200923/20129601ND8P6gCJPk.png

也可以用他來刪除行。

import pandas as pd
import numpy as np
csv = "test.csv"
da = pd.read_csv(csv)
na = da.drop(['Age'],axis=1)
na

https://ithelp.ithome.com.tw/upload/images/20200923/20129601mLWrWj0I9z.png
不過這邊要注意一點,你可以看到我在刪除行時在 drop 函數裡多了 axis=1 這段,這是因為我們要刪除的是行,所以我們用 axis=1 來告訴 drop 要去找行的索引。
有些人可能發現了,我們在刪除列時並沒有加上 axis=0 ,這是因為 drop 裡預設就是從列去找,所以不用特別去定義。

dropna()

可以用來將具有空值(NaN)的列進行刪除。

import pandas as pd
import numpy as np
csv = "test.csv"
da = pd.read_csv(csv)
na = da.dropna()
na

https://ithelp.ithome.com.tw/upload/images/20200924/20129601vFf8qSCi8q.png
可以跟最上面的圖片來做比較,你可以發現具有空值(NaN)的那兩列都被刪除了。

也可以讓它不要去檢查所有行,讓它檢查特定的就好。

import pandas as pd
import numpy as np
csv = "test.csv"
da = pd.read_csv(csv)
na = da.dropna(subset=["Age"])
na

https://ithelp.ithome.com.tw/upload/images/20200924/201296012YJRK10Ms9.png


上一篇
python30天-DAY22-pandas(8)
下一篇
python30天-DAY24-pandas-Series結構
系列文
30天的python學習 30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言