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

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Pandas实战-DataFrame对象

發(fā)布時(shí)間:2023/12/8 编程问答 61 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Pandas实战-DataFrame对象 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

本文將主要介紹以下內(nèi)容:

1. DataFrame概述

2. Series和DataFrame的相似點(diǎn)

3. DataFrame排序

4. 按DataFrame索引排序

5. 設(shè)置新索引

6. 從DataFrame讀取列

7. 從DataFrame讀取行

8. 重命名列或行

9. 重置索引

?

DataFrame是Pandas的另外一個(gè)主要的數(shù)據(jù)結(jié)構(gòu),它是由行和列組成的二維數(shù)據(jù)結(jié)構(gòu),因此需要兩個(gè)參考點(diǎn)來從數(shù)據(jù)集中提取給定值。

1. DataFrame概述

DataFrame可以描述為網(wǎng)格或數(shù)據(jù)表,類似于Excel之類的電子表格中的網(wǎng)格或數(shù)據(jù)表。

1.1 從字典創(chuàng)建DataFrame

和往常一樣,讓我們從導(dǎo)入pandas開始,還將使用NumPy庫生成一些隨機(jī)數(shù)據(jù):

In [1]: import pandas as pdimport numpy as np

在導(dǎo)入第一個(gè)數(shù)據(jù)集之前,讓我們練習(xí)從一些Python內(nèi)置對(duì)象實(shí)例化一個(gè)DataFrame。例如字典,其鍵將用作列名,而相應(yīng)的值將用作該列的值。

下例使用三個(gè)長度相等的列表來存儲(chǔ)城市,國家和人口。也可以使用其它可迭代對(duì)象(如元組或Series)代替列表。DataFrame類的第一個(gè)參數(shù)data代表數(shù)據(jù)源。

In [2]: city_data = {"City": ["New York City", "Paris", "Barcelona", "Rome"],"Country": ["United States", "France", "Spain", "Italy"],"Population": [8600000, 2141000, 5515000, 2873000]}cities = pd.DataFrame(city_data)cities Out [2]:?????????????? City?? ???????Country Population0 New York City United States 86000001????????????Paris ??????????France ???21410002??????? Barcelona ???????????Spain ???55150003??????? ?????Rome ????? ?????Italy ???2873000

我們創(chuàng)建了第一個(gè)DataFrame,它與Series非常相似。再次提醒,當(dāng)我們沒有為構(gòu)造函數(shù)提供一個(gè)明確的索引時(shí),pandas會(huì)默認(rèn)生成一個(gè)從0開始的順序索引。

如果我們想翻轉(zhuǎn)數(shù)據(jù),以列標(biāo)頭作為索引標(biāo)簽,我們可以調(diào)用transpose方法或其T屬性:

In ?[3]: cities.transpose() # 此行代碼和下面代碼是一樣的cities.T Out [3]: ????? 0 ????????1 ???????????2 ?????????3City New York City Paris Barcelona ??????RomeCountry????United States??? France ???????Spain ?????ItalyPopulation ?????????8600000 ??2141000 ?????5515000 2873000

另外還可以使用一個(gè)更方便的from_dict方法,此方法用于把字典轉(zhuǎn)換為DataFrame。其參數(shù)orient用于控制索引標(biāo)簽的創(chuàng)建,如果想把字典的鍵保存為DataFrame的列,可以使用默認(rèn)值columns;如果想把字典的鍵保存為行,則使用值index:

In ?[4]: pd.DataFrame.from_dict(data = city_data, orient = "index") Out [4]: ??????????? 0 ????? 1 ????????? 2 ?????????3City New York City ?????Paris??? Barcelona ??????RomeCountry????United States?????France ???????Spain ?????ItalyPopulation ?????????8600000 ?? 2141000 ?????5515000??? 2873000

1.2 從NumPy 數(shù)組創(chuàng)建DataFrame

DataFrame構(gòu)造函數(shù)還接受NumPy ndarray對(duì)象。假設(shè)我們要?jiǎng)?chuàng)建一個(gè)3x5的DataFrame,其整數(shù)在1到100(含)之間,我們可以使用random模塊的randint方法:

In ?[5]: data = np.random.randint(1, 101, [3, 5])data Out [5]: array([[25, 22, 80, 43, 42],[40, 89, 7, 21, 25],[89, 71, 32, 28, 39]])

接下來,我們將ndarray傳到DataFrame構(gòu)造函數(shù)中。與行一樣,如果未提供自定義的列標(biāo)頭,Pandas將為每列分配一個(gè)數(shù)字索引:

In ?[6]: pd.DataFrame(data = data) Out [6]: ?????0 ???1 ???2 ???3 ???40?? 25 ??22? ?80? ?43? ?421 ??40 ??89 ???7 ??21 ??252 ??89 ??71 ??32 ??28 ??39

我們可以使用可迭代序列,例如列表,元組或ndarray,以用作行標(biāo)簽。請(qǐng)注意,可迭代項(xiàng)的長度必須等于數(shù)據(jù)集中的行數(shù)。這是一個(gè)3x5的表格,因此我們必須為索引提供3個(gè)標(biāo)簽。

In ?[7]: index = ["Morning", "Afternoon", "Evening"]temperatures = pd.DataFrame(data = data, index = index)temperatures Out [7]:??????? ??????0 ???1 ???2 ???3 ???4Morning?? 25 ??22? ?80? ?43? ?42Afternoon ??40 ??89 ???7 ??21 ??25Evening ??89? ?71 ??32 ??28 ??39

columns參數(shù)允許我們?cè)O(shè)置DataFrame的列名(也稱為垂直標(biāo)簽)。因?yàn)槲覀兛偣灿?列,所以我們的可迭代項(xiàng)的長度必須為5。下例通過將標(biāo)頭存儲(chǔ)在元組中來設(shè)置列名:

In ?[8]: index = ["Morning", "Afternoon", "Evening"]columns = ("Monday", "Tuesday", "Wednesday", "Thursday", "Friday")temperatures = pd.DataFrame(data = data,index = index,columns = columns)temperatures Out [8]:??????? ?? Monday Tuesday?? Wednesday?? Thursday?? FridayMorning 25 22 80 43? ?????42Afternoon ?? ??40 ???????89 ????????? 7 ?? ?????21 ??????25Evening ?????89?? ?????71 ?? ??????32 ????????28 ??????39

行索引和列索引都允許包含重復(fù)值:

In ?[9]: index = ["Morning", "Afternoon", " Morning"]columns = ("Monday", "Tuesday", "Wednesday", "Tuesday", "Friday")temperatures = pd.DataFrame(data = data,index = index,columns = columns)temperatures Out [9]:??????? ?? Monday?? Tuesday?? Wednesday?? Tuesday?? FridayMorning???? 25 ???????22? ??????? 80? ? ??? 43? ?????42Afternoon ?? ?40 ???????89 ??????????7 ?? ????21 ??????25Morning ????89?? ?????71 ?? ??????32 ???????28 ??????39

2. Series和DataFrame的相似點(diǎn)

在之前介紹的許多Series屬性和方法在DataFrame上也適用。

2.1 導(dǎo)入CSV數(shù)據(jù)集

nba.csv文件是2019-2020 NBA運(yùn)動(dòng)員的數(shù)據(jù)集,包括每個(gè)球員的姓名,球隊(duì),位置,生日和工資:

In ?[10]: pd.read_csv("nba.csv") Out [10]:??? Name ?????????????? Team Position? Birthday?????Salary0 Shake Milton ??Philadelphia 76ers ???? SG ? 9/26/96?? ?14456971 Christian Wood ? Detroit Pistons ???? PF 9/27/95 16453572 ???PJ Washington ???Charlotte Hornets ??????PF ?? 8/23/98 ???38318403 ????Derrick Rose ?????Detroit Pistons ??????PG ?? 10/4/88 ?? 73170744 ???Marial Shayok ? Philadelphia 76ers ???????G ?? 7/26/95 ?????79568… ?????????????? … ???????????????? … ???????… ?? ???? … ? …445 ???Austin Rivers ??? Houston Rockets ??????PG ??? 8/1/92 ???2174310446 ?????Harry Giles ??? Sacramento Kings ??????PF ?? 4/22/98 ???2578800447 ?????Robin Lopez ?????Milwaukee Bucks ???????C ??? 4/1/88 ???4767000448 ???Collin Sexton ?Cleveland Cavaliers ??????PG ??? 1/4/99 ???4764960449 ?????Ricky Rubio ????????Phoenix Suns ??????PG ? 10/21/90 ? 16200000450 rows x 5 columns

注意,Birthday列中的值默認(rèn)是作為字符串而不是datetime對(duì)象導(dǎo)入,之前介紹過可以使用parse_dates參數(shù)將值強(qiáng)制轉(zhuǎn)換為datetime,一致以YYYY-MM-DD格式顯示:

In ?[11]: pd.read_csv("nba.csv", parse_dates = ["Birthday"]) Out [11]:? Name ?????? Team Position Birthday????Salary0 ????Shake Milton ??Philadelphia 76ers ? SG 1996-09-26 14456971 ??Christian Wood Detroit Pistons ??? PF ??1995-09-27 ??16453572 ???PJ Washington ???Charlotte Hornets ????? PF ??1998-08-23 ? 38318403 ????Derrick Rose ?? Detroit Pistons ??? PG ??1988-10-04 73170744 ???Marial Shayok ??Philadelphia 76ers ?? G ??1995-07-26 79568… ??? … ???????? … ???????… ?? ??????? … ?? ?…445 ???Austin Rivers ???? Houston Rockets ??? PG ??1992-08-01 ??2174310446 ?????Harry Giles ??? Sacramento Kings ? PF ??1998-04-22 ? 2578800447 ?????Robin Lopez ?????Milwaukee Bucks ???? C ??1988-04-01 4767000448 ???Collin Sexton ?Cleveland Cavaliers ?? PG ??1999-01-04 ??4764960449 ?????Ricky Rubio ????????Phoenix Suns ?? PG ??1990-10-21 16200000450 rows x 5 columns

現(xiàn)在我們可以把DataFrame分配給一個(gè)變量nba:

In ?[12]: nba = pd.read_csv("nba.csv", parse_dates = ["Birthday"])

2.2 共享和專用屬性

Series的值必須是單一同質(zhì)的數(shù)據(jù)類型,而DataFrame的列可以保存異構(gòu)的數(shù)據(jù)。讓我們使用dtypes屬性查看各自的數(shù)據(jù)類型,它返回的是一個(gè)Series對(duì)象:

In ?[13]: nba.dtypes Out [13]: Name ???????????????objectTeam ???????????????objectPosition ???????????objectBirthday datetime64[ns]Salary ??????? ??????int64dtype: object

然后調(diào)用value_counts方法可以計(jì)算每種數(shù)據(jù)類型的列數(shù):

In ?[14]: nba.dtypes.value_counts() Out [14]: object ??????? ???3datetime64[ns] 1int64 ????????? ??1dtype: int64

DataFrame基本上由兩個(gè)對(duì)象組成:一個(gè)由行標(biāo)簽組成的索引和一個(gè)保存每一行值的數(shù)據(jù)容器。Pandas自帶了幾個(gè)索引對(duì)象,每個(gè)索引對(duì)象都經(jīng)過優(yōu)化以存儲(chǔ)特定類型的值(numeric、string、datetime等)。index屬性返回DataFrame的Index對(duì)象。下面讓我們看一下nba數(shù)據(jù)集使用的索引類型:

In ?[15]: nba.index Out [15]: RangeIndex(start=0, stop=450, step=1)

RangeIndex是一個(gè)優(yōu)化的索引,用于存儲(chǔ)順序的整數(shù)值。與Python的range函數(shù)非常相似,RangeIndex包含三個(gè)參數(shù):start,stop和step(每兩個(gè)值之間的間隔)。上例的輸出告訴我們索引從0開始,以1為增量(即0、1、2…449)直到450。

DataFrame還具有專用的columns屬性,該屬性返回包含標(biāo)頭的Index對(duì)象:

In ?[16]: nba.columns Out [16]: Index(['Name', 'Team', 'Position', 'Birthday', 'Salary'], dtype='object')

axes屬性同時(shí)返回行和列索引:

In ?[17]: nba.axes Out [17]: [RangeIndex(start=0, stop=450, step=1),Index(['Name', 'Team', 'Position', 'Birthday', 'Salary'], dtype='object')]

shape屬性返回DataFrame維度的元組,450行x 5列:

In ?[18]: nba.shape Out [18]: (450, 5)

ndim屬性返回維數(shù):

In ?[19]: nba.ndim Out [19]: 2

size屬性返回?cái)?shù)據(jù)集中值的總數(shù),包括缺失值,它等于行數(shù)和列數(shù)的乘積:

In ?[20]: nba.size Out [20]: 2250In ?[21]: len(nba.index) * len(nba.columns) Out [21]: 2250

如果要排除缺失值可以使用count方法,它將返回一個(gè)包含每個(gè)DataFrame列的非空值數(shù)量的Series。然后使用sum方法得出DataFrame中非空值的總數(shù)。因?yàn)榇藬?shù)據(jù)集不包含任何缺失值,所以size屬性和count方法的結(jié)果將相同。

In ?[22]: nba.count() Out [22]: Name??? ??? 450Team??? ????450Position?? ?450Birthday ???450Salary ?????450dtype: int64In ?[23]: nba.count().sum() Out [23]: 2250

2.3 共享方法

head和tail方法返回?cái)?shù)據(jù)集的最前或最后的行:

In ?[24]: nba.head(2) Out [24]: ? Name ???? Team Position?????Birthday ???Salary0 Shake Milton Philadelphia 76ers???????SG?? 1996-09-26?? 14456971???Christian Wood ?????Detroit Pistons???????PF???1995-09-27???1645357In ?[25]: nba.tail(n = 3) Out [25]: ????? Name ????? Team Position Birthday ???Salary447 ????Robin Lopez ??????Milwaukee Bucks C 1988-04-01 4767000448 Collin Sexton???Cleveland Cavaliers ???? PG ??1999-01-04 4764960449 ????Ricky Rubio ?????????Phoenix Suns ?? PG ??1990-10-21 ?16200000

sample方法返回DataFrame的隨機(jī)行:

In ?[26]: nba.sample(3) Out [26]: ???????? Name ???????? Team Position????Birthday Salary348? Patrick Patterson ??Los Angeles Clippers?? ????PF ?1989-03-14 ?306866014 ????????Alec Burks ?Golden State Warriors ??????SG ?1991-07-20 2320044228 ??Ignas Brazdeikis ???????New York Knicks ??????SF ?1999-01-08 898310

nunique方法返回一個(gè)包含每一列唯一值的數(shù)量的Series:

In ?[27]: nba.nunique() Out [27]: Name ???????450Team ????????30Position ???? 9Birthday ???430Salary ?????269dtype: int64

之前介紹過的max和min方法在DataFrame上也適用,它們返回包含每一列的最大值和最小值的Series。datetime列的最大值是按時(shí)間順序排列的最新日期。

In ?[28]: nba.max() Out [28]: Team ????????Washington WizardsPosition ????????????????????SGBirthday 2000-12-23 00:00:00Salary ????????????????40231758dtype: objectIn ?[29]: nba.min() Out [29]: Team ???????? ????Atlanta HawksPosition ?????????????????????CBirthday ???1977-01-26 00:00:00Salary ???????????????????79568dtype: object

nlargest方法返回按照指定列最大值排序的前n行。因?yàn)橐粋€(gè)DataFrame可以包含多個(gè)可排序的列,所以我們必須使用columns參數(shù)指定要用作排序的列。參數(shù)值可以是單個(gè)列名,也可以是多個(gè)列名的列表。下例是返回NBA中收入最高的前4名球員:

In ?[30]: nba.nlargest(n = 4, columns = "Salary") Out [30]:???????? Name ???????????? Team Position ???Birthday ???Salary205 ?????Stephen Curry ?Golden State Warriors ??????PG 1988-03-14 4023175838 ????????Chris Paul? Oklahoma City Thunder ??????PG 1985-05-06 38506482219? Russell Westbrook ???????Houston Rockets ??????PG 1988-11-12 ?38506482251 ?????????John Wall ????Washington Wizards ??????PG 1990-09-06 ?38199000

nsmallest方法返回按照指定列最小值排序的前n行。下例是返回NBA中最老的前3名球員:

In ?[31]: nba.nsmallest(3, columns = ["Birthday"]) Out [31]:???????? is Name ??????????? Team Position ????Birthday ???Salary98 ???Vince Carter ??? Atlanta Hawks ??????PF ??1977-01-26???2564753196 Udonis Haslem ???????Miami Heat ?????? C ??1980-06-09???2564753262 ????Kyle Korver ??Milwaukee Bucks ??????PF ??1981-03-17???6004753

如果要計(jì)算所有NBA工資的總和,可以直接使用sum方法,但必須把numeric_only參數(shù)設(shè)為True,用于只計(jì)算數(shù)值類型的列。

In ?[32]: nba.sum(numeric_only = True) Out [32]: Salary 3444112694dtype: int64

mean方法可以計(jì)算平均工資:

In ?[33]: nba.mean() Out [33]: Salary 7.653584e+06dtype: float64

median方法可以計(jì)算工資的中位數(shù),std方法統(tǒng)計(jì)偏差:

In ?[34]: nba.median() Out [34]: Salary 3303074.5dtype: float64In ?[35]: nba.std() Out [35]: Salary 9.288810e+06dtype: float64

3. 按DataFrame值排序

我們可以使用sort_values方法按一列或多列對(duì)DataFrame進(jìn)行排序。默認(rèn)情況下,該方法返回一個(gè)新的DataFrame。

3.1 按單列排序

首先讓我們按名字對(duì)球員進(jìn)行排序,by參數(shù)用于指定排序的列:

In ?[36]: nba.sort_values("Name") # 和下面代碼是一樣的nba.sort_values(by = "Name") Out [36]:??????? Name ??? Team Position ?? Birthday ???Salary52 ??????Aaron Gordon ?????????Orlando Magic ??????PF ?1995-09-16 19863636101 ?????Aaron Holiday ????????Indiana Pacers ??????PG 1996-09-30 ??2239200437 ???????Abdel Nader Oklahoma City Thunder ????? SF ?1993-09-25 ??161852081 ???? Adam Mokoka ?????????Chicago Bulls ???????G 1998-07-18 ????79568399 ?Admiral Schofield ????Washington Wizards ???? ?SF 1997-03-30 ??1000000… ??????????? ??? ?… ???????????????????? … ????? ?… ??????????… ??????? …159 ???????Zach LaVine ?????????Chicago Bulls ??????PG 1995-03-10 ?19500000302 ??????Zach Norvell ????Los Angeles Lakers ??????SG 1997-12-09 ????79568312 ??????Zhaire Smith ????Philadelphia 76ers ??????SG 1999-06-04 ??3058800137 ???Zion Williamson ??New Orleans Pelicans ???????F 2000-07-06 ??9757440248 ??? Zylan Cheatham ??New Orleans Pelicans ??????SF 1995-11-17 ????79568450 rows × 5 columns

ascending參數(shù)可以指定升序或降序排序,我們可以使用它來找出NBA中最年輕的五個(gè)球員,只需對(duì)Birthday列進(jìn)行降序排序,head方法默認(rèn)返回前5行:

In ?[37]: nba.sort_values("Birthday", ascending = False).head() Out [37]:????? Name ???? Team Position ? Birthday ??Salary136 ???? Sekou Doumbouya ??????Detroit Pistons ??????SF ?2000-12-23 ?3285120432 ?Talen Horton-Tucker ???Los Angeles Lakers ??????GF ?2000-11-25 ??898310137 ?????Zion Williamson ?New Orleans Pelicans ???????F ?2000-07-06 ?9757440313?????????? RJ Barrett ??????New York Knicks ??? SG ?2000-06-14 ?7839960392???????? Jalen Lecque ?????????Phoenix Suns ?? G ?2000-06-13 ??898310

3.2 按多列排序

sort_values方法的by參數(shù)還支持按多個(gè)列排序,默認(rèn)情況下,所有排序?qū)瓷蚺帕?#xff0c;也就是ascending參數(shù)默認(rèn)值為True。下例按字母順序?qū)η蜿?duì)進(jìn)行排序,然后再對(duì)每個(gè)球隊(duì)中的球員進(jìn)行排序:

In ?[38]: nba.sort_values(by = ["Team", "Name"]) Out [38]:???????? ????????Name??????? ?Team Position ???Birthday ???Salary359 ????????Alex Len ??????Atlanta Hawks ???????C ?1993-06-16 ??4160000167 ????Allen Crabbe ??????Atlanta Hawks ??????SG ?1992-04-09 18500000276 ?Brandon Goodwin ??????Atlanta Hawks ??????PG? 1995-10-02 ????79568438 ??Bruno Fernando ??????Atlanta Hawks ???????C? 1998-08-15 ??1400000194 ?????Cam Reddish ??????Atlanta Hawks ??????SF? 1999-09-01 ??4245720… ???????????????… ??????????????????… ???????… ???????? ?… ????????…418 ????Jordan McRae ?Washington Wizards ??????PG ?1991-03-28 ??1645357273 ?Justin Robinson ?Washington Wizards ??????PG ?1997-10-12 ???898310428 ???Moritz Wagner ?Washington Wizards ???????C ?1997-04-26 ??206352021 ???Rui Hachimura ?Washington Wizards ??????PF ?1998-02-08 ??446916036 ???Thomas Bryant ?Washington Wizards ???????C ?1997-07-31 ???800000450 rows × 5 columns

我們可以使用ascending參數(shù)對(duì)每個(gè)列按相同的順序排序:

In ?[39]: nba.sort_values(["Team", "Name"], ascending = False) Out [39]:???? Name ?? Team Position ?Birthday ?????Salary36 ???Thomas Bryant ?Washington Wizards ???????C 1997-07-31?? 800000021 ???Rui Hachimura ?Washington Wizards ??????PF ?1998-02-08 ??4469160428 ???Moritz Wagner ?Washington Wizards ???????C ?1997-04-26 ?2063520273 ?Justin Robinson ?Washington Wizards ??????PG ?1997-10-12 ???898310418 ????Jordan McRae ?Washington Wizards ??????PG ?1991-03-28 ??1645357… ???????????????… ??????????????????… ???????… ??????? ??… …194 ?????Cam Reddish ??????Atlanta Hawks ??????SF ?1999-09-01 ??4245720438 ??Bruno Fernando ??????Atlanta Hawks ???????C ?1998-08-15 ??1400000276? Brandon Goodwin ??????Atlanta Hawks ??????PG ?1995-10-02?????79568167 ????Allen Crabbe ??????Atlanta Hawks ??????SG ?1992-04-09 ?18500000359 ????????Alex Len ??????Atlanta Hawks ???????C ?1993-06-16 ??4160000450 rows × 5 columns

如果我們想對(duì)每個(gè)列按照不同的排序順序,例如,對(duì)球隊(duì)按升序進(jìn)行排序,然后再對(duì)工資按降序進(jìn)行排序。為此,ascending參數(shù)也支持列表值,每個(gè)布爾值會(huì)與by參數(shù)的每個(gè)值對(duì)應(yīng),也就是by和ascending參數(shù)的列表的長度必須相等。

In ?[40]: nba.sort_values(by = ["Team", "Salary"],ascending = [True, False]) Out [40]: ?????? ?Name ????????? Team Position ???Birthday ???Salary111 ??Chandler Parsons ??????Atlanta Hawks ??????SF ?1988-10-25 ?2510251228 ???????Evan Turner ??????Atlanta Hawks ??????PG??1988-10-27 ?18606556167 ??????Allen Crabbe ??????Atlanta Hawks ??????SG??1992-04-09 ?18500000213 ???De'Andre Hunter ??????Atlanta Hawks ??????SF??1997-12-02 ??7068360339 ?????Jabari Parker ??????Atlanta Hawks ??????PF ?1995-03-15 ??6500000… ??????????? ?????… ??????????? … ???? ??… ????????? …?????????…80????????Isaac Bonga ?Washington Wizards ??????PG ?1999-11-08 ??1416852399 Admiral Schofield ?Washington Wizards ??????SF ?1997-03-30 ??1000000273 ? ?Justin Robinson ?Washington Wizards ??????PG ?1997-10-12 ???898310283 Garrison Mathews ?Washington Wizards ??????SG ?1996-10-24 ????79568353 ?? ??Chris Chiozza ?Washington Wizards ??????PG ?1995-11-21 ????79568450 rows × 5 columns

與Series一樣,inplace參數(shù)會(huì)修改原始DataFrame而不是返回一個(gè)新的DataFrame。Jupyter Notebook中將不會(huì)產(chǎn)生任何輸出:

In ?[41]: nba.sort_values(by = ["Team", "Salary"],ascending = [True, False],inplace = True)

4. 按DataFrame索引排序

使用inplace參數(shù)更改了原始的DataFrame,但我們也有方法將其恢復(fù)為原始形式。

4.1 按行索引排序

sort_index方法按索引值對(duì)DataFrame進(jìn)行排序:

In ?[42]: nba.sort_index().head() # 與下行代碼是一樣的nba.sort_index(ascending = True).head() Out [42]:??????? Name ????????????? Team Position ????Birthday ???Salary0 ????Shake Milton ??Philadelphia 76ers ??????SG ??1996-09-26???14456971 Christian Wood ?????Detroit Pistons ??????PF ??1995-09-27???16453572 ???PJ Washington ???Charlotte Hornets ??????PF ??1998-08-23???38318403 ????Derrick Rose ?????Detroit Pistons ??????PG ??1988-10-04???73170744 ???Marial Shayok ??Philadelphia 76ers ???????G ??1995-07-26?????79568

使用inplace參數(shù)使更改永久生效:

In ?[43]: nba.sort_index(inplace = True)

4.2 按列索引排序

按列進(jìn)行排序可以使用axis參數(shù),只需把值設(shè)為1或columns:

In ?[44]: nba.sort_index(axis = 1).head() # 這三行代碼是一樣的nba.sort_index(axis = "columns").head()nba.sort_index(axis = "columns", ascending = True).head() Out [44]:???????Birthday ??? Name Position ???Salary ????????????? ? Team0 ??1996-09-26 ????Shake Milton ??????SG ??1445697???Philadelphia 76ers1 ??1995-09-27 ??Christian Wood ??????PF???1645357 ?????Detroit Pistons2 ??1998-08-23 ???PJ Washington ??????PF ??3831840 ???Charlotte Hornets3 ??1988-10-04 ????Derrick Rose ??????PG???7317074 ?????Detroit Pistons4 ??1995-07-26 ???Marial Shayok ???????G?????79568 ??Philadelphia 76ers

5. 設(shè)置新索引

設(shè)置新索引可以使用set_index方法,它返回一個(gè)以給定列作為索引的新DataFrame:

In ?[45]: nba.set_index(keys = "Name") # is the same asnba.set_index("Name") Out [45]:??????????????????? Team Position ????Birthday ????SalaryNameShake Milton ? Philadelphia 76ers ??????SG ??1996-09-26 ???1445697Christian Wood ?????Detroit Pistons???????PF ??1995-09-27 ???1645357PJ Washington ?? Charlotte Hornets???????PF ??1998-08-23 ???3831840Derrick Rose ?????Detroit Pistons???????PG ??1988-10-04 ???7317074Marial Shayok ??Philadelphia 76ers????????G ??1995-07-26 ?????79568… ??????????? ?…?? ?????… ?????????? … ????? ???…Austin Rivers ??? Houston Rockets ????? PG ??1992-08-01 ???2174310Harry Giles ?? Sacramento Kings ??????PF ??1998-04-22 ???2578800Robin Lopez ???? Milwaukee Bucks ???????C ??1988-04-01 ???4767000Collin Sexton ?Cleveland Cavaliers ??????PG ??1999-01-04 ???4764960Ricky Rubio ????????Phoenix Suns ???? ?PG ??1990-10-21 ?16200000450 rows × 4 columns

使用inplace參數(shù)使更改永久生效:

In ?[46]: nba.set_index(keys = "Name", inplace = True)

如果我們知道要在導(dǎo)入數(shù)據(jù)集時(shí)用作索引的列,我們還可以使用read_csv方法的index_col參數(shù):

In ?[47]: nba = pd.read_csv("nba.csv",parse_dates = ["Birthday"],index_col = "Name")

6. 從DataFrame讀取列

DataFrame是共用相同索引的Series對(duì)象的集合,我們可以輕松地從DataFrame中讀取一個(gè)或多個(gè)這些列。

6.1 從DataFrame讀取單列

每個(gè)Series的列都可以使用DataFrame的屬性讀取。例如,我們可以使用nba.Salary讀取Salary列:

In ?[48]: nba.Salary Out [48]: NameShake Milton ????1445697Christian Wood 1645357PJ Washington ?? 3831840Derrick Rose???? 7317074Marial Shayo?? ????79568...Austin Rivers ?? 2174310Harry Giles ???? 2578800Robin Lopez ?????4767000Collin Sexton 4764960Ricky Rubio ??? 16200000Name: Salary, Length: 450, dtype: int64

如果您希望始終使用二維數(shù)據(jù)結(jié)構(gòu),可以使用to_frame方法將Series轉(zhuǎn)換為DataFrame:

In ?[49]: nba.Salary.to_frame() Out [49]:?????????????????????SalaryNameShake Milton ????1445697Christian Wood ????1645357PJ Washington ????3831840Derrick Rose ? ??7317074Marial Shayok ??????79568… ?? ???????…Austin Rivers ????2174310Harry Giles ????2578800Robin Lopez ? ??4767000Collin Sexton ????4764960Ricky Rubio 16200000450 rows × 1 columns

也可以通過名稱來讀取列,這種方法的優(yōu)點(diǎn)是它支持名稱中帶有空格的列。

In ?[50]: nba["Position"] Out [50]: NameShake Milton ?????SGChristian Wood PFPJ Washington ??? PFDerrick Rose ???? PGMarial Shayok ?? ??G..Austin Rivers???? PGHarry Giles ????? PFRobin Lopez ???? ??CCollin Sexton ??? PGRicky Rubio ????? PGName: Position, Length: 450, dtype: object

6.2 從DataFrame讀取多列

要讀取多個(gè)列,只需要在列表中指定多個(gè)列名,返回的是一個(gè)新的DataFrame。它的列的排列順序和列表中的一樣,這是重新排列DataFrame列的有效方式:

In ?[51]: nba[["Salary", "Birthday"]] Out [51]: ???????????????????Salary ?????BirthdayNameShake Milton??? 1445697??? 1996-09-26Christian Wood??? 1645357 ???1995-09-27PJ Washington??? 3831840 ???1998-08-23Derrick Rose??? 7317074 ???1988-10-04Marial Shayok? ????79568 ???1995-07-26… ???????? … ????????????…Austin Rivers ?? 2174310 ???1992-08-01Harry Giles ?? 2578800 ???1998-04-22Robin Lopez ?? 4767000 ???1988-04-01Collin Sexton ?? 4764960 ???1999-01-04Ricky Rubio ??16200000 ???1990-10-21450 rows × 2 columns

如果我們想根據(jù)列的數(shù)據(jù)類型來選擇列,可以使用select_dtypes方法,其include和exclude這兩個(gè)參數(shù)可以指定單個(gè)數(shù)據(jù)類型或多個(gè)數(shù)據(jù)類型的列表。提醒一下,您可以使用dtypes屬性查看數(shù)據(jù)集中的數(shù)據(jù)類型。

In [52]: # 僅選擇字符串類型的列` nba.select_dtypes(include = "object") Out [52]: Team PositionName Shake Milton Philadelphia 76ers SGChristian Wood Detroit Pistons PFPJ Washington Charlotte Hornets PFDerrick Rose Detroit Pistons PGMarial Shayok Philadelphia 76ers G… … …Austin Rivers Houston Rockets PGHarry Giles Sacramento Kings PFRobin Lopez Milwaukee Bucks CCollin Sexton Cleveland Cavaliers PGRicky Rubio Phoenix Suns PG450 rows × 2 columnsIn [53]: # 排除字符串和整數(shù)類型的列nba.select_dtypes(exclude = ["object", "int"]) Out [53]: BirthdayName Shake Milton 1996-09-26Christian Wood 1995-09-27PJ Washington 1998-08-23Derrick Rose 1988-10-04Marial Shayok 1995-07-26… …Austin Rivers 1992-08-01Harry Giles 1998-04-22Robin Lopez 1988-04-01Collin Sexton 1999-01-04Ricky Rubio 1990-10-21450 rows × 1 columns

7. 從DataFrame讀取行

DataFrame中的行可以通過索引標(biāo)簽或索引位置讀取。

7.1 通過索引標(biāo)簽讀取行

loc屬性返回具有給定索引標(biāo)簽行的Series,注意是區(qū)分大小寫。下例是返回索引標(biāo)簽是"LeBron James"的行:

In ?[54]: nba.loc["LeBron James"] Out [54]: Team ????????Los Angeles LakersPosition ???? ???????????????PFBirthday 1984-12-30 00:00:00Salary ????????????????37436858Name: LeBron James, dtype: object

還可以給定一個(gè)列表以讀取多行,返回結(jié)果是一個(gè)DataFrame,順序和給定的列表一樣:

In ?[55]: nba.loc[["Kawhi Leonard", "Paul George"]] Out [55]: ???????????????????? Team Position ????Birthday ?? SalaryNameKawhi Leonard???Los Angeles Clippers ??????SF ??1991-06-29 ??32742000Paul George???Los Angeles Clippers???????SF ??1990-05-02 ??33005556

Pandas還支持Python的列表切片語法。例如,我們可以對(duì)索引標(biāo)簽進(jìn)行排序以按字母順序獲得球員的姓名,然后選擇Otto Porter和Patrick Beverley之間的所有球員。注意,兩個(gè)端點(diǎn)的球員也會(huì)被包括在內(nèi):

In ?[56]: nba.sort_index().loc["Otto Porter":"Patrick Beverley"] Out [56]: ????????????????? Team Position ????Birthday ????SalaryNameOtto Porter ?????????Chicago Bulls ??????SF ??1993-06-03 ??27250576PJ Dozier ????????Denver Nuggets ??????PG ? 1996-10-25??? ??79568PJ Washington ?????Charlotte Hornets ??????PF ??1998-08-23 ???3831840Pascal Siakam ???????Toronto Raptors ??????PF ??1994-04-02 ???2351838Pat Connaughton ???????Milwaukee Bucks ??????SG ? 1993-01-06 ?? 1723050Patrick Beverley ? Los Angeles Clippers ??????PG ? 1988-07-12 ??12345680

我們還可以讀取DataFrame從某行開始到最后一行的數(shù)據(jù),它與從Python列表中讀取分片的語法相同,也就是在初始索引標(biāo)簽后加一個(gè)冒號(hào):

In ?[57]: nba.sort_index().loc["Zach Collins":] Out [57]:??????????????????? Team Position ????Birthday ?????SalaryNameZach Collins ?Portland Trail Blazers ???????C 1997-11-19 ????4240200Zach LaVine????????? Chicago Bulls ??????PG ??1995-03-10 19500000Zach Norvell ??? Los Angeles Lakers ??????SG ??1997-12-09???????79568Zhaire Smith ??? Philadelphia 76ers ??????SG ??1999-06-04 ????3058800Zion Williamson ? New Orleans Pelicans ???????F ??2000-07-06 ????9757440Zylan Cheatham ? New Orleans Pelicans ??????SF ??1995-11-17???????79568

同理可以讀取DataFrame從開頭到某行的數(shù)據(jù),下例返回所從開頭到"Al Horford"的行:

In ?[58]: nba.sort_index().loc[:"Al Horford"] Out [58]:??????????????????? Team Position ?? Birthday ? ?SalaryNameAaron Gordon ?????????Orlando Magic ???? ?PF??1995-09-16 19863636Aaron Holiday ????????Indiana Pacers ???? ?PG ?1996-09-30 ??2239200Abdel Nader ?Oklahoma City Thunder ??????SF ?1993-09-25 ??1618520Adam Mokoka ?????????Chicago Bulls ???????G ?1998-07-1??????79568Admiral Schofield ????Washington Wizards ??????SF ?1997-03-30 ??1000000Al Horford?????Philadelphia 76ers ???????C ?1986-06-03 ?28000000

如果DataFrame中不存在指定的索引標(biāo)簽,則會(huì)拋出KeyError異常:

In ?[59]: nba.loc["Bugs Bunny"] --------------------------------------------------------------------------- KeyError Traceback (most recent call last) KeyError: 'Bugs Bunny'

7.2 通過索引位置讀取行

iloc(索引位置index location)屬性返回具有給定索引位置的一行或多行,參數(shù)可以是單個(gè)整數(shù)或整數(shù)的列表:

In ?[60]: nba.iloc[300] Out [60]: Team ???????? ??Denver NuggetsPosition?????????????? ?????PFBirthday ??1999-04-03 00:00:00Salary ????????????????1416852Name: Jarred Vanderbilt, dtype: objectIn ?[61]: nba.iloc[[100, 200, 300, 400]] Out [61]:????????????????? Team Position ???Birthday???SalaryNameBrian Bowen ????Indiana Pacers ?? ???SG ?1998-10-02 ???79568Marco Belinelli ?San Antonio Spurs ?? ???SF ?1986-03-25 ?5846154Jarred Vanderbilt ????Denver Nuggets ?? ???PF ?1999-04-03??1416852Louis King ?????Detroit Pistons ?? ????F ?1999-04-06 ???79568

列表切片的語法在這里也是使用的,需要注意冒號(hào)后面指定端點(diǎn)的行是不包括的。下例返回索引位置400、401、402和403的行:

In ?[62]: nba.iloc[400:404] Out [62]: ??????? ???????? Team Position ???Birthday ????SalaryNameLouis King ????Detroit Pistons ??? ???F??1999-04-06 ?????79568Kostas Antetokounmpo ?Los Angeles Lakers ????? PF ?1997-11-20 79568Rodions Kurucs ??????Brooklyn Nets ??????PF ?1998-02-05 ???1699236Spencer Dinwiddie ??????Brooklyn Nets ??????PG ?1993-04-06 ??10605600In ?[63]: nba.iloc[:2] # 讀取頭兩行 Out [63]:????????????????????????????????Team Position ? Birthday ???SalaryNameShake Milton ??Philadelphia 76ers ??????SG???1996-09-26???1445697Christian Wood ?????Detroit Pistons ??????PF ??1995-09-27???1645357In ?[64]: nba.iloc[447:] # 讀取從索引位置447到最后 Out [64]:???????????????????? ????????? Team Position ?? Birthday ?? SalaryNameRobin Lopez ????? Milwaukee Bucks ???????C???1988-04-01 ???4767000Collin Sexton ??Cleveland Cavaliers ???? ?PG???1999-01-04 ???4764960Ricky Rubio ?????????Phoenix Suns ???? ?PG???1990-10-21 ??16200000

索引位置也可以使用負(fù)數(shù),也就是從倒數(shù)開始數(shù)。下例是從倒數(shù)第10行直到倒數(shù)第6行,但不包括倒數(shù)第6行:

In ?[65]: nba.iloc[-10:-6] Out [65]:???????????????????? ???? Team Position ????Birthday ???SalaryNameJared Dudley ?????Los Angeles Lakers ??? ??PF???1985-07-10 ??2564753Max Strus ???????????ChicagoBulls ??????SG ??1996-03-28 ????79568Kevon Looney ??Golden State Warriors ???????C ??1996-02-06 ??4464286Willy Hernangomez ??????Charlotte Hornets ???????C ??1994-05-27 ??1557250

除此以外還可以指定索引位置的步長序列。在下例中,我們從前十行中選擇間隔為2的行。因此,返回結(jié)果的索引位置為0、2、4、6和8:

In ?[66]: nba.iloc[0:10:2] Out [66]:???????????????????? Team Position ????Birthday?????SalaryNameShake Milton ??Philadelphia 76ers ????? SG ??1996-09-26 ???1445697PJ Washington ???Charlotte Hornets ??????PF ??1998-08-23 ???3831840Marial Shayok ??Philadelphia 76ers ??? ???G ??1995-07-26??????79568Kendrick Nunn ??????????Miami Heat ??? ??SG ??1995-08-03 ???1416852Brook Lopez ???? Milwaukee Bucks ??? ???C ??1988-04-01 ??12093024

7.3 從行的指定列中讀取值

loc和iloc屬性都支持第二個(gè)參數(shù)指定要讀取的列。在下例中,我們讀取索引標(biāo)簽為"Giannis Antetokounmpo" 所在行的Team列的值:

In ?[67]: nba.loc["Giannis Antetokounmpo", "Team"] Out [67]: 'Milwaukee Bucks'

兩個(gè)參數(shù)都支持傳遞列表,下例第二個(gè)參數(shù)使用列表指定要讀取Position和Birthday列的值:

In ?[68]: nba.loc["James Harden", ["Position", "Birthday"]] Out [68]: Position ????????? PGBirthday ??1989-08-26 00:00:00Name: James Harden, dtype: object

下例第一、二個(gè)參數(shù)都使用了列表:

In ?[69]: nba.loc[["Russell Westbrook", "Anthony Davis"],["Team", "Salary"]] Out [69]:???????? ??????????????? Team ????SalaryNameRussell Westbrook ?????Houston Rockets???38506482Anthony Davis ??Los Angeles Lakers???27093019

列表切片語法也可以用于讀取多個(gè)列,注意,這里兩個(gè)端點(diǎn)都將包括在內(nèi):

In ?[70]: nba.loc["Joel Embiid", "Position":"Salary"] Out [70]: Position ????????????????????CBirthday ??1994-03-16 00:00:00Salary ???????????????27504630Name: Joel Embiid, dtype: object

參數(shù)指定的列名必須和它們?cè)贒ataFrame中出現(xiàn)的順序一樣。下例會(huì)返回空列表,因?yàn)镾alary列位于Position列之后:

In ?[71]: nba.loc["Joel Embiid", "Salary":"Position"] Out [71]: Series([], Name: Joel Embiid, dtype: object)

每個(gè)DataFrame列都分配有一個(gè)索引位置,在我們當(dāng)前的DataFrame中,Team的索引為0,Position的索引為1,依此類推。

In ?[72]: nba.columns Out [72]: Index(['Team', 'Position', 'Birthday', 'Salary'], dtype='object')

列的索引位置也可以作為第二個(gè)參數(shù)傳給iloc:

In ?[73]: nba.iloc[57, 3] Out [73]: 796806

列表切片語法也可以在此處使用。下例返回索引位置100到104(不包括)所在行的從開始到索引位置3(不包括)的列:

In ?[74]: nba.iloc[100:104, :3] Out [74]:???????????????????? Team?Position ?????BirthdayNameBrian Bowen ???????Indiana Pacers ??????SG ??1998-10-02Aaron Holiday ???????Indiana Pacers ??????PG ??1996-09-30Troy Daniels ???Los Angeles Lakers ??????SG ? ?1991-07-15Buddy Hield ??? Sacramento Kings ??????SG ?? 1992-12-17

iloc和loc屬性非常通用,參數(shù)可以是單個(gè)值、列表、列表切片等。這種靈活性的缺點(diǎn)是需要額外的開銷,pandas必須檢查iloc或loc的輸入類型。

當(dāng)我們要從DataFrame中讀取單個(gè)值時(shí),可以使用at和iat這兩個(gè)替代屬性: at屬性的參數(shù)是行和列標(biāo)簽,而iat屬性的參數(shù)是行和列索引位置:

In ?[75]: nba.at["Austin Rivers", "Birthday"] Out [75]: Timestamp('1992-08-01 00:00:00')In ?[76]: nba.iat[263, 1] Out [76]: 'PF'

8. 重命名列或行

我們可以通過使用新名稱列表覆蓋columns屬性來重命名DataFrame中的某些或所有列:

In ?[77]: nba.columns Out [77]: Index(['Team', 'Position', 'Birthday', 'Salary'], dtype='object')In ?[78]: nba.columns = ["Team", "Position", "Date of Birth", "Pay"]nba.head(1) Out [78]:???????? ??????????????? Team Position Date of Birth ???????PayNameShake Milton ??Philadelphia 76ers ??????SG ?? 1996-09-26 ???1445697

我們也可以使用rename方法,其參數(shù)columns的值類型是一個(gè)字典,鍵是需要修改的原列名,值是新的列名。下例是把原列名"Date of Birth"重命名為"Birthday":

In ?[79]: nba.rename(columns = { "Date of Birth": "Birthday" }) Out [79]:???????????????????? ? Team Position ????Birthday ???????PayNameShake Milton?? Philadelphia 76ers ??????SG???1996-09-26 ???1445697Christian Woo????? ?Detroit Pistons ??????PF???1995-09-27 ???1645357PJ Washington ?? Charlotte Hornets ??????PF???1998-08-23 ???3831840Derrick Rose ?? ??Detroit Pistons ??????PG ??1988-10-04 ???7317074Marial Shayok ? Philadelphia 76ers ???????G ??1995-07-26 ?????79568… ????? ?????????????… ???????… ????????? ?… ???????? …Austin Rivers ???? Houston Rockets ????? PG ??1992-08-01????2174310Harry Giles ??? Sacramento Kings ???? ?PF ??1998-04-22 ???2578800Robin Lopez ?? ??Milwaukee Bucks ???????C ??1988-04-01 ???4767000Collin Sexton ?Cleveland Cavaliers ?? ???PG ??1999-01-04 ???4764960Ricky Rubio ????????Phoenix Suns ?? ???PG ??1990-10-21 ??16200000450 rows × 4 columns

一如既往地,使用 inplace 參數(shù)使修改永久生效:

In ?[80]: nba.rename(columns = { "Date of Birth": "Birthday" },inplace = True)

rename方法也可以重命名索引標(biāo)簽。下例將 "Giannis Antetokounmpo" 重命名為他的昵稱 "Greek Freak":

In ?[81]: nba.loc["Giannis Antetokounmpo"] Out [81]: Team ???????????Milwaukee BucksPosition?????????????? ??????PFBirthday ???1994-12-06 00:00:00Pay ??????????? ???????25842697Name: Giannis Antetokounmpo, dtype: objectIn ?[82]: nba.rename(index = { "Giannis Antetokounmpo": "Greek Freak" },inplace = True)In??[83]: nba.loc["Greek Freak"] Out [83]: Team ???????? ?Milwaukee BucksPosition ???????????????????PFBirthday ??1994-12-06 00:00:00Pay ??????????????????25842697Name: Greek Freak, dtype: object

9. 重置索引

如果我們想把另一列用作DataFrame的索引,可以使用set_index方法,但會(huì)造成當(dāng)前索引Name的丟失:

In ?[84]: nba.set_index("Team").head() Out [84]:???????????????????? Position ?????Birthday ???? PayTeamPhiladelphia 76ers ???????SG ???1996-09-26 ???1445697Detroit Pistons ???????PF ???1995-09-27 ???1645357Charlotte Hornets ???????PF ???1998-08-23 ???3831840Detroit Pistons ???????PG ???1988-10-04 ???7317074Philadelphia 76ers ????????G ???1995-07-26 ?????79568

為了保留原來的索引列Name,我們首先要使用reset_index方法把現(xiàn)有索引重新整合為DataFrame中的常規(guī)列,并生成新的順序索引:

In ?[85]: nba.reset_index().head() Out [85]:????? Name ?????????????? Team Position ????Birthday ??????Pay0 Shake Milton ??Philadelphia 76ers ??????SG ??1996-09-26 14456971 ??Christian Wood ?????Detroit Pistons ??????PF???1995-09-27???16453572 ???PJ Washington ???Charlotte Hornets ??????PF ??1998-08-23 ??38318403 ????Derrick Rose ?????Detroit Pistons ??????PG ??1988-10-04 ??73170744 ???Marial Shayok ??Philadelphia 76ers ???????G ??1995-07-26?????79568

現(xiàn)在我們可以放心使用set_index方法了:

In ?[86]: nba.reset_index().set_index("Team").head() Out [86]: ??????? ??? Name Position ??? Birthday ??? PayTeamPhiladelphia 76ers ????Shake Milton ??????SG???1996-09-26???1445697Detroit Pistons???Christian Wood ??????PF???1995-09-27???1645357Charlotte Hornets ???PJ Washington ??????PF???1998-08-23???3831840Detroit Pistons ????Derrick Rose ??????PG???1988-10-04???7317074Philadelphia 76ers ???Marial Shayok ???????G???1995-07-26?????79568

reset_index方法也支持inplace參數(shù),但是要注意:如果參數(shù)設(shè)置為True,則該方法將不會(huì)返回新的DataFrame,因此不能直接鏈接調(diào)用set_index方法,必須依次分開單獨(dú)調(diào)用:

In ?[87]: nba.reset_index(inplace = True)nba.set_index("Name", inplace = True)

?

END O(∩_∩)O

總結(jié)

以上是生活随笔為你收集整理的Pandas实战-DataFrame对象的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

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

欧美日韩后 | 在线观看视频91 | 国产精品中文字幕在线 | 日韩在线观看中文 | 日韩精品欧美专区 | 伊人视频 | 日本女人b| 四虎成人免费观看 | 天天爽天天碰狠狠添 | 国产玖玖在线 | 日韩精品在线观看av | 日韩一区二区免费视频 | 欧美色综合天天久久综合精品 | 免费观看黄色12片一级视频 | 波多野结衣在线观看一区二区三区 | 精品视频9999 | 婷婷丁香七月 | 久久理论片 | 午夜av在线免费 | 精品国产精品一区二区夜夜嗨 | 久久精品电影院 | 四虎国产精品成人免费4hu | 国产免费亚洲高清 | 免费在线观看亚洲视频 | 五月天中文字幕mv在线 | 成年性视频 | 中文字幕一区二区三区乱码在线 | 91精品国产入口 | 东方av在 | 亚洲激情视频 | 在线观影网站 | 黄色亚洲在线 | 久久久影院官网 | 欧美另类人妖 | 亚洲天天摸日日摸天天欢 | 欧美一区二区三区不卡 | 日韩一区正在播放 | 中文字幕在线观看完整版电影 | 久久久久久久久久久久影院 | 国产精品女同一区二区三区久久夜 | 欧美天堂久久 | 国产精品自产拍在线观看中文 | 91精品国产99久久久久久红楼 | 丁香六月五月婷婷 | 久久国产精品成人免费浪潮 | 国产一级一片免费播放放a 一区二区三区国产欧美 | 国产精品美女久久久 | 国产午夜精品福利视频 | 成人黄色片在线播放 | 热久久99这里有精品 | av不卡中文 | 欧美一级性生活片 | 国产福利91精品一区二区三区 | 国产啊v在线观看 | 欧美一区二视频在线免费观看 | 四虎影视成人永久免费观看亚洲欧美 | 视频国产精品 | 欧美午夜性生活 | 亚洲精品一区二区三区高潮 | 又黄又爽又色无遮挡免费 | 蜜臀av免费一区二区三区 | 国产精品亚洲综合久久 | 日韩久久在线 | 欧美一级片免费在线观看 | 久久免费的精品国产v∧ | 国产一区国产二区在线观看 | 国产在线不卡 | 婷婷在线免费视频 | 久久久久免费观看 | 中文字幕国产精品一区二区 | 中文字幕永久 | 婷婷资源站 | 九九热精 | 亚洲aaa毛片 | 精品久久99 | 免费在线色 | 久草在线免费播放 | 亚洲国产最新 | 91爱看片 | 久久精品成人热国产成 | 最新国产在线 | 国产精品18久久久久vr手机版特色 | 国产一区二区在线免费播放 | 欧美日韩另类视频 | 偷拍久久久 | 免费又黄又爽视频 | 日韩专区av | 精品影院 | 日本久久久久久久久久 | 免费看污的网站 | 国产毛片久久 | 国产一在线精品一区在线观看 | 久久精品视频在线免费观看 | 国产一区国产精品 | 精品av在线播放 | 亚洲成人av在线电影 | 欧美精品免费在线观看 | 久久不见久久见免费影院 | 四虎在线观看网址 | 日韩欧美精品免费 | 可以免费观看的av片 | 日韩av免费在线电影 | 香蕉视频在线免费 | 人人爽人人爽人人爽学生一级 | 麻豆综合网 | 久久免费公开视频 | 久久精品毛片 | av成人动漫| 亚洲综合一区二区精品导航 | 91av在线播放视频 | 少妇性bbb搡bbb爽爽爽欧美 | 干干日日 | 99国产一区二区三精品乱码 | 国产最新视频在线 | 国产福利91精品 | 深爱综合网 | 一级黄色片在线播放 | 97超级碰碰碰碰久久久久 | 91精品免费| 国产小视频在线免费观看视频 | 草久久久久 | 国产黄色一级大片 | 日韩av影片在线观看 | 日日碰狠狠躁久久躁综合网 | 日韩欧美国产精品 | 久久亚洲免费视频 | 国产福利精品一区二区 | 一区二区三区高清在线观看 | 欧美一区二区三区在线 | 美女视频永久黄网站免费观看国产 | 97精品一区二区三区 | 久久久久久久久久久久亚洲 | 天堂va在线观看 | 西西大胆啪啪 | 日本黄色免费网站 | 亚洲午夜小视频 | 在线免费观看的av网站 | 久久都是精品 | 久草在线免费在线观看 | 日韩视频一区二区三区 | 久久久2o19精品 | 国产欧美高清 | www日韩在线 | 人人要人人澡人人爽人人dvd | 久久一精品 | 亚洲成av人片在线观看香蕉 | 免费日韩 精品中文字幕视频在线 | 中文字幕不卡在线88 | 六月丁香在线观看 | 久艹视频在线免费观看 | 99热精品国产一区二区在线观看 | 超碰国产在线播放 | 亚洲国产网站 | 国产分类视频 | 99这里精品 | 免费看成年人 | 97网| 国产精品久久久久免费观看 | 在线小视频国产 | 精品亚洲欧美一区 | 99热精品在线观看 | 激情婷婷丁香 | 国产精品国产亚洲精品看不卡15 | 国产成人精品一区二区在线观看 | 超碰九九| 日本在线观看一区二区三区 | 黄色特级片 | 欧美日一级片 | bbbb操bbbb| 欧美国产亚洲精品久久久8v | 国产亚洲一级高清 | 天天干天天射天天插 | 黄色av电影免费观看 | 午夜精品久久久久久久99婷婷 | 日韩欧美在线不卡 | 午夜天使| 黄网站色成年免费观看 | 一区免费观看 | a一片一级 | 亚洲一区二区黄色 | 日韩av视屏 | 91精品啪在线观看国产 | 久久久久久国产精品999 | 精品999在线观看 | 色综合久久综合中文综合网 | 97超碰人人澡人人爱学生 | 亚洲国产成人精品久久 | 狠狠搞,com | 国产 在线 日韩 | 伊人狠狠色丁香婷婷综合 | 国产精品av免费 | 伊人五月天综合 | 国产麻豆剧传媒免费观看 | 九九99| 亚洲色图27p| 夜夜嗨av色一区二区不卡 | 99在线精品免费视频九九视 | 大型av综合网站 | 人人爽夜夜爽 | 中文字幕亚洲国产 | 国产亚洲精品久久久久久 | 黄色午夜 | 日韩a级黄色片 | 久久美女电影 | 亚洲高清视频在线观看免费 | 天天操夜夜爱 | 午夜精品一区二区三区免费视频 | 国产手机在线观看 | 狠狠色伊人亚洲综合成人 | 国产精品久久久久久一区二区 | 国产精品久久久久永久免费观看 | 日韩和的一区二在线 | 中文字幕在线观看第一区 | 国产麻豆精品95视频 | 国产在线视频导航 | 最近中文字幕高清字幕免费mv | 亚洲精品国产区 | 亚洲欧洲日韩 | 久久性生活片 | 免费看片成年人 | 一级黄色网址 | 成人黄色大片在线观看 | 丝袜护士aⅴ在线白丝护士 天天综合精品 | 国内精品久久久久久久 | 999热视频 | 开心丁香婷婷深爱五月 | 国产精品av久久久久久无 | 成人国产网站 | 日日干激情五月 | 午夜色大片在线观看 | 中文字幕欧美日韩va免费视频 | 国产九九精品 | 五月综合| 久久99精品久久久久婷婷 | 黄色在线免费观看网址 | 久草在线手机视频 | 在线亚洲高清视频 | 国产视频一区二区在线播放 | 丁香电影小说免费视频观看 | 色91av| 丝袜美腿av | 粉嫩av一区二区三区四区在线观看 | 国产高清视频网 | 国产视频97| 国产性xxxx| 色婷婷综合久久久久中文字幕1 | 久久男人免费视频 | 天天艹日日干 | 在线v片免费观看视频 | 欧美性大战久久久久 | 国产在线2020 | 一区二区三区四区在线 | 久草| 丁香婷婷色 | 国产成人61精品免费看片 | 国产做a爱一级久久 | 国产精品久久久久久久久软件 | 成人久久影院 | 久久激情网站 | 97视频在线免费播放 | 激情小说网站亚洲综合网 | 91亚洲精品久久久中文字幕 | 国产综合久久 | 国产在线观看一 | 国产精品久久久精品 | 欧美va天堂va视频va在线 | 最近中文字幕mv免费高清在线 | 国产最新在线观看 | 在线观看视频日韩 | 亚洲久草视频 | 欧美日韩免费一区二区 | 亚洲第一av在线 | 国产色综合天天综合网 | 天天操人人干 | 四虎在线免费观看 | 天天综合网久久 | 国产韩国日本高清视频 | 99久久国产免费,99久久国产免费大片 | 成年人免费av网站 | 天天天天天天天天操 | 免费看毛片网站 | 六月丁香激情综合色啪小说 | 免费看短 | 色com| 99久久99久久精品国产片果冰 | 欧美 日韩 国产 成人 在线 | 一级免费av | 久久精品牌麻豆国产大山 | 丁香视频免费观看 | 日本久久久久 | 国产午夜在线观看视频 | 久久天天躁狠狠躁亚洲综合公司 | 免费观看黄色av | 99久久这里只有精品 | 黄色www| 久久久久久久福利 | 久久综合五月婷婷 | 国产乱码精品一区二区蜜臀 | av不卡中文字幕 | 亚洲国产中文字幕 | 最近最新mv字幕免费观看 | 中文字幕在线观看网站 | av高清免费| 三级在线播放视频 | 亚洲高清国产视频 | 久久亚洲欧美 | 成人9ⅰ免费影视网站 | 国产成人av片| av最新资源 | 在线日韩亚洲 | 久久中文字幕在线视频 | 国产男女爽爽爽免费视频 | 米奇影视7777 | 欧美性生活免费看 | 欧美一区二区三区激情视频 | 91成人免费看 | 亚洲狠狠婷婷综合久久久 | 国产精品中文在线 | 国产成人精品亚洲 | 热久久这里只有精品 | 成人性生活大片 | 日韩中文字幕网站 | 丁香婷婷色综合亚洲电影 | 天天综合天天做 | 日本三级久久 | 色国产精品一区在线观看 | 韩国精品福利一区二区三区 | 天天色天天草天天射 | 天天操狠狠干 | 一级淫片在线观看 | 日韩欧美在线综合网 | www.亚洲精品 | 久久久国产精品人人片99精片欧美一 | 成人一级| 久草久草在线观看 | 麻豆网站免费观看 | 在线视频a| 99c视频在线| 成人黄色小说在线观看 | 337p日本欧洲亚洲大胆裸体艺术 | 久久久天天操 | 日韩a在线看 | 91中文字幕在线视频 | 男女激情片在线观看 | 国产一二三四在线视频 | 一区二区精品久久 | 二区视频在线观看 | 91九色视频国产 | 亚洲国产人午在线一二区 | 国产精品第54页 | 色婷婷久久久综合中文字幕 | 日日麻批40分钟视频免费观看 | 国产精品久久久久永久免费看 | 91日韩国产| 黄色软件视频网站 | 成人黄色小说在线观看 | a黄色一级 | 免费观看av | 夜夜操天天 | 九九九国产 | 国产精品你懂的在线观看 | 综合在线亚洲 | 中日韩在线 | 久久在线精品 | 日本精品视频在线观看 | 日本婷婷色 | 四虎精品成人免费网站 | 色综合久久久久综合体桃花网 | 在线婷婷 | 婷婷视频在线观看 | 亚洲天天在线日亚洲洲精 | 天天综合网~永久入口 | 久久调教视频 | 国产黄色片免费在线观看 | 欧美日韩在线观看视频 | 精品国产乱码久久久久久三级人 | 2019免费中文字幕 | 婷婷精品国产一区二区三区日韩 | 国产中出在线观看 | 午夜视频在线观看一区二区三区 | 福利网址在线观看 | 日韩av成人 | 日韩欧美视频在线观看免费 | 亚洲精品视频一 | 91传媒免费在线观看 | 99精品福利视频 | 久久久国产精品人人片99精片欧美一 | 久久久久久久福利 | 国产成人精品aaa | 在线观看国产日韩欧美 | 亚洲视频网站在线观看 | 狠狠色综合网站久久久久久久 | av在线免费在线观看 | 午夜久久久久久久久久久 | 五月婷婷激情综合网 | av短片在线观看 | 91香蕉视频黄 | 国产精品中文字幕av | 人人揉人人揉人人揉人人揉97 | 亚洲一区久久久 | 日韩电影一区二区三区 | 国产69精品久久99的直播节目 | 国产99区 | 在线成人免费电影 | 四川bbb搡bbb爽爽视频 | 成人av网站在线播放 | 日韩资源在线观看 | 日本系列中文字幕 | 国产白浆在线观看 | 日韩精品免费一线在线观看 | 亚洲综合色网站 | 久久精品99精品国产香蕉 | 99久久这里有精品 | 97高清视频 | 成人免费视频播放 | 国产视频在线免费 | 黄污网站在线 | 国产精品欧美精品 | 一本一本久久a久久精品综合妖精 | 亚洲永久精品一区 | 精品国产视频一区 | 久久久久综合精品福利啪啪 | 成人播放器 | 人人精品久久 | 草久电影 | 成人黄色短片 | 91免费观看国产 | 国产香蕉在线 | 亚洲乱亚洲乱妇 | 91精品啪在线观看国产线免费 | 久久国产精品一区二区 | 日韩黄色软件 | 成人免费在线视频观看 | 亚洲女同ⅹxx女同tv | 久久天天操 | 91九色蝌蚪视频在线 | www.福利| 亚洲一区视频免费观看 | 国产一二区视频 | 中文字幕在线观看一区二区三区 | 一区二区在线不卡 | 97精品视频在线播放 | 国产精品久久电影观看 | 国产午夜精品一区二区三区 | 久久国产精品影视 | 2024av| 日韩午夜三级 | 中文字幕制服丝袜av久久 | 99re6热在线精品视频 | 99热精品在线 | 91精品无人成人www | 五月天av在线 | 成人黄色片免费 | 亚洲国产免费 | 国产黄网在线 | 国产精品一区二区三区在线看 | 日韩一级黄色av | 国产999| 国产精品资源在线观看 | www黄色大片 | 日韩欧美综合精品 | 欧美日韩国产一区二区三区在线观看 | 大胆欧美gogo免费视频一二区 | 五月亚洲 | 中文字幕在线观看网站 | 91在线一区二区 | 九九九热视频 | 亚洲免费av观看 | 国产小视频精品 | 亚洲精品免费观看 | 婷婷福利影院 | 狠狠色丁香久久婷婷综合五月 | 久久久视屏 | 日日爽天天操 | 免费色婷婷 | 嫩草伊人久久精品少妇av | 日韩www在线 | 欧美亚洲久久 | 五月婷婷激情综合网 | 亚洲九九精品 | 国产黄色视 | 深爱激情开心 | 成人一区电影 | 久久综合久色欧美综合狠狠 | 国产丝袜在线 | 婷婷久久一区二区三区 | 1024久久| 一区二区理论片 | 久久视频在线视频 | 中文字幕黄色网 | 免费看国产一级片 | 白丝av免费观看 | 欧美一级性生活视频 | 日韩视频免费观看高清完整版在线 | 精品少妇一区二区三区在线 | 91九色视频国产 | 久久综合影音 | 麻豆免费在线视频 | 亚洲少妇久久 | 国产一区欧美一区 | 欧美小视频在线观看 | 久久国产视屏 | 国产精品视频在线看 | 高清视频一区二区三区 | 午夜免费视频网站 | 免费观看成人网 | 欧美精品免费一区二区 | 亚洲在线观看av | 国产精品女 | 三级黄色在线观看 | 久久在线免费视频 | 美女禁18| 久草网在线 | 最近中文字幕第一页 | 国产裸体永久免费视频网站 | 久久精品欧美一区 | 日日夜夜精品免费视频 | 国产一二三区在线观看 | 婷婷六月天综合 | 中文字幕一区二区三区四区久久 | 国产999精品久久久久久麻豆 | 亚洲成av人片一区二区梦乃 | 亚洲精品国久久99热 | 瑞典xxxx性hd极品 | 蜜臀久久99精品久久久无需会员 | 17videosex性欧美| 国产99黄| 久久电影中文字幕视频 | 久久久在线 | 91大神免费视频 | 国产精品扒开做爽爽的视频 | 欧美精品999 | av黄色免费在线观看 | 久久精选| 天天av资源 | 99精品在这里 | 超碰成人av| 在线婷婷 | 瑞典xxxx性hd极品 | 日韩专区av| 99精品免费视频 | 福利一区二区 | 少妇精69xxtheporn | 天天爱天天操天天射 | 亚洲在线视频免费 | 欧美亚洲一级片 | 狠狠操狠狠干天天操 | 黄色一区三区 | 成人三级视频 | 超碰公开97| 亚洲黄色在线 | 国产精品毛片一区二区在线 | 二区视频在线 | 最近中文字幕高清字幕在线视频 | 夜夜夜夜猛噜噜噜噜噜初音未来 | 日韩欧美一区二区在线播放 | 99久久这里只有精品 | 国产精品9999久久久久仙踪林 | av高清免费在线 | 亚洲一区视频在线播放 | 一本一道久久a久久综合蜜桃 | 日韩久久久久久久 | 一区二区免费不卡在线 | 欧美日韩在线观看视频 | 精品国产aⅴ一区二区三区 在线直播av | 狠狠伊人| 久久夜色精品亚洲噜噜国4 午夜视频在线观看欧美 | 丁香激情视频 | 欧美日韩中文国产一区发布 | 黄色免费网站下载 | 99热播精品| 久久精品网址 | 久操视频在线观看 | 国产精品九九九 | 超碰在线人人爱 | 国产91免费在线 | 欧美成人影音 | 亚洲精品影院在线观看 | 日韩免费| 欧美日韩精品影院 | 天天操天天舔天天干 | 九草视频在线观看 | 黄色成品视频 | 久久黄色免费视频 | 麻豆首页| 亚洲日韩中文字幕 | 成人久久久久 | 亚洲一区网站 | 日韩av免费在线看 | 伊人天堂网| 99国产在线观看 | 日日干网 | 中文字幕永久在线 | 亚洲黄色av| 天天噜天天色 | 久久69av| 在线观看成人小视频 | 久久精品国产第一区二区三区 | www激情com| 91成人破解版 | 人人爽人人舔 | 国产视频一 | 亚洲精品久久久久久久不卡四虎 | 亚洲精品黄 | 黄色小网站在线 | 9在线观看免费高清完整版在线观看明 | 国产一区成人 | 欧美动漫一区二区三区 | 亚洲综合视频在线播放 | 日韩色av色资源 | 精品久久久久一区二区国产 | 国产一区二区在线观看免费 | 91视频在线自拍 | 欧美日韩免费在线观看视频 | 欧美久久99| 超碰在线人人艹 | 国产成人av电影 | 五月激情六月丁香 | 69精品| 黄色成人免费电影 | 日韩中文字幕免费看 | 国产一线二线三线在线观看 | 国产日韩欧美在线影视 | 亚洲综合少妇 | 丁香综合五月 | 三级黄色网址 | 美女久久 | 成 人 黄 色 视频播放1 | 天天插日日操 | 免费日韩 精品中文字幕视频在线 | 国产精品视频免费在线观看 | 欧美淫视频| 爱爱一区 | 国内精品国产三级国产aⅴ久 | 91探花在线视频 | 人人爱人人射 | 国产成人a v电影 | 久久国产精品免费视频 | 天天干天天弄 | 五月开心激情 | 999日韩| 天天综合精品 | 日av免费 | 美女黄频在线观看 | a'aaa级片在线观看 | 国产黄色片在线 | 四虎在线免费观看 | 激情伊人五月天 | www.色五月 | 日韩欧美不卡 | 亚洲在线成人精品 | 国产精品一区二区久久精品爱微奶 | 亚洲精品永久免费视频 | 成年人视频在线观看免费 | 午夜av在线免费 | 99爱精品视频 | 久久99久久99精品 | 97人人视频| 黄a网 | 亚洲精选在线观看 | 91麻豆精品国产91久久久久久 | 天天草天天色 | 在线观看视频一区二区 | 99精品国产99久久久久久97 | 午夜视频播放 | 福利视频入口 | 亚洲综合色站 | 国产成人久久久久 | 日本黄色免费在线观看 | 一区二区三区四区影院 | 婷婷精品国产欧美精品亚洲人人爽 | 久久精品一区二区三区四区 | 免费h精品视频在线播放 | 91麻豆看国产在线紧急地址 | 日韩视频免费观看高清 | 在线观看免费国产小视频 | 五月婷婷网站 | 日韩无在线 | 久久久久国产精品免费免费搜索 | 久久国产一区二区三区 | 视频国产 | 久久蜜臀av | 国产啊v在线观看 | 久久久久国产精品免费免费搜索 | 在线观看激情av | 在线国产中文 | 99精品国产福利在线观看免费 | 综合精品在线 | 久爱综合 | av在线播放快速免费阴 | 日韩一区二区三区免费电影 | 国产欧美日韩精品一区二区免费 | 久久久www成人免费精品张筱雨 | 日韩在线观看第一页 | 天天综合网天天综合色 | 日韩影视大全 | 亚洲激情中文 | 国产一级电影 | 天天干 夜夜操 | 国产精品18久久久久久不卡孕妇 | 日日爽夜夜操 | 五月天中文在线 | 日韩精品一区二区三区免费视频观看 | 国产精品岛国久久久久久久久红粉 | 精品久久一区 | 色综合久久久网 | 国产又粗又猛又色又黄视频 | 日韩欧美高清一区二区三区 | 国产成人一区二区三区影院在线 | 菠萝菠萝在线精品视频 | 97人人爽| av福利网址导航 | 亚洲精品网站在线 | 在线观看亚洲成人 | 亚州精品在线视频 | 91重口视频| 成在线播放| 免费在线黄色av | 久久九九精品久久 | 久久尤物电影视频在线观看 | 国产精品av久久久久久无 | 欧美在线1 | 久久精品视频在线观看 | 天天射天天干天天 | 国产高清99 | 青春草国产视频 | 国产精品va最新国产精品视频 | 亚洲 欧美 成人 | 色久五月 | 色综合久久久久久久久五月 | 亚洲国产精品人久久电影 | 天天狠狠干 | 国产精品麻豆三级一区视频 | 中文字幕免费观看 | 亚洲网久久| 天天天干 | 国产精品自产拍在线观看 | 日韩免费在线观看视频 | 日韩精品中文字幕在线播放 | 99国产免费网址 | 三级黄色在线观看 | 亚洲女在线 | 九九九视频精品 | 国产美女精品视频 | 人人盈棋牌 | 国产精品 欧美 日韩 | 久久亚洲区 | 国产精品片 | 免费看黄20分钟 | 欧美一区免费在线观看 | 在线观看免费一级片 | 日韩网页 | 成人av片免费看 | 亚洲永久精品国产 | 欧美激情精品久久久久久 | 少妇bbw撒尿 | 91av九色 | 制服丝袜在线 | 久久综合色影院 | 久久久999精品视频 国产美女免费观看 | 男女拍拍免费视频 | 婷婷激情在线观看 | 青青河边草免费观看完整版高清 | 国产69精品久久99不卡的观看体验 | 日韩二区在线观看 | 欧美激情综合五月色丁香小说 | 国产综合片 | 亚洲 欧洲av | 亚洲美女精品视频 | 国产大陆亚洲精品国产 | 日韩电影在线看 | 麻豆系列在线观看 | 亚洲福利精品 | 91亚洲精品国偷拍 | 久久久高清 | 国产麻豆精品传媒av国产下载 | 日韩中文字幕在线不卡 | 日韩免费在线视频观看 | 欧美另类高潮 | 91cn国产在线 | 国产小视频免费在线网址 | 成人一级黄色片 | 精品亚洲欧美一区 | 奇米777777| 伊人超碰在线 | 欧美日韩久久不卡 | 操少妇视频 | 亚洲国产片色 | 天天射射天天 | 99精品国产成人一区二区 | 国产美女精品 | 91在线精品播放 | 日韩91精品 | 色无五月 | 中文字幕免费久久 | 992tv在线成人免费观看 | 中文字幕免费不卡视频 | 精品在线观看国产 | 六月丁香在线视频 | 国产在线观看a | 韩国精品一区二区三区六区色诱 | 91精品免费视频 | 久草视频免费观 | 中文在线免费观看 | 婷婷精品在线视频 | 亚洲视频精品在线 | 国产精品一区二区三区免费看 | 99精品欧美一区二区蜜桃免费 | 91精品一区国产高清在线gif | 久久亚洲免费视频 | 国产精品二区在线观看 | 色婷婷综合久久久中文字幕 | 日韩欧美xx | 在线看片成人 | 五月婷激情 | 久久午夜精品视频 | 激情综合色综合久久综合 | 免费看短 | 久久久久久久久影院 | 日韩欧美在线观看一区二区 | 成人免费色 | 国产在线国偷精品产拍免费yy | 黄免费在线观看 | 韩日精品在线 | 成人啪啪18免费游戏链接 | 久久精品视频在线观看免费 | 欧美日比视频 | 欧美精品久久久久久 | 国产亚洲午夜高清国产拍精品 | 一区二区三区播放 | 亚洲一区av | 精品久久网 | 午夜狠狠干 | 国产精品第| 久久无码av一区二区三区电影网 | 欧美黑人巨大xxxxx | 国产麻豆精品传媒av国产下载 | 国内精品久久久久影院优 | 最新av电影网站 | 在线免费观看羞羞视频 | 免费观看91视频 | 香蕉久草 | 激情开心站 | 色综合狠狠干 | 九九涩涩av台湾日本热热 | 国产特级毛片 | 日韩在线免费播放 | av中文在线影视 | 久久精品79国产精品 | 激情婷婷色| 欧美一级艳片视频免费观看 | 国产成人精品午夜在线播放 | 狠狠躁夜夜躁人人爽超碰91 | 97超碰中文字幕 | 国产a高清 | 少妇bbb搡bbbb搡bbbb | 亚洲美女在线一区 | 777奇米四色 | 欧美午夜精品久久久久久浪潮 | 在线成人免费 | 狠狠干婷婷色 | 最新亚洲视频 | 六月丁香激情网 | 国产黑丝一区二区 | 天躁狠狠躁 | 亚洲综合爱 | 高清视频一区 | 97免费视频在线播放 | 日韩av视屏| 欧美日韩精品在线一区二区 | 一区二区三区电影大全 | 欧美a级片网站 | 福利一区二区三区四区 | 日韩av三区 | 在线视频你懂得 | 欧美日韩亚洲在线 | 在线看成人 | www91在线观看 | 欧洲精品亚洲精品 | 午夜久操 | 欧美一区二区三区在线 | 网站在线观看你们懂的 | 麻豆视频免费观看 | 天天综合91 | av黄色一级片 | 99精品视频在线播放免费 | 欧美精品xxx| 成年人免费av | 久久刺激视频 | 欧美一级免费黄色片 | bbw av | 天天做天天爱夜夜爽 | 国产成人高清av | av在线免费不卡 | 国产精品久久久久久久av大片 | 日韩视频欧美视频 | 国产精品岛国久久久久久久久红粉 | 成人黄在线观看 | 天天操狠狠操夜夜操 | 国偷自产中文字幕亚洲手机在线 | 丁香婷婷综合色啪 | 国产亚洲成人网 | 国产亚洲视频系列 | 亚洲欧洲av在线 | 国产成人精品午夜在线播放 | 国产亚洲资源 | av日韩不卡| 日本性高潮视频 | 精品国产诱惑 | 色99久久 | av成人在线看 | 国产精品久久久久一区 | 久久久久免费精品国产小说色大师 | 亚洲精品高清一区二区三区四区 | 婷婷综合导航 | 日韩精品久久一区二区 | 亚州国产视频 | 午夜123| 成人国产网址 | 亚洲免费成人av电影 | 99av国产精品欲麻豆 | 手机看片中文字幕 | 久久香蕉一区 | 五月婷婷在线综合 | 亚洲1区在线 | 亚洲精品小视频在线观看 | 日韩色在线观看 | 欧美精品久久久久久久久久丰满 | 九九免费观看视频 | 青青河边草免费观看完整版高清 | 国产精品免费一区二区 | 91九色在线观看 | 欧美日韩国产精品一区 | 草久电影 | 91精品在线免费观看视频 | 中文高清av | 91麻豆国产 | 亚洲成a人片在线观看中文 中文字幕在线视频第一页 狠狠色丁香婷婷综合 | 91丨九色丨蝌蚪丨老版 | 九九九热| 国产xxxxx在线观看 | 激情久久久久久久久久久久久久久久 | 日韩在线欧美在线 | 密桃av在线| 亚洲三级精品 | 五月天激情开心 | 不卡av在线免费观看 | 天天草天天摸 | 国产精品2019 | 久久激情综合 | 91中文字幕 | 999久久久精品视频 日韩高清www | 欧美日韩在线视频观看 | 免费看污的网站 | 国产精品久久久久久久99 | www毛片com| 亚洲三级毛片 | 亚洲三级国产 | 久草久热 | 九九久久国产精品 | 欧美日韩一区二区三区免费视频 | 99热这里是精品 | 91视视频在线直接观看在线看网页在线看 | 毛片网在线观看 | 一本—道久久a久久精品蜜桃 | 在线观看免费高清视频大全追剧 | 91污在线| 国产精品都在这里 | 2000xxx影视| 在线播放一区二区三区 | 亚洲欧洲国产精品 | 精品国产一区二区三区久久影院 | 日韩精品播放 | 久久www免费人成看片高清 | 97在线免费视频观看 | 久久久电影 | 国产精品免费视频一区二区 | 激情九九 | 日韩一区二区三区在线看 | 奇米网777 | 中文字幕最新精品 | 97免费 | 欧美va天堂在线电影 | 超碰在线资源 | 亚洲 精品在线视频 | 午夜精品视频福利 | 精品一区三区 | 成人午夜影院在线观看 | 国产一级片一区二区三区 | 在线观看免费 | 免费看三级 | 日韩在线免费高清视频 | 久久久一本精品99久久精品 | 亚洲一区日韩 | 亚洲一区天堂 | 日韩免费一区 | 久久精视频 | 久久er99热精品一区二区三区 |