資料分析常用庫之Pandas之資料結構

2021-10-04 20:57:00 字數 4186 閱讀 1397

特點:

(1)專門用於資料處理和分析,擁有各種複雜函式;

(2)支援類似於sql資料處理,支援時間序列分析等;

(1)由一組資料和與之相對應的資料索引組成。資料可以是標量,列表和字典,資料索引預設[0, 1, 2…],也可以使用index引數指定。

示例:列表

import pandas as pd

s = pd.series([1

,2,3

])print

(s)###01

1223

dtype: int64

指定索引:

s = pd.series([1

,2,3

], index =

['a'

,'b'

,'c'])

###a 1

b 2

c 3

dtype: int64

標量

s = pd.series(

1, index =

['a'

,'b'

,'c'])

###a 1

b 1

c 1

dtype: int64

字典:鍵值對中的「鍵」是索引

s = pd.series(

)###

a 1

b 2

dtype: int64

如果定義的index在原字典中已經存在,那麼該索引會一直對應原字典的值,如果index對應不到原字典的值,則會返回nan

s = pd.series(

, index =

['b'

,'a'

,'c'])

###b 2.0

a 1.0

c nan

dtype: float64

索引(index)和資料(value)都可以通過ndarray型別,range()函式等建立;

操作類似於ndarray,具有自定義索引和自動索引;

a = pd.series(

)a.index

# index(['a', 'b'], dtype='object')

a.values #返回乙個多維陣列numpy物件

# array([1, 5], dtype=int64)

#自動索引a[0

]#1#自定義索引

a['a'

]# 1

#不能混用

a[['a',1]

]##a 1.0

1 nan

dtype: float64

在對字典操作時,對index保留in操作,而值不可以

'a'

in a

# true

1in a

# false

series型別在運算中會自動對齊不同索引的資料,並且可以隨時修改並即刻生效

a = pd.series([1

,3,5

],index =

['a'

,'b'

,'c'])

b = pd.series([2

,4,5

,6],index =

['c,'

,'d'

,'e'

,'b'])

print

(a+b)

###a nan

b 9.0

c nan

c, nan

d nan

e nan

dtype: float64

(2)方法

import numpy as np

import pandas as pd

series1 = pd.series(

)series1.ndim#1

series1.dtype#dtype('float64')

series1[0:

3]#左閉右開('北京':2.8,'上海':3.01,'廣州':8.99)

series1[

'北京'

:'廣州'

]#左閉右閉

#增加資料

series2 = pd.series(

)#不對原資料series1進行操作

print

(series1,a)

北京 2.80

上海 3.01

廣州 8.99

江蘇 9.59

浙江 5.18

dtype: float64

北京 2.80

上海 3.01

廣州 8.99

江蘇 9.59

浙江 5.18

四川 5.33

dtype: float64

#刪除資料

b = series1.drop(

'北京'

)#不對原資料series1進行操作

print

(series1,b)

北京 2.80

上海 3.01

廣州 8.99

江蘇 9.59

浙江 5.18

dtype: float64

上海 3.01

廣州 8.99

江蘇 9.59

浙江 5.18

dtype: float64

c = series1.drop(

'北京'

,inplace =

true

)#改變原資料series1且無返回值

print

(series1,c)

上海 3.01

廣州 8.99

江蘇 9.59

浙江 5.18

dtype: float64

none

pandas.dataframe(data, index, dtype, columns)
data可以為陣列、列表、字典

index代表行索引

columns代表列名或者列標籤

2.常用屬性

(1)三種建立方法:

import numpy as np

import pandas as pd

list1 =[[

'張三',23

,'男'],

['李四',24

,'女'],

['李四',21

,'女']]

df1 = pd.dataframe(list1,columns=

['姓名'

,'年齡'

,'性別'])

df2 = pd.dataframe(

)array1 = np.array(list1)

df3 = pd.dataframe(array1,columns =

['姓名'

,'年齡'

,'性別'

],index =

['a'

,'b'

,'c'

])

(2)基本方法:

import numpy as np

import pandas as pd

df2 = pd.dataframe(

)df2.values

df2.shape#查詢表各維度值

df2.dtypes#查詢每一列的資料型別

dsf2.columns.tolist(

)#輸出列名

pandas資料分析之常用方法

前言 pandas是python中進行資料處理的乙個非常有用的庫,利用好pandas,可以十分方便的對資料進行處理以及統計分析 直接上 一.pandas資料處理 1.1 pandas中刪除dataframe中行 列 dataframe中刪除滿足條件的行 df df.drop df df.col na...

資料分析之Pandas

from pandas import series,dataframe import pandas as pd import numpy as np states california ohio oregon texas year 2000,2001,2002,2003 value 35000,71...

資料分析之pandas

pandas是基於numpy構建的庫,擁有兩種資料結構 series和dataframe series 就是一維陣列 dataframe 是二維陣列series in 1 from pandas import series,dataframe in 2 import pandas as pd in ...