日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

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

python

python数据分析与机器学习(Numpy,Pandas,Matplotlib)

發(fā)布時(shí)間:2024/7/5 python 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python数据分析与机器学习(Numpy,Pandas,Matplotlib) 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

機(jī)器學(xué)習(xí)怎么學(xué)?

  • 機(jī)器學(xué)習(xí)包含數(shù)學(xué)原理推導(dǎo)和實(shí)際應(yīng)用技巧,所以需要清楚算法的推導(dǎo)過程和如何應(yīng)用。
  • 深度學(xué)習(xí)是機(jī)器學(xué)習(xí)中神經(jīng)網(wǎng)絡(luò)算法的延伸,在計(jì)算機(jī)視覺和自然語言處理中應(yīng)用更厲害一些。
  • 自己從頭開始做筆記。

機(jī)器學(xué)習(xí)怎么動(dòng)手,哪里去找案例?

  • 最好的資源:github ,kaggle
  • 案例積累的作用很大,很少從頭去寫一個(gè)項(xiàng)目。先學(xué)會(huì)模仿,再去創(chuàng)作。

科學(xué)計(jì)算庫Numpy

numpy(Numerical Python extensions)是一個(gè)第三方的Python包,用于科學(xué)計(jì)算。這個(gè)庫的前身是1995年就開始開發(fā)的一個(gè)用于數(shù)組運(yùn)算的庫。經(jīng)過了長時(shí)間的發(fā)展,基本上成了絕大部分Python科學(xué)計(jì)算的基礎(chǔ)包,當(dāng)然也包括所有提供Python接口的深度學(xué)習(xí)框架。
numpy.genfromtxt方法
從文本文件加載數(shù)據(jù),并按指定的方式處理缺少的值

delimiter : 分隔符:用于分隔值的字符串。可以是str, int, or sequence。默認(rèn)情況下,任何連續(xù)的空格作為分隔符。
dtype:結(jié)果數(shù)組的數(shù)據(jù)類型。 如果沒有,則dtypes將由每列的內(nèi)容單獨(dú)確定。

import numpy world_alcohol = numpy.genfromtxt("world_alcohol.txt",delimiter=",",dtype=str) print(type(world_alcohol)) print(world_alcohol) print(help(numpy.genfromtxt)) #當(dāng)想知道numpy.genfromtxt用法時(shí),使用help查詢幫助文檔

輸出結(jié)果:
<class ‘numpy.ndarray’> #所有的numpy都是ndarray結(jié)構(gòu)
[[‘Year’ ‘WHO region’ ‘Country’ ‘Beverage Types’ ‘Display Value’]
[‘1986’ ‘Western Pacific’ ‘Viet Nam’ ‘Wine’ ‘0’]
[‘1986’ ‘Americas’ ‘Uruguay’ ‘Other’ ‘0.5’]
…,
[‘1987’ ‘Africa’ ‘Malawi’ ‘Other’ ‘0.75’]
[‘1989’ ‘Americas’ ‘Bahamas’ ‘Wine’ ‘1.5’]
[‘1985’ ‘Africa’ ‘Malawi’ ‘Spirits’ ‘0.31’]]

numpy.array
創(chuàng)建一個(gè)向量或矩陣(多維數(shù)組)

import numpy as np a = [1, 2, 4, 3] #vector b = np.array(a) # array([1, 2, 4, 3]) type(b) # <type 'numpy.ndarray'>

對(duì)數(shù)組元素的操作1

b.shape # (4,) 返回矩陣的(行數(shù),列數(shù))或向量中的元素個(gè)數(shù) b.argmax() # 2 返回最大值所在的索引 b.max() # 4最大值 b.min() # 1最小值 b.mean() # 2.5平均值

numpy限制了nump.array中的元素必須是相同數(shù)據(jù)結(jié)構(gòu)。使用dtype屬性返回?cái)?shù)組中的數(shù)據(jù)類型

>>> a = [1,2,3,5] >>> b = np.array(a) >>> b.dtype dtype('int64')

對(duì)數(shù)組元素的操作2

c = [[1, 2], [3, 4]] # 二維列表 d = np.array(c) # 二維numpy數(shù)組 d.shape # (2, 2) d[1,1] #4,矩陣方式按照行、列獲取元素 d.size # 4 數(shù)組中的元素個(gè)數(shù) d.max(axis=0) # 找維度0,也就是最后一個(gè)維度上的最大值,array([3, 4]) d.max(axis=1) # 找維度1,也就是倒數(shù)第二個(gè)維度上的最大值,array([2, 4]) d.mean(axis=0) # 找維度0,也就是第一個(gè)維度上的均值,array([ 2., 3.]) d.flatten() # 展開一個(gè)numpy數(shù)組為1維數(shù)組,array([1, 2, 3, 4]) np.ravel(c) # 展開一個(gè)可以解析的結(jié)構(gòu)為1維數(shù)組,array([1, 2, 3, 4])

對(duì)數(shù)組元素的操作3

import numpy as np matrix = np.array([[5,10,15],[20,25,30],[35,40,45]]) print(matrix.sum(axis=1)) #指定維度axis=1,即按行計(jì)算 輸出結(jié)果: [ 30 75 120]

import numpy as np
matrix = np.array([
[5,10,15],
[20,25,30],
[35,40,45]
])
print(matrix.sum(axis=0)) #指定維度axis=0,即按列計(jì)算
輸出結(jié)果:
[60 75 90]


矩陣中也可以使用切片

import numpy as np vector = [1, 2, 4, 3] print(vector[0:3]) #[1, 2, 4] 對(duì)于索引大于等于0,小于3的所有元素matrix = np.array([[5,10,15],[20,25,30],[35,40,45]]) print(matrix[:,1]) #[10 25 40]取出所有行的第一列 print(matrix[:,0:2]) #取出所有行的第一、第二列 #[[ 5 10][20 25][35 40]]

對(duì)數(shù)組的判斷操作,等價(jià)于對(duì)數(shù)組中所有元素的操作

import numpy as np matrix = np.array([[5,10,15],[20,25,30],[35,40,45]]) print(matrix == 25) 輸出結(jié)果: [[False False False][False True False][False False False]]

second_colum_25 = matrix[:,1]== 25
print(second_colum_25)
print(matrix[second_colum_25,:]) #bool類型的值也可以拿出來當(dāng)成索引
輸出結(jié)果:
[False True False]
[[20 25 30]]

對(duì)數(shù)組元素的與操作,或操作

import numpy as np vector = np.array([5,10,15,20]) equal_to_ten_and_five = (vector == 10) & (vector == 5) print (equal_to_ten_and_five) 輸出結(jié)果: [False False False False]

import numpy as np
vector = np.array([5,10,15,20])
equal_to_ten_and_five = (vector == 10) | (vector == 5)
print (equal_to_ten_and_five)
vector[equal_to_ten_and_five] = 50 #bool類型值作為索引時(shí),True有效
print(vector)
輸出結(jié)果:
[ True True False False]
[50 50 15 20]

對(duì)數(shù)組元素類型的轉(zhuǎn)換

import numpy as np vector = np.array(['lucy','ch','dd']) vector = vector.astype(float) #astype對(duì)整個(gè)vector進(jìn)行值類型的轉(zhuǎn)換 print(vector.dtype) print(vector) 輸出結(jié)果: float64 [ 5. 10. 15. 20.]

Numpy常用函數(shù)

reshape方法,變換矩陣維度

import numpy as np print(np.arange(15)) a = np.arange(15).reshape(3,5) #將向量變?yōu)?行5列矩陣 print(a) print(a.shape) #shape方法獲得(行數(shù),烈數(shù))

輸出結(jié)果:
[ 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14]
[[ 0 1 2 3 4]
[ 5 6 7 8 9]
[10 11 12 13 14]]
(3, 5)

初始化矩陣為0或1

>>> import numpy as np >>> np.zeros((3,4)) #將一個(gè)三行四列矩陣初始化為0 輸出結(jié)果: array([[ 0., 0., 0., 0.],[ 0., 0., 0., 0.],[ 0., 0., 0., 0.]])

>>> import numpy as np
>>> np.ones((3,4),dtype=np.int32) #指定類型為int型
輸出結(jié)果:
array([[1, 1, 1, 1],
[1, 1, 1, 1],
[1, 1, 1, 1]], dtype=int32)

構(gòu)造序列

np.arange( 10, 30, 5 ) #起始值10,終止值小于30,間隔為5 輸出結(jié)果: array([10, 15, 20, 25])

np.arange( 0, 2, 0.3 )
輸出結(jié)果:
array([ 0. , 0.3, 0.6, 0.9, 1.2, 1.5, 1.8])

random模塊

np.random.random((2,3)) #random模塊中的random函數(shù),產(chǎn)生一個(gè)兩行三列的隨機(jī)矩陣。(-1,+1)之間的值 輸出結(jié)果: array([[ 0.40130659, 0.45452825, 0.79776512],[ 0.63220592, 0.74591134, 0.64130737]])

linspace模塊,將起始值與終止值之間等分成x份

from numpy import pi np.linspace( 0, 2*pi, 100 ) 輸出結(jié)果: array([ 0. , 0.06346652, 0.12693304, 0.19039955, 0.25386607,0.31733259, 0.38079911, 0.44426563, 0.50773215, 0.57119866,0.63466518, 0.6981317 , 0.76159822, 0.82506474, 0.88853126,0.95199777, 1.01546429, 1.07893081, 1.14239733, 1.20586385,1.26933037, 1.33279688, 1.3962634 , 1.45972992, 1.52319644,1.58666296, 1.65012947, 1.71359599, 1.77706251, 1.84052903,1.90399555, 1.96746207, 2.03092858, 2.0943951 , 2.15786162,2.22132814, 2.28479466, 2.34826118, 2.41172769, 2.47519421,2.53866073, 2.60212725, 2.66559377, 2.72906028, 2.7925268 ,2.85599332, 2.91945984, 2.98292636, 3.04639288, 3.10985939,3.17332591, 3.23679243, 3.30025895, 3.36372547, 3.42719199,3.4906585 , 3.55412502, 3.61759154, 3.68105806, 3.74452458,3.8079911 , 3.87145761, 3.93492413, 3.99839065, 4.06185717,4.12532369, 4.1887902 , 4.25225672, 4.31572324, 4.37918976,4.44265628, 4.5061228 , 4.56958931, 4.63305583, 4.69652235,4.75998887, 4.82345539, 4.88692191, 4.95038842, 5.01385494,5.07732146, 5.14078798, 5.2042545 , 5.26772102, 5.33118753,5.39465405, 5.45812057, 5.52158709, 5.58505361, 5.64852012,5.71198664, 5.77545316, 5.83891968, 5.9023862 , 5.96585272,6.02931923, 6.09278575, 6.15625227, 6.21971879, 6.28318531])

對(duì)矩陣的運(yùn)算以矩陣為單位進(jìn)行操作

import numpy as np a = np.array( [20,30,40,50] ) b = np.arange( 4 ) #[0 1 2 3] c = a-b print(c) #[20 29 38 47] print(b**2) #[0 1 4 9] print(a<35) #[ True True False False]

矩陣乘法

A = np.array( [[1,1],[0,1]] ) B = np.array( [[2,0],[3,4]] ) print A.dot(B) #求矩陣乘法的方法一 print np.dot(A, B) ##求矩陣乘法的方法二 輸出結(jié)果: [[5 4][3 4]] [[5 4][3 4]]

e為底數(shù)的運(yùn)算&開根運(yùn)算

import numpy as np B = np.arange(3) print (np.exp(B)) #[ 1. 2.71828183 7.3890561 ] e的B次方 print (np.sqrt(B)) #[ 0. 1. 1.41421356]

floor向下取整

import numpy as np a = np.floor(10*np.random.random((3,4))) #floor向下取整 print(a) print (a.ravel()) #將矩陣中元素展開成一行 a.shape = (6, 2) #當(dāng)采用a.reshape(6,-1) 第二個(gè)參數(shù)-1表示默認(rèn)根據(jù)行數(shù)確定列數(shù) print (a) print (a.T) #a的轉(zhuǎn)置(矩陣行列互換)

[[ 8. 7. 2. 1.]
[ 5. 2. 5. 1.]
[ 8. 7. 7. 2.]]
[ 8. 7. 2. 1. 5. 2. 5. 1. 8. 7. 7. 2.]
[[ 8. 7.]
[ 2. 1.]
[ 5. 2.]
[ 5. 1.]
[ 8. 7.]
[ 7. 2.]]
[[ 8. 2. 5. 5. 8. 7.]
[ 7. 1. 2. 1. 7. 2.]]

hstack與vstack實(shí)現(xiàn)矩陣的拼接(拼接數(shù)據(jù)常用)

a = np.floor(10*np.random.random((2,2))) b = np.floor(10*np.random.random((2,2))) print(a) print(b) print(np.hstack((a,b))) #橫著拼接 print(np.vstack((a,b))) #豎著拼接 輸出結(jié)果: [[ 8. 6.][ 7. 6.]] [[ 3. 4.][ 8. 1.]] [[ 8. 6. 3. 4.][ 7. 6. 8. 1.]] [[ 8. 6.][ 7. 6.][ 3. 4.][ 8. 1.]]

hsplit與vsplit實(shí)現(xiàn)矩陣的切分

a = np.floor(10*np.random.random((2,12))) print(a) print(np.hsplit(a,3)) #橫著將矩陣切分為3份 print(np.hsplit(a,(3,4))) # 指定橫著切分的位置,第三列和第四列 輸出結(jié)果: [[ 7. 1. 4. 9. 8. 8. 5. 9. 6. 6. 9. 4.][ 1. 9. 1. 2. 9. 9. 5. 0. 5. 4. 9. 6.]] [array([[ 7., 1., 4., 9.],[ 1., 9., 1., 2.]]), array([[ 8., 8., 5., 9.],[ 9., 9., 5., 0.]]), array([[ 6., 6., 9., 4.],[ 5., 4., 9., 6.]])] [array([[ 7., 1., 4.],[ 1., 9., 1.]]), array([[ 9.],[ 2.]]), array([[ 8., 8., 5., 9., 6., 6., 9., 4.],[ 9., 9., 5., 0., 5., 4., 9., 6.]])]

a = np.floor(10*np.random.random((12,2)))
print(a)
np.vsplit(a,3) #豎著將矩陣切分為3份
輸出結(jié)果:
[[ 6. 4.]
[ 0. 1.]
[ 9. 0.]
[ 0. 0.]
[ 0. 4.]
[ 1. 1.]
[ 0. 4.]
[ 1. 6.]
[ 9. 7.]
[ 0. 9.]
[ 6. 1.]
[ 3. 0.]]
[array([[ 6., 4.],
[ 0., 1.],
[ 9., 0.],
[ 0., 0.]]), array([[ 0., 4.],
[ 1., 1.],
[ 0., 4.],
[ 1., 6.]]), array([[ 9., 7.],
[ 0., 9.],
[ 6., 1.],
[ 3., 0.]])]

直接把一個(gè)數(shù)組賦值給另一個(gè)數(shù)組,兩個(gè)數(shù)組指向同一片內(nèi)存區(qū)域,對(duì)其中一個(gè)的操作就會(huì)影響另一個(gè)結(jié)果

a = np.arange(12) b = a #a和b是同一個(gè)數(shù)組對(duì)象的兩個(gè)名字 print (b is a) b.shape = 3,4 print (a.shape) print (id(a)) #id表示指向內(nèi)存區(qū)域,具有相同id,表示a、b指向相同內(nèi)存區(qū)域中的值 print (id(b)) 輸出結(jié)果: True (3, 4) 4382560048 4382560048

view方法創(chuàng)建一個(gè)新數(shù)組,指向的內(nèi)存區(qū)域不同,但元素值共用

import numpy as np a = np.arange(12) c = a.view() print(id(a)) #id值不同 print(id(c)) print(c is a) c.shape = 2,6 print (a.shape) #改變c的shape,a的shape不變 c[0,4] = 1234 #改變c中元素的值 print(a) #a中元素的值也會(huì)發(fā)生改變 輸出結(jié)果: 4382897216 4382897136 False (12,) [ 0 1 2 3 1234 5 6 7 8 9 10 11]

copy方法(深復(fù)制)創(chuàng)建一個(gè)對(duì)數(shù)組和元素值的完整的copy

d = a.copy()

按照矩陣的行列找出最大值,最大值的索引

import numpy as np data = np.sin(np.arange(20)).reshape(5,4) print (data) ind = data.argmax(axis=0) #找出每列最大值的索引 print (ind) data_max = data[ind, range(data.shape[1])] #通過行列索引取值 print (data_max) 輸出結(jié)果: [[ 0. 0.84147098 0.90929743 0.14112001][-0.7568025 -0.95892427 -0.2794155 0.6569866 ][ 0.98935825 0.41211849 -0.54402111 -0.99999021][-0.53657292 0.42016704 0.99060736 0.65028784][-0.28790332 -0.96139749 -0.75098725 0.14987721]] [2 0 3 1] [ 0.98935825 0.84147098 0.99060736 0.6569866 ]

tile方法,對(duì)原矩陣的行列進(jìn)行擴(kuò)展

import numpy as np a = np.arange(0, 40, 10) b = np.tile(a, (2, 3)) #行變成2倍,列變成3倍 print(b) 輸出結(jié)果: [[ 0 10 20 30 0 10 20 30 0 10 20 30][ 0 10 20 30 0 10 20 30 0 10 20 30]]

兩種排序方法
sort方法對(duì)矩陣中的值進(jìn)行排序,argsort方法得到元素從小到大的索引值,根據(jù)索引值的到排序結(jié)果

a = np.array([[4, 3, 5], [1, 2, 1]]) b = np.sort(a, axis=1) #對(duì)a按行由小到大排序,值賦給b print(b) a.sort(axis=1) #直接對(duì)a按行由小到大排序 print(a) a = np.array([4, 3, 1, 2]) j = np.argsort(a) #argsort方法得到元素從小到大的索引值 print (j) print (a[j]) #根據(jù)索引值輸出a 輸出結(jié)果: [[3 4 5][1 1 2]] ------- [[3 4 5][1 1 2]] ------- [2 3 1 0] ------- [1 2 3 4]

數(shù)據(jù)分析處理庫Pandas,基于Numpy

read_csv方法讀取csv文件

import pandas as pd food_info = pd.read_csv("food_info.csv") print(type(food_info)) #pandas代表的DataFrame可以當(dāng)成矩陣結(jié)構(gòu) print(food_info.dtypes) #dtypes在當(dāng)前數(shù)據(jù)中包含的數(shù)據(jù)類型 輸出結(jié)果: <class 'pandas.core.frame.DataFrame'> NDB_No int64 Shrt_Desc object Water_(g) float64 Energ_Kcal int64 ...... Cholestrl_(mg) float64 dtype: object

獲取讀取到的文件的信息

print(food_info.head(3)) #head()方法如果沒有參數(shù),默認(rèn)獲取前5行 print(food_info.tail()) #tail()方法獲取最后5行 print(food_info.columns) #columns獲取所有的列名 print(food_info.shape) #獲取當(dāng)前數(shù)據(jù)維度(8618, 36)

取出指定某行的數(shù)據(jù)

print(food_info.loc[0]) #取出第零行的數(shù)據(jù) food_info.loc[8620] # 當(dāng)index值超過最大值,throw an error: "KeyError: 'the label [8620] is not in the [index]'" food_info.loc[3:6] #取出第三到第六行數(shù)據(jù),3、4、5、6 two_five_ten = [2,5,10] food_info.loc[two_five_ten] #取出第2、5、10行數(shù)據(jù)

取出指定某列的數(shù)據(jù)

ndb_col = food_info["NDB_No"] #取出第一列NDB_No中的數(shù)據(jù) print (ndb_col)

columns = [“Zinc_(mg)”, “Copper_(mg)”] #要取出多列,就寫入所要取出列的列名
zinc_copper = food_info[columns]
print(zinc_copper)

取出以(g)為結(jié)尾的列名

col_names = food_info.columns.tolist() #tolist()方法將列名放在一個(gè)list里 gram_columns = [] for c in col_names:if c.endswith("(g)"): gram_columns.append(c) gram_df = food_info[gram_columns] print(gram_df.head(3)) 輸出結(jié)果:Water_(g) Protein_(g) Lipid_Tot_(g) Ash_(g) Carbohydrt_(g) \ 0 15.87 0.85 81.11 2.11 0.06 1 15.87 0.85 81.11 2.11 0.06 2 0.24 0.28 99.48 0.00 0.00 3 42.41 21.40 28.74 5.11 2.34 4 41.11 23.24 29.68 3.18 2.79

Fiber_TD_(g) Sugar_Tot_(g) FA_Sat_(g) FA_Mono_(g) FA_Poly_(g)
0 0.0 0.06 51.368 21.021 3.043
1 0.0 0.06 50.489 23.426 3.012
2 0.0 0.00 61.924 28.732 3.694
3 0.0 0.50 18.669 7.778 0.800
4 0.0 0.51 18.764 8.598 0.784

對(duì)某列中的數(shù)據(jù)進(jìn)行四則運(yùn)算

import pandas food_info = pandas.read_csv("food_info.csv") iron_grams = food_info["Iron_(mg)"] / 1000 #對(duì)列中的數(shù)據(jù)除以1000 food_info["Iron_(g)"] = iron_grams #新增一列Iron_(g) 保存結(jié)果

water_energy = food_info[“Water_(g)”] * food_info[“Energ_Kcal”] #將兩列數(shù)字相乘

求某列中的最大值、最小值、均值

max_calories = food_info["Energ_Kcal"].max() print(max_calories) min_calories = food_info["Energ_Kcal"].min() print(min_calories) mean_calories = food_info["Energ_Kcal"].mean() print(mean_calories) 輸出結(jié)果: 902 0 226.438616848

使用sort_values()方法對(duì)某列數(shù)據(jù)進(jìn)行排序

food_info.sort_values("Sodium_(mg)", inplace=True)#默認(rèn)從小到大排序,inplace=True表示返回一個(gè)新的數(shù)據(jù)結(jié)構(gòu),而不在原來基礎(chǔ)上做改變 print(food_info["Sodium_(mg)"])

food_info.sort_values(“Sodium_(mg)”, inplace=True, ascending=False)
#ascending=False表示從大到小排序,
print(food_info[“Sodium_(mg)”])

針對(duì)titanic_train.csv 的練習(xí)(含pivot_table()透視表方法)

import pandas as pd import numpy as np titanic_survival = pd.read_csv("titanic_train.csv") titanic_survival.head()

age = titanic_survival[“Age”]
print(age.loc[0:20]) #打印某一列的0到20行
age_is_null = pd.isnull(age) #isnull()方法用于檢測是否為缺失值,缺失為True 不缺失為False
print(age_is_null)
age_null_true = age[age_is_null] #得到該列所有缺失的行
print(age_null_true)
age_null_count = len(age_null_true)
print(age_null_count) #缺失的行數(shù)

#存在缺失值的情況下無法計(jì)算均值
mean_age = sum(titanic_survival[“Age”]) / len(titanic_survival[“Age”]) #sum()方法對(duì)列中元素求和
print(mean_age) #nan

#在計(jì)算均值前要把缺失值剔除
good_ages = titanic_survival[“Age”][age_is_null == False] #不缺失的取出來
correct_mean_age = sum(good_ages) / len(good_ages)
print(correct_mean_age) #29.6991176471

#當(dāng)然也可以不這么麻煩,缺失值很普遍,pandas提供了mean()方法用于自動(dòng)剔除缺失值并求均值
correct_mean_age = titanic_survival[“Age”].mean()
print(correct_mean_age) #29.6991176471

#求每個(gè)倉位等級(jí),船票的平均價(jià)格
passenger_classes = [1, 2, 3]
fares_by_class = {}
for this_class in passenger_classes:
pclass_rows = titanic_survival[titanic_survival[“Pclass”] == this_class]
pclass_fares = pclass_rows[“Fare”] #定為到同一等級(jí)艙,船票價(jià)格的那一列
fare_for_class = pclass_fares.mean()
fares_by_class[this_class] = fare_for_class
print(fares_by_class)
運(yùn)算結(jié)果:
{1: 84.154687499999994, 2: 20.662183152173913, 3: 13.675550101832993}

#pandas為我們提供了更方便的統(tǒng)計(jì)工具,pivot_table()透視表方法
#index 告訴pivot_table方法是根據(jù)哪一列分組
#values 指定對(duì)哪一列進(jìn)行計(jì)算
#aggfunc 指定使用什么計(jì)算方法
passenger_survival = titanic_survival.pivot_table(index=“Pclass”, values=“Survived”, aggfunc=np.mean)
print(passenger_survival)
運(yùn)算結(jié)果:
Pclass Survived
1 0.629630
2 0.472826
3 0.242363

#計(jì)算不同等級(jí)艙乘客的平均年齡
passenger_age = titanic_survival.pivot_table(index=“Pclass”, values=“Age”) #默認(rèn)采用aggfunc=np.mean計(jì)算方法
print(passenger_age)
運(yùn)算結(jié)果:
Pclass Age
1 38.233441
2 29.877630
3 25.140620

#index 根據(jù)一列分組
##values 指定對(duì)多列進(jìn)行計(jì)算
port_stats = titanic_survival.pivot_table(index=“Embarked”, values=[“Fare”,“Survived”], aggfunc=np.sum)
print(port_stats)
運(yùn)算結(jié)果:
Embarked Fare Survived
C 10072.2962 93
Q 1022.2543 30
S 17439.3988 217

#丟棄有缺失值的數(shù)據(jù)行
new_titanic_survival = titanic_survival.dropna(axis=0,subset=[“Age”, “Cabin”]) #subset指定了Age和Cabin中任何一個(gè)有缺失的,這行數(shù)據(jù)就丟棄
print(new_titanic_survival)

#按照行列定位元素,取出值
row_index_83_age = titanic_survival.loc[103,“Age”]
row_index_1000_pclass = titanic_survival.loc[766,“Pclass”]
print(row_index_83_age)
print(row_index_1000_pclass)

#sort_values()排序,reset_index()重新設(shè)置行號(hào)
new_titanic_survival = titanic_survival.sort_values(“Age”,ascending=False) #ascending=False從大到小
print(new_titanic_survival[0:10]) #但序號(hào)是原來的序號(hào)
itanic_reindexed = new_titanic_survival.reset_index(drop=True) #reset_index(drop=True)更新行號(hào)
print(itanic_reindexed.iloc[0:10]) #iloc通過行號(hào)獲取行數(shù)據(jù)

#通過定義一個(gè)函數(shù),把操作封裝起來,然后apply函數(shù)
def hundredth_row(column): #這個(gè)函數(shù)返回第100行的每一列數(shù)據(jù)
# Extract the hundredth item
hundredth_item = column.iloc[99]
return hundredth_item
hundredth_row = titanic_survival.apply(hundredth_row) #apply()應(yīng)用函數(shù)
print(hundredth_row)
返回結(jié)果:
PassengerId 100
Survived 0
Pclass 2
Name Kantor, Mr. Sinai
Sex male
Age 34
SibSp 1
Parch 0
Ticket 244367
Fare 26
Cabin NaN
Embarked S
dtype: object

##統(tǒng)計(jì)所有的缺失值
def not_null_count(column):
column_null = pd.isnull(column)
null = column[column_null]
return len(null)
column_null_count = titanic_survival.apply(not_null_count)
print(column_null_count)
輸出結(jié)果:
PassengerId 0
Survived 0
Pclass 0
Name 0
Sex 0
Age 177
SibSp 0
Parch 0
Ticket 0
Fare 0
Cabin 687
Embarked 2
dtype: int64

#對(duì)船艙等級(jí)進(jìn)行轉(zhuǎn)換
def which_class(row):
pclass = row[‘Pclass’]
if pd.isnull(pclass):
return “Unknown”
elif pclass == 1:
return “First Class”
elif pclass == 2:
return “Second Class”
elif pclass == 3:
return “Third Class”
classes = titanic_survival.apply(which_class, axis=1) #通過axis = 1參數(shù),使用DataFrame.apply()方法來迭代行而不是列。
print(classes)

#使用兩個(gè)自定義函數(shù),統(tǒng)計(jì)不同年齡標(biāo)簽對(duì)應(yīng)的存活率
def generate_age_label(row):
age = row[“Age”]
if pd.isnull(age):
return “unknown”
elif age < 18:
return “minor”
else:
return “adult”

age_labels = titanic_survival.apply(generate_age_label, axis=1)

titanic_survival[‘a(chǎn)ge_labels’] = age_labels
age_group_survival = titanic_survival.pivot_table(index=“age_labels”, values=“Survived” ,aggfunc=np.mean)
print(age_group_survival)
運(yùn)算結(jié)果:

age_labels Survived
adult 0.381032
minor 0.539823
unknown 0.293785

Series結(jié)構(gòu)

Series (collection of values) DataFrame中的一行或者一列就是Series結(jié)構(gòu)
DataFrame (collection of Series objects)是讀取文件read_csv()方法獲得的矩陣
Panel (collection of DataFrame objects)

import pandas as pd fandango = pd.read_csv('fandango_score_comparison.csv') #讀取電影信息,DataFrame結(jié)構(gòu) series_film = fandango['FILM'] #定位到“FILM”這一列 print(type(series_film)) #<class 'pandas.core.series.Series'>結(jié)構(gòu) print(series_film[0:5]) #通過索引切片 series_rt = fandango['RottenTomatoes'] print (series_rt[0:5])

from pandas import Series # Import the Series object from pandas
film_names = series_film.values #把Series結(jié)構(gòu)中的每一個(gè)值拿出來
print(type(film_names)) #<class ‘numpy.ndarray’>說明series結(jié)構(gòu)中每一個(gè)值的結(jié)構(gòu)是ndarray
rt_scores = series_rt.values
series_custom = Series(rt_scores , index=film_names) #設(shè)置以film_names為索引的film結(jié)構(gòu),創(chuàng)建一個(gè)Series
series_custom[[‘Minions (2015)’, ‘Leviathan (2014)’]] #確實(shí)可以使用名字索引
fiveten = series_custom[5:10] #也可以使用數(shù)字索引
print(fiveten)

Series中的排序

original_index = series_custom.index.tolist() #將index值放入一個(gè)list結(jié)構(gòu)中 sorted_index = sorted(original_index) sorted_by_index = series_custom.reindex(sorted_index) #reset index操作 print(sorted_by_index)

sc2 = series_custom.sort_index() #根據(jù)index值進(jìn)行排序
sc3 = series_custom.sort_values() #根據(jù)value值進(jìn)行排序
print(sc3)

在Series中的每一個(gè)值的類型是ndarray,即NumPy中核心數(shù)據(jù)類型

import numpy as np print(np.add(series_custom, series_custom)) #將兩列值相加 np.sin(series_custom) #對(duì)每個(gè)值使用sin函數(shù) np.max(series_custom) #獲取某一列的最大值

取出series_custom列中數(shù)值在50到70之間的數(shù)值
對(duì)某一列中的所有值進(jìn)行比較運(yùn)算,返回boolean值

criteria_one = series_custom > 50 criteria_two = series_custom < 75 both_criteria = series_custom[criteria_one & criteria_two] #返回boolean值的Series對(duì)象 print(both_criteria)

對(duì)index相同的兩列運(yùn)算

#data alignment same index rt_critics = Series(fandango['RottenTomatoes'].values, index=fandango['FILM']) rt_users = Series(fandango['RottenTomatoes_User'].values, index=fandango['FILM']) rt_mean = (rt_critics + rt_users)/2 print(rt_mean)

對(duì)DataFrame結(jié)構(gòu)進(jìn)行操作
設(shè)置‘FILM’為索引

fandango = pd.read_csv('fandango_score_comparison.csv') print(type(fandango)) #<class 'pandas.core.frame.DataFrame'> fandango_films = fandango.set_index('FILM', drop=False) #以‘FILM’為索引返回一個(gè)新的DataFrame ,drop=False不丟棄原來的FILM列

對(duì)DataFrame切片

#可以使用[]或者loc[]來切片 fandango_films["Avengers: Age of Ultron (2015)":"Hot Tub Time Machine 2 (2015)"] #用string值做的索引也可以切片 fandango_films.loc["Avengers: Age of Ultron (2015)":"Hot Tub Time Machine 2 (2015)"] fandango_films[0:3] #數(shù)值索引依然存在,可以用來切片 #選擇特定的列 #movies = ['Kumiko, The Treasure Hunter (2015)', 'Do You Believe? (2015)', 'Ant-Man (2015)']

可視化庫matplotlib

Matplotlib是Python中最常用的可視化工具之一,可以非常方便地創(chuàng)建海量類型地2D圖表和一些基本的3D圖表。

2D圖表之折線圖

Matplotlib中最基礎(chǔ)的模塊是pyplot,先從最簡單的點(diǎn)圖和線圖開始。
更多屬性可以參考官網(wǎng):http://matplotlib.org/api/pyplot_api.html

import pandas as pd import matplotlib as mpl import matplotlib.pyplot as plt

unrate = pd.read_csv(‘unrate.csv’)
unrate[‘DATE’] = pd.to_datetime(unrate[‘DATE’]) #pd.to_datetime方法標(biāo)準(zhǔn)化日期格式

first_twelve = unrate[0:12] #取0到12行數(shù)據(jù)
plt.plot(first_twelve[‘DATE’], first_twelve[‘VALUE’]) #plot(x軸,y軸)方法畫圖
plt.xticks(rotation=45) #設(shè)置x軸上橫坐標(biāo)旋轉(zhuǎn)角度
plt.xlabel(‘Month’) #x軸含義
plt.ylabel(‘Unemployment Rate’) #y軸含義
plt.title(‘Monthly Unemployment Trends, 1948’) #圖標(biāo)題
plt.show() #show方法顯示圖

子圖操作

添加子圖:add_subplot(first,second,index)
first 表示行數(shù),second 列數(shù).

import matplotlib.pyplot as plt fig = plt.figure() #Creates a new figure. ax1 = fig.add_subplot(3,2,1) #一個(gè)3*2子圖中的第一個(gè)模塊 ax2 = fig.add_subplot(3,2,2) #一個(gè)3*2子圖中的第二個(gè)模塊 ax2 = fig.add_subplot(3,2,6) #一個(gè)3*2子圖中的第六個(gè)模塊 plt.show() import numpy as np #fig = plt.figure() fig = plt.figure(figsize=(3, 6)) #指定畫圖區(qū)大小(長,寬) ax1 = fig.add_subplot(2,1,1) ax2 = fig.add_subplot(2,1,2)

ax1.plot(np.random.randint(1,5,5), np.arange(5)) #第一個(gè)子圖畫圖
ax2.plot(np.arange(10)*3, np.arange(10)) #第二個(gè)子圖畫圖
plt.show()


在同一個(gè)圖中畫兩條折線(plot兩次)

fig = plt.figure(figsize=(6,3)) plt.plot(unrate[0:12]['MONTH'], unrate[0:12]['VALUE'], c='red') plt.plot(unrate[12:24]['MONTH'], unrate[12:24]['VALUE'], c='blue') plt.show()

為所畫曲線作標(biāo)記

fig = plt.figure(figsize=(10,6)) colors = ['red', 'blue', 'green', 'orange', 'black'] for i in range(5):start_index = I*12end_index = (i+1)*12subset = unrate[start_index:end_index]label = str(1948 + i) #label值plt.plot(subset['MONTH'], subset['VALUE'], c=colors[i], label=label) #x軸指標(biāo),y軸指標(biāo),顏色,label值 plt.legend(loc='upper left') #loc指定legend方框的位置,loc = 'best'/'upper right'/'lower left'等,print(help(plt.legend))查看用法 plt.xlabel('Month, Integer') plt.ylabel('Unemployment Rate, Percent') plt.title('Monthly Unemployment Trends, 1948-1952')plt.show()

2D圖標(biāo)之條形圖與散點(diǎn)圖

bar條形圖

import pandas as pd reviews = pd.read_csv('fandango_scores.csv') #讀取電影評(píng)分表 cols = ['FILM', 'RT_user_norm', 'Metacritic_user_nom', 'IMDB_norm', 'Fandango_Ratingvalue', 'Fandango_Stars'] norm_reviews = reviews[cols] num_cols = ['RT_user_norm', 'Metacritic_user_nom', 'IMDB_norm', 'Fandango_Ratingvalue', 'Fandango_Stars'] bar_heights = norm_reviews.ix[0, num_cols].values #柱高度 bar_positions = arange(5) + 0.75 #設(shè)定每一個(gè)柱到左邊的距離 tick_positions = range(1,6) #設(shè)置x軸刻度標(biāo)簽為[1,2,3,4,5] fig, ax = plt.subplots()

ax.bar(bar_positions, bar_heights, 0.5) #bar型圖。柱到左邊距離,柱高度,柱寬度
ax.set_xticks(tick_positions) #x軸刻度標(biāo)簽
ax.set_xticklabels(num_cols, rotation=45)

ax.set_xlabel(‘Rating Source’)
ax.set_ylabel(‘Average Rating’)
ax.set_title(‘Average User Rating For Avengers: Age of Ultron (2015)’)
plt.show()


散點(diǎn)圖

fig, ax = plt.subplots() #fig控制圖的整體情況,如大小,用ax實(shí)際來畫圖 ax.scatter(norm_reviews['Fandango_Ratingvalue'], norm_reviews['RT_user_norm']) #scatter方法,畫散點(diǎn)圖的x軸,y軸 ax.set_xlabel('Fandango') ax.set_ylabel('Rotten Tomatoes') plt.show()

散點(diǎn)圖子圖

fig = plt.figure(figsize=(8,3)) ax1 = fig.add_subplot(1,2,1) ax2 = fig.add_subplot(1,2,2) ax1.scatter(norm_reviews['Fandango_Ratingvalue'], norm_reviews['RT_user_norm']) ax1.set_xlabel('Fandango') ax1.set_ylabel('Rotten Tomatoes') ax2.scatter(norm_reviews['RT_user_norm'], norm_reviews['Fandango_Ratingvalue']) ax2.set_xlabel('Rotten Tomatoes') ax2.set_ylabel('Fandango') plt.show() 屏幕快照 2017-11-05 上午11.42.10.png </div></div>

總結(jié)

以上是生活随笔為你收集整理的python数据分析与机器学习(Numpy,Pandas,Matplotlib)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

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

91av蜜桃 | 日韩电影久久久 | 中文字幕高清 | 亚洲视频在线免费看 | 乱男乱女www7788| 五月激情婷婷丁香 | 精品国产乱子伦一区二区 | 国产91精品高清一区二区三区 | 欧美在线久久 | 日韩视频一区二区三区在线播放免费观看 | 9在线观看免费高清完整版 玖玖爱免费视频 | 欧美激情视频一区二区三区免费 | 91资源在线 | 国产黄色在线观看 | 久草新在线 | 视频国产区 | 人人干人人添 | 午夜精品福利影院 | 久久久久久免费视频 | 久久中文字幕在线视频 | 国产精品白虎 | 国产日韩欧美在线免费观看 | 欧美国产精品久久久久久免费 | 久久人人爽人人人人片 | 亚洲精品网站 | 色婷五月| 一区av在线播放 | 狠狠狠色丁香婷婷综合久久五月 | 狠狠躁夜夜躁人人爽超碰97香蕉 | 精品国产三级 | 成人免费在线电影 | 国产一级片不卡 | 中文字幕在线观看资源 | 一级片免费观看视频 | 九色视频网站 | 亚洲国产中文字幕在线 | 午夜精品一区二区三区在线播放 | 国产在线国偷精品产拍 | 日韩在线免费电影 | 在线观看日韩免费视频 | 久久免费视频5 | 国产精品国内免费一区二区三区 | 超碰国产在线 | 色视频网站在线观看一=区 a视频免费在线观看 | 婷婷色网视频在线播放 | 色视频国产直接看 | 人人要人人澡人人爽人人dvd | 免费看片亚洲 | 国产精品大片免费观看 | 日韩成片 | 国产成人a亚洲精品 | 精品99久久久久久 | 日韩欧美高清在线观看 | 精品国产成人在线影院 | 精产嫩模国品一二三区 | 国产精品1区2区3区在线观看 | 日韩一级片大全 | 国产精品成人一区二区 | 美女网站黄免费 | 久久国产精品视频免费看 | 亚洲午夜久久久久久久久久久 | 欧美日韩激情视频8区 | 久草精品资源 | 久久久天堂 | 免费日韩一区二区三区 | 四虎国产永久在线精品 | 午夜精品一区二区三区在线播放 | 久久久精品 一区二区三区 国产99视频在线观看 | 丝袜护士aⅴ在线白丝护士 天天综合精品 | 精品99免费 | 中文字幕av在线 | 欧美中文字幕久久 | 免费av观看网站 | 亚洲激情视频在线观看 | 超碰国产97 | 久草国产在线观看 | 国产在线看 | 五月开心综合 | 免费能看的av | 中文字幕av电影下载 | 少妇性xxx | 精品欧美一区二区精品久久 | 五月激情丁香 | 日日操夜夜操狠狠操 | 欧美性色xo影院 | 亚洲男男gⅴgay双龙 | 在线亚洲小视频 | 色www精品视频在线观看 | 免费人成网 | 免费午夜av | 一区二区三区免费在线播放 | 国产精品午夜8888 | 久久国产福利 | 久久久久久毛片精品免费不卡 | 国产成人无码AⅤ片在线观 日韩av不卡在线 | 日本久久久久久久久久久 | 国产精品免费人成网站 | 久久精品一区二区三区中文字幕 | 激情av资源网 | 亚洲高清激情 | 中文字幕你懂的 | 国产精品一区二区免费在线观看 | 亚洲激情一区二区三区 | 精品久久久久国产免费第一页 | 狠狠操狠狠干天天操 | 四虎影视成人永久免费观看视频 | 999久久久久久久久久久 | 日韩精品一区在线播放 | 免费成人黄色 | 激情综合五月婷婷 | 国产美女精品在线 | 国产精品青青 | 97久久久免费福利网址 | 91精品爽啪蜜夜国产在线播放 | 999在线观看视频 | 国产精品成人一区二区三区 | 久久毛片高清国产 | 亚洲做受高潮欧美裸体 | 久久久久久久久免费视频 | 粉嫩av一区二区三区四区五区 | 精品二区久久 | 一区二区三区 中文字幕 | 丝袜美女视频网站 | 亚洲成人蜜桃 | 天天干天天操天天操 | 亚洲成人av片在线观看 | 久久久免费毛片 | 中文字幕精品三级久久久 | 狠狠天天| 操操操av| 日本黄色大片免费看 | 国产精品国产亚洲精品看不卡15 | 国产黄视频在线观看 | 深夜国产福利 | 国产99久久久国产 | 国产国产人免费人成免费视频 | 成人av在线看 | av在线免费不卡 | 亚洲国产伊人 | 又黄又爽又色无遮挡免费 | 日女人免费视频 | 一区二区精品在线视频 | 久草在线电影网 | 99国产一区 | 国产福利网站 | 九九免费观看视频 | 蜜臀av麻豆 | 日韩午夜大片 | 中文电影网 | 免费毛片一区二区三区久久久 | 精品一二三区 | 热久在线 | 水蜜桃亚洲一二三四在线 | 久久一区二区三区四区 | 久久婷婷一区 | 黄色片免费电影 | 麻豆免费视频观看 | 六月婷婷久香在线视频 | 午夜精品一区二区三区可下载 | 国产一二三在线视频 | 91精品国产成 | 色综合久久中文字幕综合网 | 亚洲精品456在线播放 | 欧美日韩国产伦理 | 久久久免费精品国产一区二区 | 国产精品短视频 | 成人网看片 | 亚洲国产美女精品久久久久∴ | 色久五月 | 国产一区高清在线观看 | 免费观看久久 | 国产一区高清在线 | 欧美视频网址 | 久久精品亚洲一区二区三区观看模式 | 在线欧美小视频 | 免费黄色av | 91一区在线观看 | 精品久久影院 | 丝袜精品视频 | 久久午夜视频 | 美女精品网站 | 国产麻豆果冻传媒在线观看 | 亚洲天堂网站 | 欧美大片在线观看一区 | 国产亚洲午夜高清国产拍精品 | av 在线观看| av成人免费在线 | 激情在线网站 | 日韩中文字幕一区 | 色噜噜日韩精品欧美一区二区 | www日韩在线| 欧美精品在线观看 | 国产99久久久国产精品免费看 | 久久久久久久久精 | 五月天色丁香 | 国产精品免费一区二区三区在线观看 | 天天操天天射天天爽 | 中文欧美字幕免费 | 久久久久 | 日本中文字幕在线观看 | 成人 亚洲 欧美 | av电影免费看| 免费看的黄色小视频 | 免费在线观看成人 | 国产精品麻豆99久久久久久 | 欧美日韩国产在线观看 | 国产资源中文字幕 | 美女网站视频久久 | 色多多污污 | 国产精品18久久久久久久久久久久 | 有没有在线观看av | 久久伊人八月婷婷综合激情 | 成人免费视频网 | www.xxx.性狂虐 | 免费中文字幕在线观看 | 在线观看视频免费播放 | 久久精品视频网 | 免费a视频在线 | 久99热| 国产精品视频地址 | 成人三级视频 | 人人狠狠综合久久亚洲 | 麻豆国产露脸在线观看 | 国产精品国产三级国产aⅴ无密码 | 亚洲精品电影在线 | 欧美一区二区视频97 | 日韩精品一区二区三区电影 | 在线观看久草 | 6699私人影院 | 亚洲精品色婷婷 | 国产福利91精品 | 久久艹国产视频 | 成人av地址 | 91传媒91久久久 | 日韩午夜三级 | 婷婷五月在线视频 | 久久国产精品二国产精品中国洋人 | 黄色一级大片在线免费看国产一 | 98超碰在线观看 | 久久国产一区二区 | 日韩免费播放 | 日韩精选在线 | 中文字幕国产精品 | 国产小视频网站 | 久久香蕉国产精品麻豆粉嫩av | 超黄视频网站 | 日韩在线观看高清 | 国产高清专区 | 日韩二区精品 | 国产在线观看国语版免费 | 视频国产一区二区三区 | 久久黄色小说 | 一区二区三区四区久久 | av福利超碰网站 | 麻豆免费精品视频 | 亚洲 欧洲av | 在线播放亚洲激情 | 日韩中文久久 | 午夜久操 | 免费福利在线 | 国产很黄很色的视频 | 在线中文视频 | 精品麻豆入口免费 | 国产精品一区二区av | 激情视频在线观看网址 | 中文字幕在线观看免费高清完整版 | 欧美一区二区日韩一区二区 | 久久精品99国产精品酒店日本 | 亚洲视频电影在线 | 国产精品美女久久久久久 | 精品黄色在线观看 | 91成年视频 | 精品视频国产 | 日韩a在线看| 丁香六月婷婷开心 | av电影在线观看完整版一区二区 | 亚州国产精品久久久 | 国产精品大片在线观看 | 国产91免费在线观看 | 日韩免费福利 | www.在线看片.com | 国产无限资源在线观看 | 人人澡人人添人人爽一区二区 | a v在线观看 | 亚洲视频在线视频 | 国产精品美女999 | 日本久久综合网 | 天天拍天天干 | 国产福利精品视频 | 五月婷婷欧美视频 | av天天澡天天爽天天av | 国产69精品久久久久99尤 | 日韩在线一级 | 久久久国产视频 | 欧美激情视频久久 | 人成在线免费视频 | 久久婷婷精品 | 亚洲欧美激情插 | 国产一级黄| 西西4444www大胆艺术 | 亚洲国产精品一区二区尤物区 | 91精品久久久久久久久久久久久 | 国产精品毛片久久久久久久 | 国产黑丝袜在线 | 江苏妇搡bbbb搡bbbb | 黄色精品久久 | 四虎永久免费 | 干 操 插 | 91视频xxxx| 国产在线观看午夜 | 精品视频999| 99在线播放 | 久久这里只有精品视频首页 | 久草在线免费电影 | 国产成人无码AⅤ片在线观 日韩av不卡在线 | 99久久爱| 成人欧美一区二区三区在线观看 | 字幕网资源站中文字幕 | 国产一级视屏 | 狠狠色丁香九九婷婷综合五月 | 成人午夜黄色 | 亚洲成免费| 亚洲国产中文在线 | 免费十分钟 | 久久久资源网 | avwww在线观看 | 欧美成年黄网站色视频 | 九九热久久久 | 韩国av在线播放 | 丁香九月婷婷 | 最新高清无码专区 | 天天伊人狠狠 | 国产精品成人免费精品自在线观看 | 国产看片网站 | 久久免费的视频 | 国产91成人在在线播放 | 亚洲一级片免费观看 | 国产一级大片在线观看 | 欧美在线观看禁18 | 亚洲国产中文字幕在线观看 | 精品一二| 99理论片| 天天综合导航 | 日韩美女久久 | www欧美xxxx| 亚洲永久精品在线观看 | 一级免费观看 | 精品国产福利在线 | 黄色网免费 | 天天操夜夜想 | 欧美性免费 | 欧美天天综合 | 中中文字幕av在线 | 国产日韩亚洲 | 超碰在线人 | 免费视频a | 超碰免费av| 国产精品6999成人免费视频 | 国产一级特黄毛片在线毛片 | 日韩在线观看你懂得 | 最新99热| 国产青青青 | 国产精品免费观看国产网曝瓜 | 午夜久久久精品 | 五月开心激情网 | 91av电影在线观看 | 久久99久久99精品免视看婷婷 | 日韩理论片在线观看 | 丁香久久激情 | 91女人18片女毛片60分钟 | 成人精品福利 | 亚洲国产精品资源 | 久久99最新地址 | 色5月婷婷| 中文字幕在线观看第二页 | 久久国产网| 天天插天天狠 | 伊人网综合在线观看 | 色综合欧洲 | 精品播放 | 日韩精品欧美专区 | 成人影片在线播放 | 亚洲成人午夜av | 综合婷婷| 国产亚洲精品成人av久久ww | 97视频入口免费观看 | 日韩羞羞 | 久久无码精品一区二区三区 | 国产91学生粉嫩喷水 | 日韩av手机在线观看 | 99精品一区 | 久久图 | 欧美极品裸体 | 亚洲视频 视频在线 | 99久久99久久免费精品蜜臀 | 国产一级91 | 在线观看久久 | 欧美日韩另类在线 | 久久9999久久 | 最新av免费在线 | www最近高清中文国语在线观看 | 免费在线观看av电影 | 99热最新精品 | 五月婷婷毛片 | 免费网站看v片在线a | 久久男人视频 | 亚洲电影免费 | 黄色av一级片| 成年人天堂com | 免费久久99精品国产婷婷六月 | 97超碰影视 | 精品国产伦一区二区三区观看说明 | 国产成人61精品免费看片 | 久久精品日产第一区二区三区乱码 | 成人av网站在线 | 天天操狠狠操网站 | 五月婷婷欧美视频 | 国产 在线观看 | 字幕网在线观看 | 亚洲最大成人免费网站 | 亚州国产精品久久久 | 日本精品中文字幕在线观看 | 91视频黄色 | 99久久久久久久久 | 美女久久久久久久久久久 | 国产99久久久国产精品免费二区 | 日韩在线不卡 | av资源免费看 | 色人久久| 99久久国产免费,99久久国产免费大片 | 黄色免费视频在线观看 | 99这里只有精品视频 | 日韩免费一级a毛片在线播放一级 | 日韩试看 | 五月婷婷激情 | 亚洲综合在线五月 | 伊人午夜视频 | 欧美一区日韩一区 | 黄色国产区 | 天天插天天狠天天透 | 免费国产在线精品 | 日韩欧美一区二区在线 | 久久久久久欧美二区电影网 | 亚洲精品资源在线观看 | 中文字幕久久精品亚洲乱码 | 久久99精品久久久久久久久久久久 | 国产盗摄精品一区二区 | 国产999视频在线观看 | 一区二区欧美在线观看 | 国产一区久久 | 国产视频黄| 国产一区二区在线播放 | 国产黄色网 | 天天干天天操天天入 | 五月天色婷婷丁香 | 美女福利视频网 | 国产a网站| 久久福利 | 欧美黄色软件 | 黄色成人影院 | 国产高清 不卡 | 国产一卡二卡在线 | 女人高潮特级毛片 | 国内成人精品2018免费看 | 超碰av免费 | 久久久黄色av | 国产精品一区二区三区在线 | 激情五月亚洲 | 国产精品伦一区二区三区视频 | 国产视频在线观看一区二区 | 久久亚洲国产精品 | 黄污网站在线 | 国产不卡一区二区视频 | 国内丰满少妇猛烈精品播 | 欧美日韩在线免费观看视频 | 欧美在线a视频 | 欧美成人tv| 午夜精品视频福利 | 国产精品毛片一区视频播 | 成年人视频在线 | 午夜精品电影 | 婷婷色综| 久久久久久综合 | 国产日韩欧美在线观看视频 | 国内免费的中文字幕 | 欧美va天堂va视频va在线 | 高清不卡一区二区在线 | 国产精品福利午夜在线观看 | avav99| 国产va饥渴难耐女保洁员在线观看 | 999视频在线播放 | 色婷婷亚洲综合 | 西西www444 | 欧美日韩二三区 | 热re99久久精品国产99热 | 久久综合狠狠综合久久综合88 | 91污污视频在线观看 | 久草免费看 | 97狠狠操 | 亚洲成 人精品 | 四虎在线视频免费观看 | 久草精品在线播放 | 国产精品免费视频观看 | 成片人卡1卡2卡3手机免费看 | 超碰在线亚洲 | 激情婷婷 | 亚洲精品五月 | 免费在线观看视频一区 | 国产精品ssss在线亚洲 | 国产精品一区二区久久精品 | 九九热1 | www黄色软件 | 国产精品美女www爽爽爽视频 | 国产一区二区久久 | 国产成人福利在线 | 丝袜护士aⅴ在线白丝护士 天天综合精品 | 国产亚洲在线观看 | 亚洲欧美日韩中文在线 | 午夜精品一区二区三区四区 | 国内精品久久久久久久久久久 | 免费看黄色毛片 | 国产最新视频在线观看 | 成人av教育| 成人亚洲网 | 成年人网站免费观看 | 欧美日韩一区二区三区免费视频 | 精品一区二区综合 | 久久九九影院 | 77国产精品 | 黄色一级在线免费观看 | 97电影手机版 | 亚洲最新av在线网站 | 日日夜夜天天久久 | 天天视频色版 | 国产亚洲精品久久久久动 | 国产高清在线a视频大全 | 亚洲成人软件 | 天天拍天天干 | 亚洲尺码电影av久久 | 中文字幕色在线视频 | av一本久道久久波多野结衣 | 久久久久久久免费 | av女优中文字幕在线观看 | 91手机视频在线 | 91精品一区国产高清在线gif | 色婷婷播放 | 久久久久| 亚洲精品视频在线观看视频 | 日p在线观看 | 成年人免费av网站 | 一区二区三区在线观看中文字幕 | 91成人国产 | 91久久国产精品 | 久久你懂的 | 国产精品ⅴa有声小说 | 午夜精品一区二区三区四区 | 久久高清 | 日韩精品播放 | 久久网站免费 | 不卡日韩av| 久久999精品 | 在线一区av| 久久久久免费观看 | 在线观看www91 | 免费人成在线观看 | 三级黄免费看 | 久久99久久99精品中文字幕 | 日韩欧美一区二区不卡 | 国产99久久 | 美女搞黄国产视频网站 | 欧美日韩国产综合一区二区 | 久久综合桃花 | 超碰人人射 | 中日韩免费视频 | 日韩一区二区三区免费视频 | 久久久久久久久久亚洲精品 | 狠狠色免费 | 天天射天天射 | 黄色大片日本免费大片 | 国产在线不卡 | 午夜av片| 天天视频亚洲 | 伊人www22综合色 | 日韩在线观 | 久久久久久久久久免费 | 日本老少交| 欧美激情精品久久久久久 | 国产成人久久精品一区二区三区 | 亚洲电影一级黄 | 色婷婷国产 | 色香蕉网| 91精品视频免费 | 国产高清视频免费最新在线 | 91精品国产99久久久久久久 | 香蕉视频在线免费 | 亚洲成人av免费 | 91精品国自产拍天天拍 | 91av在线不卡| 精品国产色 | 午夜精品成人一区二区三区 | 国产精品美女久久久久久2018 | 欧美精品三级 | 日韩性片 | 亚洲精品在线一区二区 | 亚洲精品国产成人av在线 | 日韩免费在线看 | 国产区精品在线观看 | 天天干国产 | 久久xxxx| 日日爽| 欧洲精品视频一区 | 婷婷免费在线视频 | 日日天天狠狠 | 国产高清在线免费观看 | 国内精品久久久久久久久久 | 久久高清免费视频 | 国产69精品久久久久9999apgf | 91人人澡人人爽 | 国产97色| 日本三级香港三级人妇99 | www.婷婷com| 黄色成人免费电影 | 久久伊人五月天 | 日韩av免费一区二区 | 国产不卡视频在线播放 | 亚洲视频电影在线 | 久久热首页 | 亚洲欧洲精品一区二区 | 久久黄色免费观看 | 一区二区三区影院 | 96看片 | 久久久久久高潮国产精品视 | 人人插人人看 | 国产精品成人免费精品自在线观看 | www.久久爱.cn| 国产精品日韩久久久久 | 又黄又色又爽 | 久久久久成人精品免费播放动漫 | 亚洲高清久久久 | 777奇米四色 | 在线中文字幕一区二区 | 日韩高清在线一区二区三区 | 最新av电影网站 | 久久香蕉电影网 | www.香蕉视频 | 欧美日韩1区2区 | 欧美激情视频久久 | 久香蕉 | 久久久久久久久久久精 | 一区二区视频播放 | 亚州免费视频 | a天堂最新版中文在线地址 久久99久久精品国产 | 极品美女被弄高潮视频网站 | 97精品久久人人爽人人爽 | 精品亚洲男同gayvideo网站 | 国产免费一区二区三区最新 | 天天射天天爽 | 黄色在线视频网址 | 不卡电影免费在线播放一区 | 久久艹久久 | 天堂网av 在线 | 久久国产精品免费一区二区三区 | 成人在线播放网站 | 在线欧美日韩 | 国产精品久久久久久久久久东京 | 天天躁天天躁天天躁婷 | 中文字幕免费一区二区 | av大片网址 | 国产精品黄色影片导航在线观看 | 91精品国产欧美一区二区 | av高清在线观看 | 精品久久毛片 | 成人av一区二区三区 | 国产精品久久久一区二区三区网站 | 国产精品成人一区二区三区吃奶 | 欧美精品在线视频 | 久久国色夜色精品国产 | 久久久91精品国产一区二区三区 | 欧美a视频在线观看 | 日韩免费观看视频 | 国产精品成人免费一区久久羞羞 | 亚色视频在线观看 | 久久精品视频在线观看 | 天天操天天色天天 | 日本深夜福利视频 | 日韩肉感妇bbwbbwbbw | 亚洲在线黄色 | 中文字幕丝袜美腿 | 欧美三人交 | 欧美analxxxx| 国产香蕉久久精品综合网 | 西西www4444大胆在线 | 久久久免费精品视频 | 国产亚洲成人精品 | 免费观看性生交 | 精品免费视频 | 狂野欧美激情性xxxx欧美 | 中文av日韩 | 在线日韩中文字幕 | 午夜视频在线观看一区 | 美女网站在线观看 | 福利电影久久 | 国产成人三级在线 | 日韩av片无码一区二区不卡电影 | 激情网站五月天 | 国产精品毛片一区视频播不卡 | 亚洲japanese制服美女 | 特级毛片aaa | 亚洲精品网站 | 中文一区二区三区在线观看 | 韩日在线一区 | 人交video另类hd | 精品久久久久久久久久久久久久久久久久 | 日韩乱色精品一区二区 | 国产在线观看av | 国产91精品久久久久久 | 国产精品国产亚洲精品看不卡 | 97在线免费视频 | 精品一二| 日韩理论电影在线观看 | av电影免费| 成人观看| av黄色亚洲 | 国产91精品看黄网站在线观看动漫 | 有码一区二区三区 | 网站在线观看你们懂的 | 91超级碰碰| 欧美不卡视频在线 | 国产精品一区二区三区99 | 国内精品久久久久久久久久清纯 | 国产偷国产偷亚洲清高 | 99久久久国产精品免费观看 | 欧美一区二区视频97 | 视频国产 | 国产麻豆精品传媒av国产下载 | www.久久免费视频 | 六月婷操 | 国产特级毛片aaaaaa高清 | 瑞典xxxx性hd极品 | 亚洲午夜久久久久久久久电影网 | 欧美午夜寂寞影院 | 在线观看亚洲成人 | 综合精品久久久 | 在线国产小视频 | 欧美一区成人 | 久久久精品免费观看 | 又黄又爽又刺激 | 国产福利不卡视频 | www.色的 | 日韩v欧美v日本v亚洲v国产v | 色五月色开心色婷婷色丁香 | 国产精品毛片久久蜜 | 精品国产成人av在线免 | 香蕉久久久久久久 | 男女免费av | 亚洲天堂免费视频 | 国产九色在线播放九色 | 国产免费久久久久 | 亚洲午夜精品久久久久久久久 | 激情久久一区二区三区 | 少妇av网 | 在线国产一区二区 | 亚洲精品国产综合99久久夜夜嗨 | 开心激情网五月天 | 天天天天色射综合 | 中文字幕91视频 | 日韩av在线高清 | av日韩不卡| 色婷婷激情五月 | 一级黄色在线免费观看 | 一级黄视频| 久久成人午夜视频 | 国产精品久久久久一区二区国产 | 中文在线√天堂 | 久久av影视 | 亚洲开心色 | 色综合久久久久久久久五月 | 久久艹国产视频 | 在线之家免费在线观看电影 | 91日韩免费 | 精品一区二区久久久久久久网站 | 日韩欧美精品在线 | 亚洲91中文字幕无线码三区 | 狠狠ri| 日韩在线视频免费看 | 99视频国产精品 | 国产精品美女久久久久久久 | 午夜精品久久久久久久99 | 国产在线第三页 | 久草在线中文888 | 亚洲经典在线 | 色狠狠一区二区 | 激情 一区二区 | 五月天激情综合 | 精品国产伦一区二区三区观看方式 | 国产激情电影综合在线看 | 国产又粗又猛又色 | 91在线公开视频 | 韩日色视频 | 国产高清视频在线观看 | 天天夜夜操| 91热视频 | 国产精品ssss在线亚洲 | 人人网av | 网站免费黄色 | 黄色一级影院 | 西西4444www大胆视频 | 国产不卡在线播放 | 亚洲精品网址在线观看 | 国产精品免费一区二区 | 麻豆国产露脸在线观看 | 开心色婷婷 | 中文日韩在线 | 久久五月天综合 | 最近免费中文视频 | 亚洲欧洲日韩 | 日韩午夜精品 | 日韩高清无线码2023 | 久草在线资源观看 | 伊人久久五月天 | 日韩三级精品 | 992tv在线成人免费观看 | 在线免费观看视频a | 最新三级在线 | 久久久久久久国产精品 | 91精品视频观看 | 91精品999 | 欧美日韩精品区 | 国产一级特黄毛片在线毛片 | www.超碰 | 天天干亚洲 | 国产精品久久久一区二区三区网站 | 丁香九月激情综合 | 成人网在线免费视频 | 国产亚洲在线 | 日韩在线免费视频 | 日韩免费久久 | 日韩免费视频线观看 | 国产1区在线 | 蜜臀一区二区三区精品免费视频 | 亚洲精品一区二区在线观看 | 欧美极品少妇xxxxⅹ欧美极品少妇xxxx亚洲精品 | 久久免费播放 | 天天操狠狠操夜夜操 | 免费a视频 | 最近中文字幕免费av | 久久久久久久久久久久久9999 | 久久久久久久综合色一本 | 天天人人 | 五月开心激情网 | 久久官网 | 精品毛片一区二区免费看 | 久草视频免费观 | 亚洲精品在线免费看 | 国产成人av电影在线观看 | 欧美视频二区 | 日韩精品首页 | 免费www视频| 日韩中文字幕在线看 | 免费精品视频在线观看 | 日韩电影一区二区三区在线观看 | 欧美一二区在线 | 久久综合免费 | 丁香婷婷色月天 | 麻豆精品国产传媒 | 国产专区视频在线 | 国产精品久久久一区二区 | 日本中文字幕在线一区 | www久久久 | 中文不卡视频 | 99久久激情 | 手机在线中文字幕 | 麻豆视频国产在线观看 | 日本系列中文字幕 | 成人国产精品久久久久久亚洲 | 麻豆av一区二区三区在线观看 | 久久a热6 | 免费久久精品视频 | 视频在线观看99 | 久久草草影视免费网 | 国产精品视频免费观看 | 国产精品99久久99久久久二8 | 黄色免费电影网站 | 久久草在线精品 | 婷婷视频在线观看 | 91视频91自拍 | 日韩免费看片 | 91精品国产99久久久久 | 免费h在线观看 | 又黄又爽又色无遮挡免费 | 国产999在线| 久久久99精品免费观看 | 欧美精品在线免费 | 免费看一级特黄a大片 | 国产99一区视频免费 | 中文字幕 国产精品 | www.夜夜操.com | 精品一区av | 99视频免费| 视频福利在线观看 | 国内精品久久久久影院一蜜桃 | 国产视频一区二区在线播放 | 丁香花中文字幕 | 久久电影日韩 | 天天亚洲综合 | 国产综合香蕉五月婷在线 | 97视频在线 | 成人精品一区二区三区中文字幕 | 91mv.cool在线观看 | 超碰在线人人艹 | 成年免费在线视频 | 国产精品嫩草影院123 | 国产精品av在线免费观看 | 久久成人高清视频 | 国产精品观看 | 国产一级免费观看视频 | 日本免费一二三区 | 啪啪凸凸| 91亚洲精品久久久蜜桃网站 | 日韩精品一区二 | 欧美日韩另类视频 | 97在线免费观看 | 天堂va在线高清一区 | 国产综合在线观看视频 | 国产91在线观 | 欧美日韩一区久久 | 香蕉视频免费看 | 午夜av免费看 | 国产精品久久久久一区二区三区共 | 久久国产免| 欧美少妇影院 | 五月天免费网站 | 欧美国产日韩中文 | 国产精品一区二区av | 91最新在线视频 | 美女国产 | 夜色资源站国产www在线视频 | 涩涩爱夜夜爱 | 13日本xxxxxⅹxxx20 | 欧美另类重口 | 国产一级二级三级在线观看 | 一区二区亚洲精品 | 国产精品视频地址 | www.伊人网.com| 中文字幕亚洲在线观看 | 亚洲狠狠丁香婷婷综合久久久 | 蜜臀av性久久久久蜜臀aⅴ涩爱 | 狠狠色狠狠色 | 亚洲有 在线 | 亚洲高清视频一区二区三区 | 国产美女精彩久久 | 亚洲精品视频一 | 美女国产网站 | 欧美资源 | 亚洲免费在线观看视频 | 中文字幕av最新 | 久久久影院官网 | 久久人人精品 | 天天色天天操天天爽 | 天天骚夜夜操 | 91精品一区在线观看 | 欧美午夜理伦三级在线观看 | 欧美激情视频一二区 | 婷婷六月综合亚洲 | 日本护士撒尿xxxx18 | 亚洲最大成人免费网站 | 亚洲精品18p| 亚洲春色奇米影视 | 久久久网 | 欧美色婷 | 午夜狠狠操 | 国产又粗又猛又色又黄视频 | 成 人 黄 色 免费播放 | 成人精品亚洲 | 尤物97国产精品久久精品国产 | 免费看国产视频 | 天堂va在线观看 | 久久国产系列 | 天天插夜夜操 | 97色在线| 天天干天天干天天操 | 国产成人三级 | 久久精国产 | 久久成人国产精品入口 | 97视频一区 | 日日久视频 | 国产综合香蕉五月婷在线 | 欧美精品在线免费 | 精品国产乱码久久久久久1区二区 | 久久天天拍 | www日韩高清| 欧美九九视频 | 九九免费在线看完整版 | 五月婷婷激情 | 在线亚洲高清视频 | 久久tv| 中文字幕有码在线 | 人人插人人爱 |