Pandas中的常用數(shù)據(jù)類型詳解
Pandas常用數(shù)據(jù)類型
擴(kuò)展庫(kù)pandas常用的數(shù)據(jù)結(jié)構(gòu)
如下:
(1)Series:帶標(biāo)簽的一維數(shù)組
(2)DatetimeIndes:時(shí)間序列
(3)DateFrame:帶標(biāo)簽且大小可變的二維表格結(jié)構(gòu)
(4)Panel:帶標(biāo)簽且大小可變的三維數(shù)組
1.一維數(shù)組與常用操作
Series由索引和值兩部分組成,是一個(gè)類似于字典的結(jié)構(gòu)。
其中值的類型可以不同,如果在創(chuàng)建時(shí)沒(méi)有明確指定索引,則會(huì)自動(dòng)使用從0開始的非負(fù)整數(shù)作為索引。
import pandas as pd
import matplotlib.pyplot as plt
# 設(shè)置輸出結(jié)果列對(duì)齊
pd.set_option('display.unicode.ambiguous_as_wide',True)
pd.set_option('display.unicode.east_asian_width',True)
# 自動(dòng)創(chuàng)建從0開始的非負(fù)整數(shù)索引
s1=pd.Series(range(1,20,5))
# 使用字典創(chuàng)建Series,使用字典的“鍵”作為索引
s2=pd.Series({'語(yǔ)文':90,'數(shù)學(xué)':92,'Python':98,'物理':87,'化學(xué)':92})
# 修改指定索引對(duì)應(yīng)的值
s1[3]=-17
s2['語(yǔ)文']=94
print('s1原始數(shù)據(jù)'.ljust(20,'='))
print(s1,'\n')
print('對(duì)s1所有數(shù)據(jù)求絕對(duì)值'.ljust(20,'='))
print(abs(s1),'\n')
print('s1的每行索引前面加上數(shù)字2'.ljust(20,'='))
print(s1.add_prefix(2),'\n')
print('s2原始數(shù)據(jù)'.ljust(20,'='))
print(s2,'\n')
print('s2數(shù)據(jù)的直方圖'.ljust(20,'='))
s2.hist()
plt.show()
print('s2的每行索引后面加上_張三'.ljust(20,'='))
print(s2.add_suffix('_張三'),'\n')
print('s2最大值的索引'.ljust(20,'='))
print(s2.idxmax(),'\n')
print('測(cè)試s2的值是否在指定區(qū)間內(nèi)'.ljust(20,'='))
print(s2.between(90,94,inclusive=True),'\n')
print('查看s2中90分以上的數(shù)據(jù)'.ljust(20,'='))
print(s2[s2>90],'\n')
print('查看s2中大于中值的數(shù)據(jù)'.ljust(20,'='))
print(s2[s2>s2.median()],'\n')
print('s2與數(shù)字之間的運(yùn)算'.ljust(20,'='))
print(round((s2**0.5)*10,1),'\n')
print('s2中最小的2個(gè)值'.ljust(20,'\n'))
print(s2.nsmallest(2),'\n')
# 兩個(gè)等長(zhǎng)Series對(duì)象之間可以進(jìn)行四則運(yùn)算和冪運(yùn)算
# 只對(duì)兩個(gè)Series對(duì)象中都有的索引對(duì)應(yīng)的值進(jìn)行計(jì)算
# 非共同索引對(duì)應(yīng)的值為空值
print('兩個(gè)Series對(duì)象相加'.ljust(20,'='))
print(pd.Series(range(5))+pd.Series(range(5,10)),'\n')
# pipe()方法可以實(shí)現(xiàn)函數(shù)鏈?zhǔn)秸{(diào)用的功能
print('每個(gè)值加3之后再乘以3'.ljust(20,'='))
print(pd.Series(range(5)).pipe(lambda x:x+3).pipe(lambda x:x*3),'\n')
print('每個(gè)值的平方對(duì)5的余數(shù)'.ljust(20,'='))
print(pd.Series(range(5)).pipe(lambda x,y,z:(x**y)%z,2,5),'\n')
# apply()方法用來(lái)對(duì)Series對(duì)象的值進(jìn)行函數(shù)運(yùn)算
print('每個(gè)值加3'.ljust(20,'='))
print(pd.Series(range(5)).apply(lambda x:x+3),'\n')
print('標(biāo)準(zhǔn)差、無(wú)偏方差、無(wú)偏標(biāo)準(zhǔn)差'.ljust(20,'='))
print(pd.Series(range(5)).std(),'\n')
print(pd.Series(range(5)).var(),'\n')
print(pd.Series(range(5)).sem(),'\n')
print('檢查是否存在等價(jià)于True的值'.ljust(20,'='))
print(any(pd.Series([3,0,True])),'\n')
print('查看是否所有值都等價(jià)于True'.ljust(20,'='))
print(all(pd.Series([3,0,True])))2.時(shí)間序列與常用操作
使用pandas的date_range()函數(shù)生成時(shí)間序列對(duì)象:
date_range(start=None,end=None,periods=None,freq='D',tz=None,normalize=False,name=None,closed=None,**kwargs)
- (1)start和end用來(lái)指定起止日期時(shí)間
- (2)periods用來(lái)指定要生成的數(shù)據(jù)數(shù)量
- (3)freq用來(lái)指定時(shí)間間隔,默認(rèn)為'D',表示相鄰兩個(gè)日期之間相差一天
總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
淺談哪個(gè)Python庫(kù)才最適合做數(shù)據(jù)可視化
數(shù)據(jù)可視化是任何探索性數(shù)據(jù)分析或報(bào)告的關(guān)鍵步驟,目前有許多非常好的商業(yè)智能工具,比如Tableau、googledatastudio和PowerBI等,本文就詳細(xì)的進(jìn)行對(duì)比,感興趣的可以了解一下2021-06-06
手把手教你怎么用Python實(shí)現(xiàn)zip文件密碼的破解
之前在家里的老電腦中,發(fā)現(xiàn)一個(gè)加密zip壓縮包,由于時(shí)隔太久忘記密碼了,依稀記得密碼是6位字母加數(shù)字,網(wǎng)上下載了很多破解密碼的軟件都沒(méi)有效果,于是想到自己用Python寫一個(gè)暴力破解密碼的腳本,需要的朋友可以參考下2021-05-05
從基礎(chǔ)到精通詳解Pandas操作Excel使用手冊(cè)大全
在數(shù)據(jù)分析和處理中,Excel文件是最常見的數(shù)據(jù)格式之一,Pandas作為Python最強(qiáng)大的數(shù)據(jù)處理庫(kù),提供了豐富的Excel操作功能,下面小編就為大家詳細(xì)介紹一下吧2025-11-11
使用Pytorch導(dǎo)出自定義ONNX算子的示例代碼
這篇文章主要介紹了使用Pytorch導(dǎo)出自定義ONNX算子的示例代碼,下面給出個(gè)具體應(yīng)用中的示例:需要導(dǎo)出pytorch的affine_grid算子,但在pytorch的2.0.1版本中又無(wú)法正常導(dǎo)出該算子,故可通過(guò)如下自定義算子代碼導(dǎo)出,需要的朋友可以參考下2024-03-03
Python/R語(yǔ)言分別實(shí)現(xiàn)斐波那契數(shù)列的示例詳解
這篇文章將通過(guò)兩個(gè)小問(wèn)題:年齡計(jì)算、斐波那契數(shù)列,帶領(lǐng)大家深入淺出的理解兩種語(yǔ)言的基本語(yǔ)法,并用以實(shí)際場(chǎng)景,需要的可以參考一下2022-03-03
Python中執(zhí)行MySQL結(jié)果限制和分頁(yè)查詢示例詳解
這篇文章主要為大家介紹了Python中執(zhí)行MySQL結(jié)果限制和分頁(yè)查詢示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-11-11
Python中標(biāo)準(zhǔn)庫(kù)OS的常用方法總結(jié)大全
python中的OS庫(kù)提供了使用各種操作系統(tǒng)功能的接口。是經(jīng)常用到的一個(gè)庫(kù),所以這篇文章主要給大家總結(jié)介紹了關(guān)于Python中標(biāo)準(zhǔn)庫(kù)OS的常用方法,文中給出了詳細(xì)的示例代碼供大家參考學(xué)習(xí),需要的朋友們下面來(lái)一起看看吧。2017-07-07
利用Python模擬登錄pastebin.com的實(shí)現(xiàn)方法
這篇文章主要介紹了利用Python模擬登錄pastebin.com的實(shí)現(xiàn)方法,本文圖文并茂給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值 ,需要的朋友可以參考下2019-07-07

