NavigationDuplicated: Avoided redundant navigation to current location: “/xxx“的解決方案
Pandas
Pandas可以進行統計特徵計算,包括均值、方差、分位數、相關係數和協方差等,這些統計特徵能反映資料的整體分佈。
‘’’
mean():計算樣本資料的算術平均值
std():計算標準差
cov():計算 協方差矩陣
var();計算方差
describe():描述樣本資料的基本情況,包括非NaN資料個數,均值,標準差,最小值
樣本的25%,50%,75%分位數,最大值
Pandas資料結構的範圍可以從一維到三維。Series(序列)是一維的,DataFrame(資料框)是二維的,Panel是三維甚至更高維的資料結構。通常,Series和DataFrame可以用於大多數統計、工程、財務和社會科學的場景中。
Series:它是一個帶標籤的一維陣列,可以用於儲存任意型別資料,例如整型、浮點型、字串和其他有效的Python物件。它的行標籤稱作index。
DataFrame:它是一個帶標籤的二維陣列,有行和列。列可以有多種型別。DataFrame可以看作二維結構的陣列,例如電子表格和資料庫表格。DataFrame也可以看作包含多個不同型別的Series的集合。
Panel:在統計學和經濟學中,Panel data(面板資料)指多維資料,這個多維資料包括不同時間的不同測量結果。該資料結構的名稱來源於其概念。與Series和DataFrame相比,面板資料是不太常用的一種資料結構。
序列
構造一個序列可以使用如下方式實現:
通過字典構建。
通過NumPy中的一維陣列構建。
通過資料框中的某一列構建。
1.序列構造
#序列構建
import pandas as pd
import numpy as np
s1=pd.Series(np.array([1.5,2.5,4.5])) #由陣列構造序列
s2=pd.Series({"北京":1.5,"上海":2.5,"廣東":4.5}) #由字典構造序列
s3=pd.Series([1.5,2.5,4.5],index=['b','c','d']) #給出行標籤命名
print(s1)
print("-----------------")
print(s2)
print("-----------------")
print(s3)
執行結果:
序列有兩列構成。
由陣列構造的序列,其第一列是序列的行索引(可以理解為行號),自動從0開始,第二列才是序列的實際值。
通過字典構造的序列,第一列是具體的行名稱(index),對應到字典中的鍵,第二列是序列的實際值,對應到字典中的值。
2.序列索引和計算
#序列索引和計算
import pandas as pd
import numpy as np
s=pd.Series([1.5,2.5,3.5],index=['a','b','c'])
a=s['b'] #取出序列第2個元素,輸出:2.5
b1=np.mean(s)
b2=s.mean() #通過數列方法求均值
print(a,'\n',b1,'\n',b2)
執行結果:
2.5
2.5
2.5
資料框
DataFrame是由行和列構成的二維資料結構。雖然索引和列名稱是可選的,但是最好把它們設定一下。索引可以看成是行標籤,列名稱可以看成是列標籤。
資料框的建立方法如下:
DataFrame(data=二維資料 [, index=行索引[, columns=列索引[, dtype=資料型別]]])
其中的data可以是二維NumPy陣列;
data如果是字典時,其值為一維陣列,鍵為資料框的列名。
3.構造資料框
#構造資料框
import pandas as pd
import numpy as np
a=np.arange(1,7).reshape(3,2)
df1=pd.DataFrame(a)
df2=pd.DataFrame(a,index=['a','b','c'],columns=['c1','c2'])
df3=pd.DataFrame({'c1':a[:,0],'c2':a[:,1]})
print(df1)
print("--------------")
print(df2)
print("--------------")
print(df3)
print("--------------")
執行結果: