溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

Python Pandas庫的使用方法是什么

發(fā)布時(shí)間:2021-11-23 17:05:14 來源:億速云 閱讀:271 作者:iii 欄目:大數(shù)據(jù)

這篇文章主要講解了“Python Pandas庫的使用方法是什么”,文中的講解內(nèi)容簡(jiǎn)單清晰,易于學(xué)習(xí)與理解,下面請(qǐng)大家跟著小編的思路慢慢深入,一起來研究和學(xué)習(xí)“Python Pandas庫的使用方法是什么”吧!

剛接觸Python的新手、小白,可以復(fù)制下面的鏈接去免費(fèi)觀看Python的基礎(chǔ)入門教學(xué)視頻

https://v.douyu.com/author/y6AZ4jn9jwKW

Python Pandas庫的使用方法是什么

一,可視化概述

在Python中,常見的數(shù)據(jù)可視化庫有3個(gè):

matplotlib:最常用的庫,可以算作可視化的必備技能庫,比較復(fù)雜,api多,學(xué)起來不太容易。

seaborn:是重構(gòu)于matplotlib基礎(chǔ)上,可以滿足可視化需求,更特殊的需求還是需要學(xué)習(xí)matplotlib。

pyecharts:上面的兩個(gè)庫都是靜態(tài)的可視化庫,而pyecharts有很好的網(wǎng)絡(luò)兼容性,可以做到可視化的動(dòng)態(tài)效果。并且種類也比較豐富。這類這個(gè)圖,就非常厲害:畫圖神器pyecharts-旭日?qǐng)D

Pandas:而今天要講的是Pandas的可視化,Pandas主要作為數(shù)據(jù)分析的庫,雖然沒有上述三個(gè)庫那個(gè)強(qiáng)大,但是勝在方便,在數(shù)據(jù)分析的過程中,只要一行代碼就能實(shí)現(xiàn)。也非常漂亮。

二,直接看案例

熊貓中,有11個(gè)比較常見的圖形可視化,還有幾個(gè)比較進(jìn)階的,我們一個(gè)一個(gè)看看怎么畫的

import pandas as pd
import numpy  as np
df= pd.DataFrame(np.random.rand(10, 4), columns=['A','B','C','D'])

01,柱狀圖-初步

df.plot.bar()

Python Pandas庫的使用方法是什么

stack = True,畫堆疊柱狀圖

df.plot.bar(stacked=True)

Python Pandas庫的使用方法是什么

同樣,stacked = True,畫堆疊柱狀圖

df.plot.barh(stacked=True)

Python Pandas庫的使用方法是什么

df.plot.area(stacked=True,alpha = 0.9)

Python Pandas庫的使用方法是什么

05,密度圖-density

df.plot.density()

06,直方圖

換個(gè)數(shù)據(jù)集

df = pd.DataFrame({'A': np.random.randn(1000) + 1,
                   'B': np.random.randn(1000),
                   'C': np.random.randn(1000) - 1},
                  columns=['A', 'B', 'C'])
 df.plot.hist(bins=200)

Python Pandas庫的使用方法是什么

df.plot.hist(stacked=True, bins=20)

df= pd.DataFrame(np.random.rand(1000, 4), columns=['A','B','C','D'])
df.diff().hist(color='k', alpha=0.7, bins=50)

Python Pandas庫的使用方法是什么

07,箱盒圖

df= pd.DataFrame(np.random.rand(100, 4), columns=['A','B','C','D'])
df.plot.box()

Python Pandas庫的使用方法是什么

08,散點(diǎn)圖

df.plot.scatter(x='A',y='B')

09,蜂巢圖

df = pd.DataFrame(np.random.randn(1000, 2), columns=['a', 'b'])
df['b'] = df['b'] + np.arange(1000)
df.plot.hexbin(x='a', y='b', gridsize=25)

Python Pandas庫的使用方法是什么

07,餅圖

series = pd.Series(3 * np.random.rand(4), index=['a', 'b', 'c', 'd'], name='series')
series.plot.pie(figsize=(6, 6))

Python Pandas庫的使用方法是什么

08,矩陣散點(diǎn)圖

                                                                from pandas.plotting import scatter_matrix
df = pd.DataFrame(np.random.randn(1000, 4), columns=['a', 'b', 'c', 'd'])
scatter_matrix(df, alpha=0.2, figsize=(6, 6), diagonal='kde')

09,安德魯斯曲線

data = pd.read_csv('C:/Users/wuzhengxiang/Desktop/iris.csv')
pd.plotting.andrews_curves(data , 'Name')

Python Pandas庫的使用方法是什么

andrews_curves(data, 'Name', colormap='winter')

10,平行坐標(biāo)圖該圖也是使用自己加載的iris數(shù)據(jù)集

from pandas.plotting import parallel_coordinates
parallel_coordinates(data, 'Name', colormap='gist_rainbow')

Python Pandas庫的使用方法是什么

11,滯后圖

from pandas.plotting import lag_plot
df= pd.Series(0.1 * np.random.rand(1000) +
        0.9 * np.sin(np.linspace(-99 * np.pi, 99 * np.pi, num=1000)))
lag_plot(df)

12,最大值函數(shù)圖

直接畫圖,預(yù)設(shè)為折線圖

df= pd.DataFrame(np.random.rand(12, 4), columns=['A','B','C','D'])
df.plot()

Python Pandas庫的使用方法是什么

df.plot(subplots=True,layout=(2, 2), figsize=(15, 8))

df= pd.DataFrame(np.random.rand(1000, 4), columns=['A','B','C','D'])
df.plot()

Python Pandas庫的使用方法是什么

df.plot(subplots=True,layout=(2, 2), figsize=(15, 8))

13,bootstrap_plot

s = pd.Series(np.random.uniform(size=100))
pd.plotting.bootstrap_plot(s)

Python Pandas庫的使用方法是什么

三,參數(shù)詳解

1,官方文檔

https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.DataFrame.plot.html
https://pandas.pydata.org/pandas-docs/version/0.18.1/visualization.html

2,參數(shù)介紹

DataFrame.plot(x=None, y=None, kind='line', ax=None, subplots=False, 
sharex=None, sharey=False, layout=None, figsize=None, use_index=True, 
title=None, grid=None, legend=True, style=None, logx=False, logy=False, 
loglog=False, xticks=None, yticks=None, xlim=None, ylim=None, rot=None, 
fontsize=None, colormap=None, position=0.5, table=False, yerr=None,
xerr=None, stacked=True/False, sort_columns=False, secondary_y=False, 
mark_right=True, **kwds)

注意:每種繪圖類型都有相對(duì)應(yīng)的方法:df.plot(kind = 'line' )與df.plot.line()等價(jià)

x:標(biāo)簽或位置,默認(rèn)為None#指數(shù)據(jù)列的標(biāo)簽或位置參數(shù)

y:標(biāo)簽,位置或標(biāo)簽列表,位置,默認(rèn)值無

種類:str#繪圖類型

'line':線圖(默認(rèn))#折線圖

'bar':垂直條形圖。條形圖。stacked為True時(shí)為堆疊的柱狀圖

'barh':水平條形圖

'hist':histogram#直方圖(數(shù)值頻率分布)

'box':boxplot#箱型圖

'kde':內(nèi)核密度估計(jì)圖#密度圖,主要對(duì)柱狀圖添加內(nèi)核概率密度線

'密度':與'kde'相同

'area':area plot#與x軸所圍的區(qū)域圖(面積圖)。Stacked= True時(shí),每列必須全部為正或負(fù)值,stacked = False時(shí),對(duì)數(shù)據(jù)沒有要求

'pie':pie plot#餅圖。數(shù)值必須為正值,需指定Y軸或者subplots = True

'scatter':散點(diǎn)圖#散點(diǎn)圖。需指定X軸Y軸

'hexbin':hexbin圖#蜂巢圖。需指定X軸Y軸

'hexbin':hexbin圖#蜂巢圖。需指定X軸Y軸

ax:matplotlib軸對(duì)象,默認(rèn)值None#**子圖(axes,也可以理解成坐標(biāo)軸)要在其上進(jìn)行交易的matplotlib子圖對(duì)象。如果沒有設(shè)置,則使用當(dāng)前matplotlib子圖**其中,變量和函數(shù)通過改變figure和axes中的元素(例如:title,label,點(diǎn)和線等等)一起描述figure和axes,也就是在畫布上繪圖。

子圖:布爾值,默認(rèn)為False#是否對(duì)列分別作子圖

sharex:布爾值,默認(rèn)值為true,如果ax為None False#如果ax為None,則設(shè)為為True,否則為False

如果subplots = True,則共享x軸并將一些x軸標(biāo)簽設(shè)置為不可見;如果ax為None則默認(rèn)為True,否則為False。請(qǐng)注意,同時(shí)傳遞ax和sharex = True將更改圖形中所有軸的所有x軸標(biāo)簽!

sharey:布爾值,默認(rèn)為False#如果有子圖,子圖共y軸刻度,標(biāo)簽

如果subplots = True,則共享y軸并將一些y軸標(biāo)簽設(shè)置為不可見

layout:用于子圖的元組(行,列)#子圖的行列布局

figsize:以英寸為單位的元組(寬度,高度)

use_index:布爾值,默認(rèn)為True

title:字符串#圖片的標(biāo)題用字符串

地塊標(biāo)題

grid:布爾值,默認(rèn)值None#圖片是否有網(wǎng)格

legend:False / True /'reverse'#子圖的圖例(交替為True)

樣式:列表或字典#對(duì)每列折線圖設(shè)置線的類型

logx:布爾值,默認(rèn)為False。

類型:布爾值,默認(rèn)為False

loglog:布爾值,默認(rèn)為False#同時(shí)設(shè)置x,y軸刻度是否取對(duì)數(shù)

xticks:sequence#設(shè)置x軸刻度值,序列形式(某些列表)

yticks:sequence#設(shè)置y軸刻度,序列形式(幾種列表)

xlim:float / 2-tuple / list#設(shè)置坐標(biāo)軸的范圍。數(shù)值(變量),列表或元組(區(qū)間范圍)

ylim:浮點(diǎn)數(shù)/ 2元組/列表

rot:int,默認(rèn)值None#設(shè)置軸標(biāo)簽(軸刻度)的顯示旋轉(zhuǎn)度數(shù)

fontsize:int,默認(rèn)值None#設(shè)置軸刻度的字體大小

colormap:str或matplotlib colormap對(duì)象,默認(rèn)值為None。

colorbar:布爾值,可選#柱子顏色

如果為True,則繪制顏色條(僅與“散布”圖和“六邊形”圖有關(guān))

position:float#條形圖的對(duì)齊方式,取值范圍[0,1],即左下端到右上端替換0.5(中間對(duì)齊)

layout:tuple(可選)#布局。layout=(2,3)兩行三列,layout =(2,-1)兩行自適應(yīng)列數(shù)

例如。df.plot(subplots = True,layout =(2,-1),sharex = False)

table:布爾值,Series或DataFrame,默認(rèn)為False#圖下添加表。如果為True,則使用DataFrame中的數(shù)據(jù)圖表,并且數(shù)據(jù)將被旋轉(zhuǎn)放置到matplotlib的布局。。

yer:DataFrame,Series,類數(shù)組,dict和str

有關(guān)詳細(xì)信息,請(qǐng)參見使用誤差線繪圖。

xerr:與yerr相同的類型。

堆疊:布爾值,線形圖和條形圖默認(rèn)為False,面積圖為True。如果為True,則創(chuàng)建堆積圖。#前面有介紹

sort_columns:布爾值,默認(rèn)值為False。

secondary_y:布爾值或序列,默認(rèn)為False#設(shè)置第二個(gè)y軸(右輔助y軸)

是否在次要y軸上繪制如果是 列表/元組,則在次要y軸上繪制哪些列

mark_right:布爾值,默認(rèn)為True

感謝各位的閱讀,以上就是“Python Pandas庫的使用方法是什么”的內(nèi)容了,經(jīng)過本文的學(xué)習(xí)后,相信大家對(duì)Python Pandas庫的使用方法是什么這一問題有了更深刻的體會(huì),具體使用情況還需要大家實(shí)踐驗(yàn)證。這里是億速云,小編將為大家推送更多相關(guān)知識(shí)點(diǎn)的文章,歡迎關(guān)注!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI