日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

【Python】分享14条非常实用的Pandas函数方法,建议珍藏!!

發布時間:2025/3/12 python 20 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【Python】分享14条非常实用的Pandas函数方法,建议珍藏!! 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

今天和大家來分享幾個十分好用的pandas函數,可能平時并不是特別的常見,但是卻能夠幫助我們在平時的工作、學習當中極大的提高效率,小編也希望讀者朋友們在看完本文之后能夠大有收獲

1

ExcelWriter

使用ExcelWriter()可以向同一個excel的不同sheet中寫入對應的表格數據,首先要創建一個writer對象,傳入的主要參數為文件名及其路徑

import pandas as pda = pd.DataFrame({"a": [1, 2, 3, 4, 5],"b":?[2,?5,?6,?8,?10], }) b = pd.DataFrame({"c":?[5,?2,?3,?1,?4],"d":?[2,?5,?7,?8,?10], }) #?寫入到同一個excel當中去 with pd.ExcelWriter("data.xlsx") as writer:a.to_excel(writer, sheet_name="a_sheet", index = False)b.to_excel(writer, sheet_name="b_sheet", index = False)

2

pipe

pipe()方法可以將一連串的函數以鏈式的結構嵌套在數據集當中,例如一個臟數據集當中有重復值、空值和極值等等,我們分別建立了3個函數來"drop_duplicates","remove_outliers"和"fill_nans"分別處理上面提到的3個問題,然后用pipe()方法將這三個函數以鏈式的結構串聯起來作用在同一個數據集上面,代碼如下圖所示

df_preped?=?(df.pipe(drop_duplicates).pipe(remove_outliers,?['price',?'carat',?'depth']).pipe(encode_categoricals,?['cut',?'color',?'clarity']))

3

explode

我們可以通過一個簡單的例子來說明一下該函數的作用,

df = pd.Series([1, 6, 7, [46, 56, 49], 45, [15, 10, 12]] ).to_frame("dirty") ?

df.explode("dirty", ignore_index=True)

要是遇到一行的數據當中含有多個元素,explode()方法可以將這一行的數據展開到多行,ignore_index = True,意味著數據展開來之后,索引也會逐行地遞增

4

between

between是用來提取出給定范圍當中的值的,看下面的例子

data = {'name': ['John', 'Mike', 'Tom', 'Greg', 'Jim'],'income':?[8000,?9000,?10000,?10000,?20000],'age': [20, 24, 25, 23, 28]} df = pd.DataFrame(data)

我們挑選出收入在8000到10000范圍之內的數據

df[df['income'].between(8000, 10000, inclusive='neither')]

5

convert_dtypes

pandas當中的convert_dtypes可以自動推斷數據類型并且進行轉化,例如

df = pd.DataFrame({'a':[1,2,3],'b':[0.55,0.66,1.55],'c':['Jack','Tony','Posi']} ) df.dtypes

df.convert_dtypes().dtypes

6

select_dtypes

pandas當中的select_dtypes()方法功能是返回那些指定數據類型的列,當中的include顧名思義就是篩選出指定數據類型的列,例如下面我們挑選出是bool數據類型的數據來

a = pd.DataFrame({"a": [1, 2, 3, 4, 5],"b": [True, False, False, True, True],"c": ["John", "Tom", "Mike", "Jim", "Dylan"] }) a.select_dtypes(include='bool')

而exclude就是排除掉指定數據類型的數據,將其他類型的數據篩選出來

a.select_dtypes(exclude='bool')

7

mask

pandas當中的mask()方法主要是對按照指定的條件對數據集當中的數據進行替換,例如下面數據集當中對于大于0的數據替換成0

df = pd.DataFrame({"A":[12, 4, 5, 44, 1], "B":[5, 2, 54, 3, 2], "C":[20, 16, 7, 3, 8], "D":[14,?3,?17,?2,?6]})?

#?將大于10的數字替換成0 df.mask(df?>?10,?0)

8

nlargest和nsmallest

nlargest和nsmallest的作用在于可以讓我們看到根據特定的列排序的最大或者是最小的若干列,例如

data = {'name': ['John', 'Mike', 'Tom', 'Greg', 'Jim'],'income': [2500, 4500, 5000, 3000, 2000],'age': [20, 24, 25, 23, 28]} df = pd.DataFrame(data)

我們按照income這一列將數據排序,并且顯示出最大的前3行

df.nlargest(3, 'income')

9

idxmax和idxmin

主要用來返回最大值或者是最小值的位置,也就是索引值

data = {'income': [8000, 9000, 10000, 10000, 20000],'age':?[20,?24,?25,?23,?28]} df?=?pd.DataFrame(data,?index?=?['John',?'Mike',?'Tom',?'Greg',?'Jim'])

我們找出income最高和最低的那個人是誰

df['income'].idxmax() >>>> Jimdf['income'].idxmin() >>> John

10

clip

在給出指定范圍的前提下,對于數據集當中超出該范圍的值進行更改,例如我們將范圍限定在-4到6之間,超過6的數字會被設置為6,超過-4的數字會被設置為-4

data = {'col_0': [9, -3, 0, -1, 5],'col_1': [-2, -7, 6, 8, -5]} df = pd.DataFrame(data)

df.clip(-4, 6)

11

at_time和between_time

pandas當中at_time()方法和between_time()方法主要是用來處理時間序列的數據,根據給出的時間點或者時間范圍來篩選出數據

index?=?pd.date_range("2021-08-01",?periods=100,?freq="H") data?=?pd.DataFrame({"col":?list(range(100))},?index=index) data.head()

我們篩選出那些下午2點的數據

data.at_time("14:00")

當然我們可以使用between_time這個方法來挑選出某個時間范圍內的數

data.between_time("11:00", "12:00")

?

12

at和iat

我們一般用pandas當中的loc和iloc比較多,用來篩選出我們想要的數據,而at和iat也能夠實現loc和iloc的功能,而且更加的快捷

data = {'name': ['John', 'Mike', 'Tom', 'Greg', 'Jim'],'income': [8000, 9000, 10000, 10000, 20000],'age': [20, 24, 25, 23, 28]} df = pd.DataFrame(data)

# [index, label] df.at[1, "income"] >>>?9000#?[index, index] df.iat[2, 3] >>> 1000

13

pandas styler

pandas還能夠對數據集當中的數據進行上色,我們可以通過該方法將某些我們覺得重要的數據給標注出來,例如我們對數據集中每列的最大值最小值標注出來

df = pd.DataFrame(np.random.randn(5, 5), columns=list('ABCDE'))#?我們標注出最大、最小的值 df.style.highlight_max(color = "yellow")

具體的可以去小編另外寫的一篇文章中去看個究竟:厲害了,Pandas表格還能五彩斑斕的展示數據,究竟是怎么做到的呢?

14

hasnans

假如數據集當中存在空值,可以用hasnans方法來檢查,要是有空值,則返回True,反之則返回False

s = pd.Series([2, 4, 6, "abcde", np.nan]) s.hasnans >>>>?True 往期精彩回顧適合初學者入門人工智能的路線及資料下載機器學習及深度學習筆記等資料打印機器學習在線手冊深度學習筆記專輯《統計學習方法》的代碼復現專輯 AI基礎下載機器學習的數學基礎專輯黃海廣老師《機器學習課程》課件合集 本站qq群851320808,加入微信群請掃碼:

總結

以上是生活随笔為你收集整理的【Python】分享14条非常实用的Pandas函数方法,建议珍藏!!的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 综合色影院 | 中文字幕日韩欧美在线 | 亚洲精品久久久久中文字幕二区 | 偷偷操不一样的99 | 波多野在线播放 | 久久综合99 | 男女男精品视频 | 国产日韩第一页 | 国产成人主播 | 奇米影视播放器 | 午夜影视体验区 | 最新理伦片eeuss影院 | 91丝袜一区二区三区 | 久久92| 日韩在线视频一区二区三区 | 国产免费高清av | 久色婷婷| 免费黄色欧美 | 牛牛超碰| 欧美一级久久 | 日韩精品一区二区三区丰满 | aaaa级片| 少妇姐姐 | 91cn.com| 69久久夜色精品国产69 | 久久夜夜操妹子 | 色老大视频 | 国产一区日韩精品 | 国产一级特黄aaa大片 | 丁香婷婷成人 | 欧美干干干 | 亚洲大乳| 欧美整片sss | 国产不卡视频在线观看 | 天天躁狠狠躁狠狠躁夜夜躁68 | 在线观看视频福利 | 九色在线观看 | 美女露胸软件 | 97视频在线播放 | 日本一级网站 | 中国精品久久 | 亚洲国产精品成人综合久久久 | 少妇视频网站 | 日日骚影院 | 欧美在线一区视频 | 少妇欧美激情一区二区三区 | 嫩草大剧院| 国产毛片视频网站 | 99热91| 91免费国产在线 | 可以免费观看的av网站 | 免费在线国产 | 亚洲精品国产片 | 瑟瑟综合网 | 日韩欧美一区二 | 黄色成人在线网站 | 日本孕妇孕交 | 国产成人av一区二区三区 | 天躁夜夜躁狼狠躁 | 久久婷婷综合色丁香五月 | youjizz.com国产| 一级黄色片在线观看 | 青娱乐自拍视频 | 亚洲丝袜中文字幕 | 在线日韩视频 | 中文字幕在线视频一区 | 国产精品亚洲αv天堂无码 伊人性视频 | 一级片免费在线 | 色视频网| 亚洲中文一区二区三区 | 老熟女高潮一区二区三区 | 免费成人美女在线观看 | 欧美日韩精品亚洲精品 | 无码人妻一区二区三区av | 蛇女欲潮性三级 | 黄色三级在线播放 | 一级视频在线 | 久久精品亚洲 | 天天爱天天射 | 深夜视频在线观看 | 日本三级播放 | 日本一二三区视频 | www.999av | 毛片av在线| 粗大的内捧猛烈进出 | 911国产视频 | 国产女人18毛片水真多1 | 日本爽爽| 国产麻豆午夜三级精品 | 美女视频黄的免费 | 亚洲精品1区2区3区 国产丝袜网站 | 亚洲伦理在线观看 | 国产精品中文在线 | 正在播放日韩 | 美丽姑娘免费观看在线观看 | 99视频网址 | 超碰影院在线 | 欧美成人一二区 | 天堂av资源在线观看 |