pandas統計函式協方差和相關係數,資料排序

2021-10-08 00:05:05 字數 3904 閱讀 8387

import pandas as pd

df = pd.read_csv(

"d:/python基礎課程/pandas/ant-learn-pandas/datas/beijing_tianqi/beijing_tianqi_2018.csv"

, encoding=

"utf8"

, engine=

"python"

)print

(df.head(5)

)df.loc[:,

"bwendu"

]= df[

"bwendu"].

str.replace(

"℃","")

.astype(

"int32"

)df.loc[:,

"ywendu"

]= df[

"ywendu"].

str.replace(

"℃","")

.astype(

"int32"

)print

(df.head(

))

# 一下子提取所有數字列統計結果

res1 = df.describe(

)print

(res1)

''' bwendu ywendu aqi aqilevel

count 365.000000 365.000000 365.000000 365.000000

mean 18.665753 8.358904 82.183562 2.090411

std 11.858046 11.755053 51.936159 1.029798

min -5.000000 -12.000000 21.000000 1.000000

25% 8.000000 -3.000000 46.000000 1.000000

50% 21.000000 8.000000 69.000000 2.000000

75% 29.000000 19.000000 104.000000 3.000000

max 38.000000 27.000000 387.000000 6.000000

'''# 檢視單個series的資料

res2 = df[

"bwendu"

].mean(

)# 平均值

print

(res2)

df["bwendu"].

max(

)df[

"bwendu"].

min(

)

# 唯一性去重

res3 = df[

"fengxiang"

].unique(

)print

(res3)

'''['東北風' '北風' '西北風' '西南風' '南風' '東南風' '東風' '西風']'''

# 按值計算

res4 = df[

"fengxiang"

].value_counts(

)print

(res4)

'''南風 92

西南風 64

北風 54

西北風 51

東南風 46

東北風 38

東風 14

西風 6'''

**協方差:**衡量同向反向程度,如果協方差為正,說明x,y同向變化,協方差越大說明同向程度越高;如果協方差為負,說明x,y反向運動,協方差越**明反向程度越高。

**相關係數:**衡量相似度程度,當他們的相關係數為1時,說明兩個變數變化時的正向相似度最大,當相關係數為-1時,說明兩個變數變化的反向相似度最大

# 協方差矩陣:

res5 = df.cov(

)print

(res5)

# 相關係數矩陣

res6 = df.corr(

)print

(res6)

# 單獨檢視空氣質素和最高溫度的相關係數

res7 = df[

"aqi"

].corr(df[

"bwendu"])

print

(res7)

# 空氣質素和溫差的相關係數

res8 = df[

"aqi"

].corr(df[

"bwendu"

]-df[

"ywendu"])

print

(res8)

series的排序:

series.sort_values(ascending=true, inplace=false)

引數說明:

ascending:預設為true公升序排序,為false降序排序

inplace:是否修改原始series

dataframe的排序:

dataframe.sort_values(by, ascending=true, inplace=false)

引數說明:

by:字串或者list《字串》,單列排序或者多列排序

ascending:bool或者list,公升序還是降序,如果是list對應by的多列

inplace:是否修改原始dataframe

series排序

# 公升序

df["aqi"

].sort_values(

)

# 降序

df["aqi"

].sort_values(ascending=

false

)

df[

"tianqi"

].sort_values(

)『』『225 中雨~小雨

230 中雨~小雨

197 中雨~雷陣雨

196 中雨~雷陣雨

112 多雲

...191 雷陣雨~大雨

219 雷陣雨~陰

335 霧~多雲

353 霾

348 霾』『』

單列排序

df.sort_values(by=

"aqi"

)# 公升序

df.sort_values(by=

"aqi"

, ascending=

false

)# 降序

多列排序

# 按空氣質素等級、最高溫度排序,預設公升序

df.sort_values(by=

["aqilevel"

,"bwendu"])

# 兩個欄位都是降序

df.sort_values(by=

["aqilevel"

,"bwendu"

], ascending=

false

)# 分別指定公升序和降序

df.sort_values(by=

["aqilevel"

,"bwendu"

], ascending=

[true

,false

])

matlab協方差函式cov

向量的方差與協方差矩陣 cov x 求向量x的方差。cov x 為乙個數值,數值大小計算公式為s x cov x,y 求向量x與y的協方差矩陣。cov x,y 為2 2矩陣,s x c x,y c y,x s y 矩陣協方差矩陣 cov x 求矩陣x的協方差矩陣。diag cov x 得到每乙個列向...

pandas的相關係數與協方差例項

1 輸出百分比變化以及前後指定的行數 a np.arange 1,13 reshape 6,2 data dataframe a 計算列的百分比變化,如果想計算行設定axis 1 print data.pct change 0 1 0 nan nan 1 2.000000 1.000000 2 0....

協方差的計算公式例子 協方差的意義和計算公式

協方差的意義和計算公式 學過概率統計的孩子都知道,統計裡最基本的概念就是樣本的均值,方差,或者 再加個標準差。首先我們給你乙個含有 n個樣本的集合 依次給出這些概念的公式描述,這些高中學過數學的孩子都應該知道吧,一帶而過。均值 標準差 方差 很顯然,均值描述的是樣本集合的中間點,它告訴我們的資訊是很...