最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python的pandas庫基礎(chǔ)知識超詳細(xì)教程

 更新時間:2025年09月26日 14:42:23   作者:小星袁  
Pandas是Python數(shù)據(jù)處理核心庫,提供Series和DataFrame結(jié)構(gòu),支持CSV/Excel/SQL等數(shù)據(jù)源導(dǎo)入及清洗、合并、統(tǒng)計等功能,與Matplotlib集成實現(xiàn)可視化,廣泛應(yīng)用于金融、統(tǒng)計等領(lǐng)域,本文給大家介紹Python的pandas庫基礎(chǔ)知識超詳細(xì)教程,感興趣的朋友跟隨小編一起看看吧

Pandas是Python中用于數(shù)據(jù)處理和分析的核心庫,提供了快速、靈活且明確的數(shù)據(jù)結(jié)構(gòu),主要包括一維的Series和二維的DataFrame。它支持從CSV、Excel、SQL等多種數(shù)據(jù)源導(dǎo)入數(shù)據(jù),并具備數(shù)據(jù)清洗、合并、重塑、分組統(tǒng)計、時間序列分析等功能。Pandas還易于與其他Python數(shù)據(jù)分析庫集成,是金融、統(tǒng)計、社會科學(xué)和工程等領(lǐng)域進(jìn)行數(shù)據(jù)分析和處理的強(qiáng)大工具。

一、配置環(huán)境

在命令行中運(yùn)行以下命令:

pip show pandas

 如果為以下內(nèi)容,則表示未安裝pandas庫

要安裝Pandas庫,你可以使用Python的包管理工具pip。在命令行界面(例如終端、命令提示符或Anaconda Prompt,取決于你的操作系統(tǒng)和Python安裝方式)中,輸入以下命令: 

pip install pandas

安裝成功展示圖: 

二、序列和數(shù)據(jù)表

2.1 初始化

         Series可以存儲任何數(shù)據(jù)類型,例如整數(shù)、浮點數(shù)、字符串、python對象等,每個元素都有一個索引。

import pandas as pd
A = pd.Series(data = [1, 2, 3, 4, 5], index = ["A", "B", "C", "D", "E"], name = "A1")
print(A)

2.2  獲取數(shù)值

import pandas as pd
A = pd.Series(data = [1, 2, 3, 4, 5], index = ["A", "B", "C", "D", "E"], name = "A1")
print(A)
print("數(shù)值:", A.values)

2.3 獲取索引

import pandas as pd
A = pd.Series(data = [1, 2, 3, 4, 5], index = ["A", "B", "C", "D", "E"], name = "A1")
print(A)
print("索引:", A.index)

2.4 索引取內(nèi)容

import pandas as pd
A = pd.Series(data = [1, 2, 3, 4, 5], index = ["A", "B", "C", "D", "E"], name = "A1")
print(A)
print(A[["A", "C"]])

2.5 索引改變?nèi)≈?/h3>
import pandas as pd
A = pd.Series(data = [1, 2, 3, 4, 5], index = ["A", "B", "C", "D", "E"], name = "A1")
print(A)
A[["A", "C"]] = [11, 12]
print(A)

2.6 字典生成序列

import pandas as pd
A = pd.Series({"A":1, "B":2, "C":3, "D":4})
print(A)

2.7 計算取值出現(xiàn)次數(shù)

import pandas as pd
A = pd.Series({"A":1, "B":2, "C":3, "D":4, "E":2, "F":3})
print(A.value_counts())

2.8 數(shù)據(jù)表

import pandas as pd
A = {"name": ["小米", "小華", "小魅", "小破", "小領(lǐng)"],
     "age": ["20", "18", "16", "23", "19"],
     "sex": ["男", "男", "女", "男", "女"]}
B = pd.DataFrame(A)
print(B)

2.9 數(shù)據(jù)表添加新變量

import pandas as pd
A = {"name": ["小米", "小華", "小魅", "小破", "小領(lǐng)"],
     "age": ["20", "18", "16", "23", "19"],
     "sex": ["男", "男", "女", "男", "女"]}
B = pd.DataFrame(A)
print(B)
B["high"] = ["180", "183", "160", "178", "158"]
print(B)

2.10 獲取列名

import pandas as pd
A = {"name": ["小米", "小華", "小魅", "小破", "小領(lǐng)"],
     "age": ["20", "18", "16", "23", "19"],
     "sex": ["男", "男", "女", "男", "女"],
     "high": ["180", "183", "160", "178", "158"]}
B = pd.DataFrame(A)
print(B)
print("數(shù)據(jù)表列名:", B.columns)

2.11 根據(jù)列名獲取數(shù)據(jù)

import pandas as pd
A = {"name": ["小米", "小華", "小魅", "小破", "小領(lǐng)"],
     "age": ["20", "18", "16", "23", "19"],
     "sex": ["男", "男", "女", "男", "女"],
     "high": ["180", "183", "160", "178", "158"]}
B = pd.DataFrame(A)
print(B)
print(B[["name", "sex"]])

2.12 輸出固定行

import pandas as pd
A = {"name": ["小米", "小華", "小魅", "小破", "小領(lǐng)"],
     "age": ["20", "18", "16", "23", "19"],
     "sex": ["男", "男", "女", "男", "女"],
     "high": ["180", "183", "160", "178", "158"]}
B = pd.DataFrame(A)
print(B.loc[2])

2.13 輸出多行

import pandas as pd
A = {"name": ["小米", "小華", "小魅", "小破", "小領(lǐng)"],
     "age": ["20", "18", "16", "23", "19"],
     "sex": ["男", "男", "女", "男", "女"],
     "high": ["180", "183", "160", "178", "158"]}
B = pd.DataFrame(A)
print(B.loc[2 : 4])

2.14 輸出指定行和列

import pandas as pd
A = {"name": ["小米", "小華", "小魅", "小破", "小領(lǐng)"],
     "age": ["20", "18", "16", "23", "19"],
     "sex": ["男", "男", "女", "男", "女"],
     "high": ["180", "183", "160", "178", "158"]}
B = pd.DataFrame(A)
print(B.loc[2 : 4, ["name", "high"]])

2.15 輸出性別為“男”的行和列

import pandas as pd
A = {"name": ["小米", "小華", "小魅", "小破", "小領(lǐng)"],
     "age": ["20", "18", "16", "23", "19"],
     "sex": ["男", "男", "女", "男", "女"],
     "high": ["180", "183", "160", "178", "158"]}
B = pd.DataFrame(A)
print(B.loc[B.sex == "男", ["name", "sex"]])

2.16 獲取指定行

import pandas as pd
A = {"name": ["小米", "小華", "小魅", "小破", "小領(lǐng)"],
     "age": ["20", "18", "16", "23", "19"],
     "sex": ["男", "男", "女", "男", "女"],
     "high": ["180", "183", "160", "178", "158"]}
B = pd.DataFrame(A)
print(B.iloc[0 : 2])

2.17 獲取指定列

import pandas as pd
A = {"name": ["小米", "小華", "小魅", "小破", "小領(lǐng)"],
     "age": ["20", "18", "16", "23", "19"],
     "sex": ["男", "男", "女", "男", "女"],
     "high": ["180", "183", "160", "178", "158"]}
B = pd.DataFrame(A)
print(B.iloc[ : , 0 : 2])

2.18 獲取指定位置數(shù)據(jù)

import pandas as pd
A = {"name": ["小米", "小華", "小魅", "小破", "小領(lǐng)"],
     "age": ["20", "18", "16", "23", "19"],
     "sex": ["男", "男", "女", "男", "女"],
     "high": ["180", "183", "160", "178", "158"]}
B = pd.DataFrame(A)
print(B.iloc[0 : 2, 0 : 2])

2.19 索引轉(zhuǎn)化

import numpy as np
import pandas as pd
A = {"name": ["小米", "小華", "小魅", "小破", "小領(lǐng)"],
     "age": ["20", "18", "16", "23", "19"],
     "sex": ["男", "男", "女", "男", "女"],
     "high": ["180", "183", "160", "178", "158"]}
B = pd.DataFrame(A)
# 轉(zhuǎn)換為列表
print(B.iloc[list(B.sex == "男"), 0 : 3])
# 轉(zhuǎn)換為數(shù)組
print(B.iloc[np.array(B.sex == "男"), 0 : 3])

2.20 判斷條件

import numpy as np
import pandas as pd
A = {"name": ["小米", "小華", "小魅", "小破", "小領(lǐng)"],
     "age": ["20", "18", "16", "23", "19"],
     "sex": ["男", "男", "女", "男", "女"],
     "high": ["180", "183", "160", "178", "158"]}
B = pd.DataFrame(A)
print(list(B.age >= "18"))

2.21 重新賦值

import numpy as np
import pandas as pd
A = {"name": ["小米", "小華", "小魅", "小破", "小領(lǐng)"],
     "age": ["20", "18", "16", "23", "19"],
     "sex": ["男", "男", "女", "男", "女"],
     "high": ["180", "183", "160", "178", "158"]}
B = pd.DataFrame(A)
B.high = ["179", "186", "168", "183", "160"]
print(B)

三、數(shù)據(jù)聚合和分組運(yùn)算

3.1 獲取數(shù)據(jù)集

iris.csv(iris數(shù)據(jù)集、鳶尾花數(shù)據(jù)集)

3.2 讀取數(shù)據(jù)集

        鳶尾花數(shù)據(jù)集(Iris Dataset),又稱安德森鳶尾花卉數(shù)據(jù)集(Anderson’s Iris Data Set),是數(shù)據(jù)科學(xué)與機(jī)器學(xué)習(xí)領(lǐng)域中最著名的經(jīng)典數(shù)據(jù)集之一。

        鳶尾花數(shù)據(jù)集可以通過多種方式獲取,如Scikit-learn提供的內(nèi)置數(shù)據(jù)集,以及UCI機(jī)器學(xué)習(xí)庫等。獲取后,可以使用Python等編程語言進(jìn)行數(shù)據(jù)加載、預(yù)處理和模型訓(xùn)練等操作。

        鳶尾花數(shù)據(jù)集以其簡潔明了的數(shù)據(jù)結(jié)構(gòu)和廣泛的應(yīng)用場景,成為了機(jī)器學(xué)習(xí)初學(xué)者的首選案例。通過學(xué)習(xí)和實踐這一數(shù)據(jù)集,初學(xué)者可以逐步掌握機(jī)器學(xué)習(xí)的基礎(chǔ)知識和技能。

import numpy as np
import pandas as pd
iris = pd.read_csv("D:/iris.csv")
print(iris.head())

3.3 計算每列均值

import numpy as np
import pandas as pd
iris = pd.read_csv("D:/iris.csv")
print(iris.iloc[ : , 1 : 5].apply(func = np.mean, axis = 0))

3.4 計算每列的最小值

import numpy as np
import pandas as pd
iris = pd.read_csv("D:/iris.csv")
min = iris.iloc[ : , 1 : 5].apply(func = np.min , axis = 0)
print(min)

3.5 計算每列的最大值

import numpy as np
import pandas as pd
iris = pd.read_csv("D:/iris.csv")
max = iris.iloc[ : , 1 : 5].apply(func = np.max , axis = 0)
print(max)

3.6 計算每列的樣本數(shù)量

import numpy as np
import pandas as pd
iris = pd.read_csv("D:/iris.csv")
size = iris.iloc[ : , 1 : 5].apply(func = np.size , axis = 0)
print(size)

3.7 行計算

只展示前五行 

其中代碼的axis=0要改成axis=1

import numpy as np
import pandas as pd
iris = pd.read_csv("D:/iris.csv")
data = iris.iloc[0 : 5, 1 : 5].apply(func = (np.min, np.max, np.mean, np.std, np.var) , axis = 1)
print(data)

3.8 分組計算均值

import numpy as np
import pandas as pd
iris = pd.read_csv("D:/iris.csv")
res = iris.drop("Id", axis = 1).groupby(by = "Species").mean()
print(res)

3.9 分組計算偏度

import numpy as np
import pandas as pd
iris = pd.read_csv("D:/iris.csv")
res = iris.drop("Id", axis = 1).groupby(by = "Species").skew()
print(res)

3.10 聚合運(yùn)算

3.10.1 分組前

import numpy as np
import pandas as pd
iris = pd.read_csv("D:/iris.csv")
res = iris.drop("Id", axis = 1).agg({"SepalLengthCm" : ["min", "max", "mean"],
                                     "SepalWidthCm" : ["min", "max", "mean"],
                                     "PetalLengthCm" : ["min", "max", "mean"]})
print(res)

3.10.2 分組后

import numpy as np
import pandas as pd
iris = pd.read_csv("D:/iris.csv")
res = (iris.drop("Id", axis = 1).groupby(by = "SepalLengthCm")
       .agg({"SepalLengthCm" : ["min", "max", "mean"],
             "SepalWidthCm" : ["min"],
             "PetalLengthCm" : ["skew"]}))
print(res)

四、數(shù)據(jù)可視化

Mtplotlib是Python中一個廣泛使用的繪圖庫,它提供了一個類似于MATLAB的繪圖框架。Mtplotlib可以生成高質(zhì)量的圖表,這些圖表可以用于數(shù)據(jù)可視化、科學(xué)研究、教育以及出版等領(lǐng)域。 

4.1 安裝matplotlib庫

pip install matplotlib

安裝成功展示圖: 

4.2 檢測matplotlib庫

pip show matplotlib

4.3  箱線圖

import numpy as np
import pandas as pd
from matplotlib import pyplot as plt
iris = pd.read_csv("D:/iris.csv")
iris.iloc[ : , 1 : 6].boxplot(column = ["SepalLengthCm", "SepalWidthCm", "PetalLengthCm", "PetalWidthCm"], by = "Species", figsize=(10,10))
plt.show()

4.4 散點圖

import numpy as np
import pandas as pd
from matplotlib import pyplot as plt
iris = pd.read_csv("D:/iris.csv")
color = iris.Species.map({"setosa" : "blue", "versicolor" : "green", "virginica" : "red"})
iris.plot(kind = "scatter" , x = "SepalLengthCm", y = "SepalWidthCm", s = 30, c = color, figsize = (10,10))
plt.show()

4.5 六邊形熱力圖

import numpy as np
import pandas as pd
from matplotlib import pyplot as plt
iris = pd.read_csv("D:/iris.csv")
iris.plot(kind = "hexbin" , x = "SepalLengthCm", y = "SepalWidthCm", gridsize = 15, figsize = (10,7), sharex = False)
plt.show()

4.6 折線圖

import numpy as np
import pandas as pd
from matplotlib import pyplot as plt
iris = pd.read_csv("D:/iris.csv")
iris.iloc[ : , 0 : 5].plot(kind = "line", x = "Id", figsize = (12, 8))
plt.show()

到此這篇關(guān)于Python的pandas庫基礎(chǔ)知識超詳細(xì)教程的文章就介紹到這了,更多相關(guān)Python的pandas庫基礎(chǔ)知識內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評論

兴文县| 沛县| 马关县| 明水县| 鄂伦春自治旗| 上栗县| 乐都县| 葵青区| 新丰县| 潜山县| 遵化市| 连江县| 德令哈市| 湘潭市| 彰化县| 缙云县| 海南省| 民勤县| 庐江县| 新乡县| 玉田县| 唐海县| 乌审旗| 鄂尔多斯市| 邵阳县| 嘉禾县| 渭源县| 洛扎县| 壶关县| 城步| 佛教| 嘉兴市| 罗定市| 南宁市| 即墨市| 石台县| 克东县| 固安县| 浪卡子县| 洛南县| 囊谦县|