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

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程语言 > python >内容正文

python

数据分析与挖掘-python常用数据探索函数

發(fā)布時(shí)間:2024/4/11 python 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 数据分析与挖掘-python常用数据探索函数 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

在python中,主要兩個(gè)庫(kù)用于數(shù)據(jù)探索,一個(gè)是Pandas(用于數(shù)據(jù)分析,這可能是數(shù)據(jù)分析領(lǐng)域最強(qiáng)的python庫(kù)),另一個(gè)是Matplotlib(用于數(shù)據(jù)可視化,繪制圖表,起源于MATLAB)。

1.基本統(tǒng)計(jì)特征函數(shù)

下面介紹的函數(shù)主要作為Pandas的兩大基本對(duì)象Series和DataFrame的方法出現(xiàn)。

主要特征函數(shù)
方法名函數(shù)功能
sum()計(jì)算和(按列)
mean()計(jì)算平均數(shù)(按列)
var()計(jì)算方差(按列)
std()計(jì)算標(biāo)準(zhǔn)差(按列)
corr()計(jì)算相關(guān)系數(shù)矩陣
cov()計(jì)算協(xié)方差矩陣
skew()計(jì)算三階矩
kurt()計(jì)算四階矩
describe()給出基本描述

給出如下數(shù)據(jù)。

測(cè)試代碼:

# -*- coding: utf-8 -*- import pandas as pd source = './test.xlsx' data = pd.read_excel(source, index_col='ID') print("打印數(shù)據(jù)類(lèi)型") print(type(data)) data_0 = data["A"] print("打印數(shù)據(jù)類(lèi)型") print(type(data_0)) # 求和 print("求和") print(data.sum()) print(data_0.sum()) print("計(jì)算算數(shù)平均數(shù)") # 計(jì)算算數(shù)平均數(shù) print(data.mean()) print(data_0.mean()) # 計(jì)算方差 print("計(jì)算方差") print(data.var()) print(data_0.var()) # 計(jì)算標(biāo)準(zhǔn)差 print("計(jì)算標(biāo)準(zhǔn)差") print(data.std()) print(data_0.std()) # 計(jì)算相關(guān)系數(shù) print("計(jì)算相關(guān)系數(shù)") # method為計(jì)算方法,可選為pearson,kendall,spearman print(data.corr(method='pearson')) print(data["A"].corr(data["B"])) # 計(jì)算協(xié)方差矩陣 print("計(jì)算協(xié)方差矩陣") print(data.cov()) print(data.loc[101].cov(data.loc[102])) # 計(jì)算階矩 print("計(jì)算階矩") print(data.skew()) print(data_0.kurt()) # 基本統(tǒng)計(jì)量 print("基本統(tǒng)計(jì)量") print(data.describe()) print(type(data.describe())) print(data.describe().loc["mean"])

運(yùn)行結(jié)果:

2.拓展統(tǒng)計(jì)特征函數(shù)

數(shù)據(jù)類(lèi)型擁有的累計(jì)函數(shù)。

累計(jì)統(tǒng)計(jì)特征函數(shù)
方法名函數(shù)功能
cumsum()依次求前n個(gè)數(shù)的和
cumprod()依次求前n個(gè)數(shù)的積
cummax()依次求前n個(gè)數(shù)的最大值
cummin()依次求前n個(gè)數(shù)的最小值

?

Pandas擁有的累計(jì)函數(shù)。

pd.rolling_method(data,k)

上面的method替換名字為基本函數(shù)名稱(chēng)如pd.rolling_var(data,k)為每k列計(jì)算一次方差。

注意:新版本Pandas已經(jīng)將這些方法修改到基礎(chǔ)類(lèi)型中了,什么的語(yǔ)句此時(shí)應(yīng)該data=data.rolling(k).var()。

測(cè)試代碼:

import pandas as pd import matplotlib.pyplot as plt data = pd.Series(range(2, 9)) # 累計(jì)計(jì)算 print("累計(jì)計(jì)算") print(data.cumsum()) print(data.cumprod()) print(data.cummax()) print(data.cummin())

運(yùn)行結(jié)果:

3.統(tǒng)計(jì)作圖函數(shù)

Pandas對(duì)Matplotlib命令做了不少簡(jiǎn)化,因此常常結(jié)合使用。

常用作圖函數(shù)
函數(shù)名功能
plot(x,y,S)繪制線性二維圖,折線圖(y相對(duì)于x,即x為橫軸,樣式為S)
pie(attrs)繪制餅圖
hist(x,y)繪制條形圖,x表示數(shù)據(jù)集,y表示組數(shù)
boxplot()繪制樣本數(shù)據(jù)的箱型圖
plot(yerr=error)繪制誤差條形圖

常用配置代碼:

import matplotlib.pyplot as plt # 顯示中文,不加為方框 plt.rcParams['font.sans-serif'] = ['SimHei'] # 顯示負(fù)號(hào) plt.rcParams['axes.unicode_minus'] = False # 創(chuàng)建圖像區(qū)域,指定比例(可以不指定) plt.figure(figsize=(8, 6))

測(cè)試代碼:

import pandas as pd import matplotlib.pyplot as plt import numpy as np # 顯示中文,不加為方框 plt.rcParams['font.sans-serif'] = ['SimHei'] # 顯示負(fù)號(hào) plt.rcParams['axes.unicode_minus'] = False # 創(chuàng)建圖像區(qū)域,指定比例(可以不指定) plt.figure(figsize=(8, 6))# 繪制線性圖 x = np.linspace(0, 2*np.pi, 50) y = np.sin(x) plt.plot(x, y, 'bp--') plt.show() # 也可以直接用DataFrame或者Series調(diào)用plot方法,指定繪圖類(lèi)型(kind),默認(rèn)index為橫坐標(biāo) plt.figure() data = pd.DataFrame([[1, 2, 3], [2, 3, 4]]) data.plot(kind='line', ) plt.show()# 餅圖 plt.figure() labels = ["A", "B", "C", "D"] sizes = [15, 30, 45, 10] colors = ['yellow', 'green', 'lightskyblue', 'lightcoral'] explode = [0, 0.1, 0, 0] plt.pie(sizes, explode=explode, labels=labels, colors=colors, autopct='%1.1f%%', shadow=True, startangle=90) plt.axis('equal') plt.show()# 條形圖 plt.figure() x = np.random.randn(1000) plt.hist(x, 10) plt.show()# 箱型圖 plt.figure() D = pd.DataFrame([x, x+1]).T D.plot(kind='box') plt.show()# 誤差條形圖 error = np.random.randn(10) y = pd.Series(np.sin(np.arange(10))) y.plot(yerr=error) plt.figure() plt.show()

運(yùn)行結(jié)果:

具體代碼包括實(shí)戰(zhàn)項(xiàng)目可以查看我的github。

超強(qiáng)干貨來(lái)襲 云風(fēng)專(zhuān)訪:近40年碼齡,通宵達(dá)旦的技術(shù)人生

總結(jié)

以上是生活随笔為你收集整理的数据分析与挖掘-python常用数据探索函数的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。