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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

【数据分析师-数据分析项目案例一】600w+条短租房数据案例分析

發(fā)布時(shí)間:2023/12/10 编程问答 39 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【数据分析师-数据分析项目案例一】600w+条短租房数据案例分析 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

短租房數(shù)據(jù)案例分析

  • 1 前言
    • 1.1 數(shù)據(jù)集
    • 1.2 數(shù)據(jù)分析思路梳理
  • 2 數(shù)據(jù)分析
    • 2.1 數(shù)據(jù)加載
    • 2.2 數(shù)據(jù)查看
  • 3 數(shù)據(jù)可視化
    • 3.1 每天房屋入住率
    • 3.2 房屋月份價(jià)格走勢
    • 3.3 房屋星期價(jià)格特征
    • 3.4 不同社區(qū)的房源數(shù)量
    • 3.5 房源評(píng)分情況
    • 3.6 房源價(jià)格情況
    • 3.7 不同社區(qū)與房源價(jià)格的關(guān)系
    • 3.8 品質(zhì)房和普通房
    • 3.8 配套設(shè)施和房價(jià)的關(guān)系
    • 3.9 房型和房價(jià)的關(guān)系
    • 3.10 配套設(shè)施必備類型
    • 3.11 床位的數(shù)量和房價(jià)的關(guān)系
    • 3.12 關(guān)聯(lián)關(guān)系探索
  • 4 特征工程
  • 5 機(jī)器學(xué)習(xí)
    • 5.1 隨機(jī)森林
    • 5.2 LightGBM

手動(dòng)反爬蟲,禁止轉(zhuǎn)載: 原博地址 https://blog.csdn.net/lys_828/article/details/119940333(CSDN博主:Be_melting)

知識(shí)梳理不易,請尊重勞動(dòng)成果,文章僅發(fā)布在CSDN網(wǎng)站上,在其他網(wǎng)站看到該博文均屬于未經(jīng)作者授權(quán)的惡意爬取信息

1 前言

1.1 數(shù)據(jù)集

  • 本案例中的數(shù)據(jù)來自于愛彼迎(Airbnb)網(wǎng)站2018-2019年度的多倫多市的真實(shí)數(shù)據(jù)。

  • 數(shù)據(jù)集中包含listings數(shù)據(jù)集,約有2萬條數(shù)據(jù),記錄著所有的房屋信息,包括價(jià)格在內(nèi)的幾十項(xiàng)信息字段。

  • 數(shù)據(jù)集中的另一個(gè)數(shù)據(jù)集是calendar,包含約650萬條的租房交易數(shù)據(jù),擁有每一天每一所住房的入駐信息。

1.2 數(shù)據(jù)分析思路梳理

常規(guī)數(shù)據(jù)分析,數(shù)據(jù)字段載入和常見數(shù)據(jù)ETL四板斧的清洗處理

  • 方法1: .isnull().sum() 檢查空值情況

  • 方法2: .shape 檢查數(shù)據(jù)尺寸

  • 方法3: .describe() 查看數(shù)據(jù)字段數(shù)據(jù)類型

  • 方法4: .value_counts() 查看數(shù)據(jù)集合數(shù)據(jù)分布情況

數(shù)據(jù)分析師最終是要把結(jié)果以可視化的方式進(jìn)行呈現(xiàn),所以對于分析得到的數(shù)據(jù)要進(jìn)行圖表化展示。由于本案例主要研究的目標(biāo)是價(jià)格的依賴因素,所以我們采用價(jià)格和另一個(gè)因素的對比作圖來觀察。常見圖形包括:

  • 圖形1: 柱狀圖,來觀察數(shù)據(jù)的分布情況

  • 圖形2: 箱型圖,來觀察數(shù)據(jù)的范圍

  • 圖形3: 散點(diǎn)矩陣圖,來觀察不同因素間的相互聯(lián)系

  • 圖形4: 熱力圖,來快速篩選出高關(guān)聯(lián)度的信息因素

傳統(tǒng)的數(shù)據(jù)分析一般就會(huì)到此為止,但是對于探索試數(shù)據(jù)分析來說,事情才剛剛開始,為了更深入的進(jìn)行數(shù)據(jù)分析,本案例開始引入機(jī)器學(xué)習(xí)模型,由于機(jī)器學(xué)習(xí)模型本質(zhì)上就是數(shù)學(xué)模型,所以我們需要對數(shù)據(jù)集合進(jìn)行特征工程,把數(shù)據(jù)集合變?yōu)榉奖隳P妥R(shí)別的數(shù)組,本例中采用如下幾個(gè)步驟:

  • 步驟1:數(shù)據(jù)的標(biāo)準(zhǔn)化
  • 步驟2:缺失數(shù)據(jù)的修復(fù)
  • 步驟3:字符串類數(shù)據(jù)的編碼化
  • 步驟4:數(shù)據(jù)類型轉(zhuǎn)換和單位統(tǒng)一

對于本例中的眾多字段用簡單的線性回歸等模型已經(jīng)不能很好的捕捉出數(shù)據(jù)的動(dòng)態(tài),所以我們采用一些符合機(jī)器學(xué)習(xí)模型,也就是利用一系列若關(guān)聯(lián)的特性組合出強(qiáng)特性的模型,在本例中我們采用兩個(gè)模型:

  • 模型1 :隨機(jī)森林模型,這個(gè)模型是一個(gè)復(fù)合模型,對特征和標(biāo)簽進(jìn)行任意排列組合,然后通過概率方式進(jìn)行建模,最大程度的降低過擬合的出現(xiàn)。

  • 模型2 :微軟的LightGBM模型也是最近幾年非常火的復(fù)合模型,在本例中我們使用這個(gè)模型和隨機(jī)森林進(jìn)行模型對比,利用R2值來選出最合適的機(jī)器學(xué)習(xí)模型。

2 數(shù)據(jù)分析

2.1 數(shù)據(jù)加載

代碼編寫是在Anaconda集成環(huán)境下的jupyter notebook上進(jìn)行,首先導(dǎo)入數(shù)據(jù)分析所需要的模塊以及數(shù)據(jù)集

import pandas as pd import numpy as np import matplotlib.pyplot as plt import seaborn as sns %matplotlib inlinecalendar = pd.read_csv('toroto/calendar.csv.gz') print('We have', calendar.date.nunique(), 'days and', calendar.listing_id.nunique(), 'unique listings in the calendar data.')

輸出結(jié)果如下:(數(shù)據(jù)包含了365天共17333份房間信息,nunique()方法是進(jìn)行字段的唯一值查詢,返回字段中唯一元素的個(gè)數(shù))

2.2 數(shù)據(jù)查看

(1)數(shù)據(jù)維度和字段信息

calendar.shapecalendar.head()

輸出結(jié)果如下:(共有630w+條交易記錄,4個(gè)字段。listing_id: 房屋數(shù)據(jù)編號(hào), date: 當(dāng)前記錄時(shí)間, available: 當(dāng)前房間是否沒被租賃, price 如果沒有被租賃,則顯示價(jià)格)

(2)交易的起止日期

calendar.date.min(), calendar.date.max()

輸出結(jié)果如下:(交易的時(shí)間范圍是在2018年10月6號(hào)至2019年10月5號(hào),整整一年的時(shí)間)
(3)字段缺失值和字段統(tǒng)計(jì)

calendar.isnull().sum()calendar.available.value_counts()

輸出結(jié)果如下:(price字段,由于房子出租后,就沒有價(jià)格顯示,只有未出租才有價(jià)格,所以該字段存在著缺失值;available字段中f (false) 代表已經(jīng)被租用 , t(true) 代表可以被出租)

3 數(shù)據(jù)可視化

3.1 每天房屋入住率

讀取的數(shù)據(jù)中包含了1w多套房源,共有600w+交易記錄,涵蓋了交易的起止日期,因此可以探究每天房屋的入住情況(當(dāng)天入住的數(shù)量除以總的房間數(shù)量)。具體分析的步驟如下:

#提取時(shí)間日期和房間狀態(tài)字段并賦值新變量 calendar_new = calendar[['date', 'available']] #添加一個(gè)新的字段記錄房源是夠被出租 calendar_new['busy'] = calendar_new.available.map( lambda x: 0 if x == 't' else 1) #按照時(shí)間日期進(jìn)行分組求解每日入住的均值并重置索引 calendar_new = calendar_new.groupby('date')['busy'].mean().reset_index() #最后將時(shí)間日期轉(zhuǎn)化為datetime時(shí)間格式 calendar_new['date'] = pd.to_datetime(calendar_new['date']) #查看處理后的結(jié)果前五行 calendar_new.head()

輸出結(jié)果如下:(date字段就是時(shí)間日期,busy字段就代表這個(gè)每天的平均入住率)

輸出結(jié)果匯總發(fā)現(xiàn)有個(gè)粉紅色的警示輸出提醒xxxWarning,需要了解一下pandas在進(jìn)行數(shù)據(jù)處理和分析過程中會(huì)存在版本和各類模塊兼容的情況,xxxWarning是一種善意的提醒,并不是xxxError,這類提醒不會(huì)影響程序的正常運(yùn)行,也可以導(dǎo)入模塊進(jìn)行提醒忽略

import warnings warnings.filterwarnings('ignore')

導(dǎo)入運(yùn)行后,重新執(zhí)行上述分析過程,輸出結(jié)果如下:(此時(shí)就沒有粉紅色的xxxWarning提醒了)

每天房屋入住率求解完畢后,就可以進(jìn)行可視化展現(xiàn),由于繪制圖形的x軸部分為時(shí)間日期,且時(shí)間跨度較大,一般是采用折線圖進(jìn)行繪制圖形

#設(shè)置圖形的大小尺寸 plt.figure(figsize=(10, 5)) #指定x和y軸數(shù)據(jù)進(jìn)行繪制 plt.plot(calendar_new['date'], calendar_new['busy']) #添加圖形標(biāo)題 plt.title('Airbnb Toronto Calendar') #添加y軸標(biāo)簽 plt.ylabel('busy')

輸出結(jié)果如下:(通過圖中我們可以看到,10-11月是最繁忙的,然后是第二年的7-9月,由于這份數(shù)據(jù)是來自愛彼迎多倫多地區(qū),所以可以推斷出整個(gè)短租房的入住率是在下半年會(huì)比較旺盛)

3.2 房屋月份價(jià)格走勢

此次有兩個(gè)分析技巧,由于價(jià)格部分帶有$符號(hào)和,號(hào),所以我們需要對數(shù)據(jù)進(jìn)行格式化處理,并且轉(zhuǎn)換時(shí)間字段。處理完時(shí)間字段后,使用柱狀圖進(jìn)行數(shù)據(jù)分析

#先將時(shí)間日期字段轉(zhuǎn)化為datetime字段方便提取月份數(shù)據(jù) calendar['date'] = pd.to_datetime(calendar['date']) #清洗price字段中的$符號(hào)和,號(hào),最后轉(zhuǎn)化為浮點(diǎn)數(shù)方便記性計(jì)算 calendar['price'] = calendar['price'].str.replace(',', '') calendar['price'] = calendar['price'].str.replace('$', '') calendar['price'] = calendar['price'].astype(float)#按照月份進(jìn)行分組匯總求解價(jià)錢的均值 mean_of_month = calendar.groupby(calendar['date'].dt.strftime('%B'),sort=False)['price'].mean() #繪制條形圖 mean_of_month.plot(kind = 'barh' , figsize = (12,7)) #添加x軸標(biāo)簽 plt.xlabel('average monthly price')

輸出結(jié)果如下:(上一次轉(zhuǎn)化datetime數(shù)據(jù)類型是calendar_new變量中的date字段,但是calendar變量中的date字段的數(shù)據(jù)類型還仍是字符串?dāng)?shù)據(jù)類型)

如果想要月份按照1-12月的方式進(jìn)行順序輸出,可以重新指定索引。已有的索引放置在一個(gè)列表中,排好序后傳入reindex()函數(shù)中,操作如下

#先查看原來的索引值 mean_of_month.index#根據(jù)原有的索引值調(diào)整顯示的位置順序 month_index = ['December', 'November', 'October', 'September', 'August','July','June', 'May', 'April','March', 'February', 'January'] #重新指定索引后繪制圖形 mean_of_month = mean_of_month.reindex(month_index) mean_of_month.plot(kind = 'barh' , figsize = (12,7)) plt.xlabel('average monthly price')

輸出結(jié)果如下:(圖中可以看出7月 8月和10月是平均價(jià)格最高的三個(gè)月)

3.3 房屋星期價(jià)格特征

#獲取星期的具體天數(shù)的名稱 calendar['dayofweek'] = calendar.date.dt.weekday_name #然后指定顯示的索引順序 cats = [ 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday', 'Sunday'] #提取要分析的兩個(gè)字段 price_week=calendar[['dayofweek','price']] #按照星期進(jìn)行分組求解平均價(jià)錢后重新設(shè)置索引 price_week = calendar.groupby(['dayofweek']).mean().reindex(cats) #刪除不需要的字段 price_week.drop('listing_id', axis=1, inplace=True) #繪制圖形 price_week.plot() #指定軸刻度的數(shù)值及對應(yīng)的標(biāo)簽值 ticks = list(range(0, 7, 1)) labels = "Mon Tues Weds Thurs Fri Sat Sun".split() plt.xticks(ticks, labels)#如果不想要顯示xticks信息,可以增添plt.show() plt.show()

輸出結(jié)果如下:(直接指定DataFrame繪制圖形,可能x軸的刻度和標(biāo)簽信息不會(huì)全部顯示,此時(shí)可以自行指定刻度數(shù)量和對應(yīng)的標(biāo)簽值。短租房本身大都為了旅游而存在,所以周五周六兩天的價(jià)格都比其他時(shí)間貴出一個(gè)檔次。周末雙休,使得入駐的時(shí)間為周五周六晚兩個(gè)晚上)

3.4 不同社區(qū)的房源數(shù)量

讀取另外一個(gè)數(shù)據(jù)文件,按照每個(gè)房源社區(qū)進(jìn)行分組,統(tǒng)計(jì)房源的數(shù)量(id字段對應(yīng)著房源獨(dú)特的編號(hào))

listings = pd.read_csv('toroto/listings.csv.gz') print('We have', listings.id.nunique(), 'listings in the listing data.')listings.groupby(by='neighbourhood_cleansed').count()[['id']].sort_values(by='id', ascending=False).head(10)

輸出結(jié)果如下:(兩個(gè)字段的分組求解過程基本就是最后一行代碼的執(zhí)行過程,最后還可以順帶按照字段進(jìn)行排序和查看數(shù)據(jù)量)

3.5 房源評(píng)分情況

通過對review_scores_rating評(píng)分字段進(jìn)行分布圖繪制,可以查看價(jià)格的分布區(qū)間范圍

#設(shè)置畫布大小尺寸 plt.figure(figsize=(12,6)) #繪制分布圖 sns.distplot(listings.review_scores_rating.dropna(), rug=True) #取消右側(cè)和上側(cè)坐標(biāo)軸 sns.despine()

輸出結(jié)果如下:(此處的評(píng)分標(biāo)準(zhǔn)為0-100分制,通過上述表格可以看出總體來看愛彼迎的房屋好評(píng)率非常高)

3.6 房源價(jià)格情況

前面探究了房源價(jià)格和星期之間的關(guān)聯(lián),但是房價(jià)字段自身的信息并沒有探究,可以使用describe查看價(jià)格的情況

listings['price'] = listings['price'].str.replace(',', '') listings['price'] = listings['price'].str.replace('$', '') listings['price'] = listings['price'].astype(float)listings['price'].describe()

輸出結(jié)果如下:(多倫多最昂貴的Airbnb房源價(jià)格為$ 12933 /晚(當(dāng)時(shí)的價(jià)錢,現(xiàn)在的價(jià)錢是$ 64818 /晚),以下是房屋的鏈接:https://www.airbnb.ca/rooms/16039481?locale=en。通過鏈接可以發(fā)現(xiàn)之所以比平均價(jià)貴出約100倍,主要是因?yàn)檫@處房屋是多倫多最時(shí)尚的社區(qū)中的藝術(shù)收藏家閣樓。這些藝術(shù)收藏的價(jià)值大幅的拉高了這處房源的價(jià)格,使其和平均值有100倍的差距)

如果需要查看一下最大值或者最小值對應(yīng)的記錄,可以使用argmax或者argmin如下代碼

listings.iloc[np.argmax(listings['price'])]

輸出結(jié)果如下:(通過name信息可以核實(shí),這份房源就是屬于Art Collector藝術(shù)收藏品 )

由于在數(shù)據(jù)分析中,我們需要服從正態(tài)分布的原則,對于這樣極端情況的存在,我們需要進(jìn)行清理,所以把異常的價(jià)格的數(shù)據(jù)進(jìn)行過濾,最終選擇的價(jià)錢是保留0-600之間的數(shù)據(jù)。具體要選取某一數(shù)值,需要看一下當(dāng)前數(shù)值以上對應(yīng)的房源信息數(shù)量占全體的比重,這里選取大于600以上的房源僅有200+套,占總比1w+的比例很小,而且房源免費(fèi)的只有7套

去掉極端值后我們繼續(xù)觀察現(xiàn)在的價(jià)格分布狀態(tài),繪制直方圖

plt.figure(figsize=(12,6)) listings.loc[(listings.price <= 600) & (listings.price > 0)].price.hist(bins=200) plt.ylabel('Count') plt.xlabel('Listing price') plt.title('Histogram of listing prices')

輸出結(jié)果如下:(分箱數(shù)量bins可以自由指定,可以看出價(jià)格主要是在30-200之間)

3.7 不同社區(qū)與房源價(jià)格的關(guān)系

前面探究了不同社區(qū)和房源數(shù)量之間的關(guān)系,這里可以進(jìn)一步探究不同社區(qū)和房源價(jià)錢之間的關(guān)系

plt.figure(figsize=(18,10)) sort_price = listings.loc[(listings.price <= 600) & (listings.price > 0)]\.groupby('neighbourhood_cleansed')['price']\.median()\.sort_values(ascending=False)\.index sns.boxplot(y='price', x='neighbourhood_cleansed', data=listings.loc[(listings.price <= 600) & (listings.price > 0)], order=sort_price) ax = plt.gca()ax.set_xticklabels(ax.get_xticklabels(), rotation=45, ha='right') plt.show()

輸出結(jié)果如下:(最好的社區(qū)不僅房源的最高價(jià)高,而且平均價(jià)格也是所有社區(qū)中最高的,很有代表性)

3.8 品質(zhì)房和普通房

在預(yù)定酒店時(shí),瀏覽頁面中常常會(huì)推出品質(zhì)房源和普通房源,在這份數(shù)據(jù)集中也是存在字段記錄這方面的信息,可以對比研究一下兩者的價(jià)錢情況

sns.boxplot(y='price', x='host_is_superhost', data=listings.loc[(listings.price <= 600) & (listings.price > 0)]) plt.show()

輸出結(jié)果如下:(品質(zhì)房源要比普通房源的價(jià)格要高)

3.8 配套設(shè)施和房價(jià)的關(guān)系

酒店中的軟裝特性和多少也是和房源的價(jià)錢有著密切的關(guān)系,可以依循探究不同社區(qū)的房源價(jià)格的方式進(jìn)行分析,代碼基本上進(jìn)行字段的修改就可以

plt.figure(figsize=(18,10)) sort_price = listings.loc[(listings.price <= 600) & (listings.price > 0)]\.groupby('property_type')['price']\.median()\.sort_values(ascending=False)\.index sns.boxplot(y='price', x='property_type', data=listings.loc[(listings.price <= 600) & (listings.price > 0)], order=sort_price) ax = plt.gca() ax.set_xticklabels(ax.get_xticklabels(), rotation=45, ha='right') plt.show()

輸出結(jié)果如下:(在今后繪制此類圖形時(shí)候,代碼可以直接復(fù)制后修改對應(yīng)的字段和限制的范圍即可。從這個(gè)圖中可以看到在數(shù)據(jù)處理時(shí),如果對于極端值不進(jìn)行處理,則會(huì)顯示出這樣怪異的情況,例如Aparthotel 公寓式酒店 這個(gè)關(guān)鍵詞的價(jià)格最高,但是通過boxplot我們又可以看出,其實(shí)只有一套這樣的房產(chǎn),所以數(shù)據(jù)并不完整。tend(帳篷)和parking space (停車位)這樣的關(guān)鍵詞也是數(shù)量很少的,導(dǎo)致了數(shù)據(jù)結(jié)果顯示不準(zhǔn)確)

根本原因就是分類中的數(shù)據(jù)值太少了,可以通過value_counts()進(jìn)行查看。對于這種數(shù)值偏少的分類也可以設(shè)定一個(gè)數(shù)值作為分界點(diǎn)進(jìn)行提取,或者根據(jù)展示需求直接提取前5、前10、前15的數(shù)據(jù)

3.9 房型和房價(jià)的關(guān)系

在租房時(shí)候,有整租有合租,還存在一些多人共用一間的情況(有點(diǎn)類似青年旅社),可以嘗試性探究不同的房型與房價(jià)之間的關(guān)系

sort_price = listings.loc[(listings.price <= 600) & (listings.price > 0)]\.groupby('room_type')['price']\.median()\.sort_values(ascending=False)\.index sns.boxplot(y='price', x='room_type', data=listings.loc[(listings.price <= 600) & (listings.price > 0)], order=sort_price) ax = plt.gca() ax.set_xticklabels(ax.get_xticklabels(), rotation=45, ha='right') plt.show()

輸出結(jié)果如下:(整租價(jià)格最貴,其次是合租,最便宜的就是多人共用)

除了查看字段中各房型的房價(jià)信息,也可以逆向思維,根據(jù)價(jià)格來看不同房型的出租的多少,通過堆疊圖來嘗試探究

listings.loc[(listings.price <= 600) & (listings.price > 0)].pivot(columns = 'room_type',values = 'price').plot.hist(stacked = True, bins=100) plt.xlabel('Listing price')

輸出結(jié)果如下:(有個(gè)明顯的分界線,就是在100前后整租房的出租的數(shù)量和其它兩種房型存在著較大的差距,100之前合租占據(jù)較大的比例,但是100以后就是整租的絕對優(yōu)勢了)

3.10 配套設(shè)施必備類型

酒店中房間的配套設(shè)施,比如wifi,衛(wèi)生間,開窗,24小時(shí)熱水等條件,嘗試探究出租房中必備的配套設(shè)施都有哪些,首先對amenities字段的數(shù)據(jù)進(jìn)行清洗,提取里面的具體設(shè)施

listings['amenities'].head()listings.amenities = listings.amenities.str.replace("[{}]", "").str.replace('"', "")listings['amenities'].head()

輸出結(jié)果如下:(需要對花括號(hào)和引號(hào)進(jìn)行去除,最后就是按照逗號(hào)進(jìn)行分割)

找出前20個(gè)最重要的便利設(shè)施

pd.Series(np.concatenate(listings['amenities'].map(lambda amns: amns.split(","))))\.value_counts().head(20)\.plot(kind='bar') ax = plt.gca() ax.set_xticklabels(ax.get_xticklabels(), rotation=45, ha='right', fontsize=12) plt.show()

輸出結(jié)果如下:(Wifi 暖氣 廚房等便利設(shè)施是最重要的部分。這一部分有個(gè)很常用的功能,就是對一個(gè)字段中多項(xiàng)元素進(jìn)行合并后進(jìn)行統(tǒng)計(jì)計(jì)數(shù)后繪制圖像)

配套設(shè)施和房價(jià)之間的關(guān)系。理解下面的前三行代碼將會(huì)有不少的收獲

#獲取字段中的唯一元素 amenities = np.unique(np.concatenate(listings['amenities'].map(lambda amns: amns.split(",")))) #對包含的元素進(jìn)行統(tǒng)計(jì)求平均值,排除空值 amenity_prices = [(amn, listings[listings['amenities'].map(lambda amns: amn in amns)]['price'].mean()) for amn in amenities if amn != ""] #按照元素作為索引,平均價(jià)格作為值 amenity_srs = pd.Series(data=[a[1] for a in amenity_prices], index=[a[0] for a in amenity_prices])#繪制前20的條形圖 amenity_srs.sort_values(ascending=False)[:20].plot(kind='bar') ax = plt.gca() ax.set_xticklabels(ax.get_xticklabels(), rotation=45, ha='right', fontsize=12) plt.show()

輸出結(jié)果如下:(前兩行代碼也是很實(shí)用的功能,實(shí)現(xiàn)字段中包含的元素的進(jìn)行統(tǒng)計(jì)求平均的過程,結(jié)果就是可以得到元素和對應(yīng)的價(jià)格均值)

3.11 床位的數(shù)量和房價(jià)的關(guān)系

listings.loc[(listings.price <= 600) & (listings.price > 0)].pivot(columns = 'beds',values = 'price').plot.hist(stacked = True,bins=100) plt.xlabel('Listing price in $')

輸出結(jié)果如下:(先查看各出租房匯總不同床位出現(xiàn)的數(shù)量分布,主要集中在1,2,3,價(jià)錢也主要在0-200區(qū)間范圍內(nèi))

然后查看一下每種床位數(shù)量的價(jià)格關(guān)系如下

sns.boxplot(y='price', x='beds', data = listings.loc[(listings.price <= 600) & (listings.price > 0)]) plt.show()

輸出結(jié)果如下:(在這份數(shù)據(jù)中驚人的發(fā)現(xiàn)居然沒有床的房屋價(jià)格比有2張床的房屋價(jià)格還要貴)

3.12 關(guān)聯(lián)關(guān)系探索

之前的嘗試性探索都是在指定兩個(gè)字段,然后進(jìn)行兩兩分析。可以通過columns查看一下所有的字段名稱,輸出如下

兩兩單獨(dú)挑出來的字段進(jìn)行分析就是基于常識(shí),日常中都已經(jīng)在大腦中潛意識(shí)認(rèn)為這兩個(gè)字段可能有所關(guān)聯(lián),如果一直使用這種方式很難挖掘出潛在的有價(jià)值信息,因此就可以借助pairplot繪制多字段的兩兩對比圖或者h(yuǎn)eatmap熱力圖探究潛在的關(guān)聯(lián)性

col = ['host_listings_count', 'accommodates', 'bathrooms', 'bedrooms', 'beds', 'price', 'number_of_reviews', 'review_scores_rating', 'reviews_per_month'] sns.set(style="ticks", color_codes=True) sns.pairplot(listings.loc[(listings.price <= 600) & (listings.price > 0)][col].dropna()) plt.show()

輸出結(jié)果如下:(只選取了部分字段)

進(jìn)行熱力圖繪制,需要注意pairplot和heatmap繪制的圖形都是只需要看主對角線上下一側(cè)的圖像即可,因?yàn)樯傻膱D形是關(guān)于主對角線對稱

plt.figure(figsize=(18,10)) corr = listings.loc[(listings.price <= 600) & (listings.price > 0)][col].dropna().corr() plt.figure(figsize = (6,6)) sns.set(font_scale=1) sns.heatmap(corr, cbar = True, annot=True, square = True, fmt = '.2f', xticklabels=col, yticklabels=col) plt.show()

輸出結(jié)果如下:(數(shù)字越接近1,說明字段之間的相關(guān)性越強(qiáng),主對角線的數(shù)值不用看都是1)

熱力圖除了查看相關(guān)性外,還有一個(gè)重要的用處就是展示三個(gè)字段之間的關(guān)系,比如上面相關(guān)性圖中可以看到價(jià)錢price字段和bathrooms床位以及bedrooms字段都有較強(qiáng)的關(guān)聯(lián)關(guān)系,就可以使用熱力圖將三者的關(guān)系表現(xiàn)出來

plt.figure(figsize=(18,10)) sns.heatmap(listings.loc[(listings.price <= 600) & (listings.price > 0)]\.groupby(['bathrooms', 'bedrooms'])\.count()['price']\.reset_index()\.pivot('bathrooms', 'bedrooms', 'price')\.sort_index(ascending=False),cmap="Oranges", fmt='.0f', annot=True, linewidths=0.5) plt.show()

輸出結(jié)果如下:(該熱力圖探究的是洗漱間和臥室的數(shù)量與房子數(shù)量的關(guān)系)
那么把count()改成mean(),就變成探究洗漱間和臥室的數(shù)量與房子平均價(jià)格之間的關(guān)系

plt.figure(figsize=(18,10)) sns.heatmap(listings.loc[(listings.price <= 600) & (listings.price > 0)]\.groupby(['bathrooms', 'bedrooms'])\.mean()['price']\.reset_index()\.pivot('bathrooms', 'bedrooms', 'price')\.sort_index(ascending=False),cmap="Oranges", fmt='.0f', annot=True, linewidths=0.5) plt.show()

輸出結(jié)果如下:

4 特征工程

以上的內(nèi)容就是傳統(tǒng)的數(shù)據(jù)分析要完成的內(nèi)容,分析的過程依賴于數(shù)據(jù)分析師本身的經(jīng)驗(yàn),而且結(jié)果都是以圖表的形式進(jìn)行展現(xiàn),有一個(gè)痛點(diǎn)就是字段較多時(shí)候,要進(jìn)行分析時(shí)就需要很多很多的圖像,比如三個(gè)字段的分析,熱力圖就需要很多很多。此時(shí)就可以借助機(jī)器學(xué)習(xí)模型來探究,但是探究之前需要處理字段數(shù)據(jù),進(jìn)行特征工程。為了防止內(nèi)存不足,建議在進(jìn)行特征工程之前重新restart一下kernel,保證后續(xù)程序的正常運(yùn)行,否則會(huì)提醒內(nèi)存不足,程序報(bào)錯(cuò)

import pandas as pd listings = pd.read_csv('toroto/listings.csv/listings.csv')listings['price'] = listings['price'].str.replace(',', '') listings['price'] = listings['price'].str.replace('$', '') listings['price'] = listings['price'].astype(float) listings = listings.loc[(listings.price <= 600) & (listings.price > 0)]listings.amenities = listings.amenities.str.replace("[{}]", "").str.replace('"', "")listings.amenities.head()

輸出結(jié)果如下:(數(shù)據(jù)讀取之后將價(jià)格字段和設(shè)施字段還按照之前的處理方式進(jìn)行預(yù)處理,注意這里程序運(yùn)行后的標(biāo)號(hào),是restart之后的再次運(yùn)行)

然后進(jìn)行特征工程,先處理文本數(shù)據(jù),將文本數(shù)據(jù)特征化,導(dǎo)入處理文本數(shù)據(jù)的模塊,進(jìn)行詞向量轉(zhuǎn)化

from sklearn.feature_extraction.text import CountVectorizer count_vectorizer = CountVectorizer(tokenizer=lambda x: x.split(',')) amenities = count_vectorizer.fit_transform(listings['amenities']) df_amenities = pd.DataFrame(amenities.toarray(), columns=count_vectorizer.get_feature_names()) df_amenities = df_amenities.drop('',1)

輸出結(jié)果如下:(這一過程就是將amenities字段中所有的分類進(jìn)行獨(dú)熱編碼,然后形成DataFrame數(shù)據(jù)類型)

接著處理二分類字段,將true和false的分類替換成計(jì)算機(jī)識(shí)別的1和0分類。當(dāng)存在多個(gè)二分類字段時(shí)候可以進(jìn)行for循環(huán)統(tǒng)一進(jìn)行數(shù)據(jù)轉(zhuǎn)化,代碼操作如下

columns = ['host_is_superhost', 'host_identity_verified', 'host_has_profile_pic','is_location_exact', 'requires_license', 'instant_bookable','require_guest_profile_picture', 'require_guest_phone_verification'] for c in columns:listings[c] = listings[c].replace('f',0,regex=True)listings[c] = listings[c].replace('t',1,regex=True)

接著對價(jià)錢相關(guān)的字段進(jìn)行缺失值填充和噪音數(shù)據(jù)的清洗,最后不要忘記將數(shù)值的字段轉(zhuǎn)化為浮點(diǎn)數(shù)。代碼操作如下

listings['security_deposit'] = listings['security_deposit'].fillna(value=0) listings['security_deposit'] = listings['security_deposit'].replace( '[\$,)]','', regex=True ).astype(float) listings['cleaning_fee'] = listings['cleaning_fee'].fillna(value=0) listings['cleaning_fee'] = listings['cleaning_fee'].replace( '[\$,)]','', regex=True ).astype(float)

并不是讀取數(shù)據(jù)中的所有字段都有作用,比如在進(jìn)行熱力圖判斷字段之間的相關(guān)關(guān)系時(shí),有些字段之間的相關(guān)關(guān)系的都是0,這些字段就可以直接被舍棄,選取有相關(guān)關(guān)系的字段重新組成一個(gè)數(shù)據(jù)集

listings_new = listings[['host_is_superhost', 'host_identity_verified', 'host_has_profile_pic','is_location_exact', 'requires_license', 'instant_bookable', 'require_guest_profile_picture', 'require_guest_phone_verification', 'security_deposit', 'cleaning_fee', 'host_listings_count', 'host_total_listings_count', 'minimum_nights','bathrooms', 'bedrooms', 'guests_included', 'number_of_reviews','review_scores_rating', 'price']]

接著就看一下這些字段中是不是還存在缺失值,上面只是進(jìn)行了部分字段的處理,這里重現(xiàn)選取字段后仍然要進(jìn)行缺失值的處理

for col in listings_new.columns[listings_new.isnull().any()]:print(col)

輸出結(jié)果如下:(說明還是有字段的缺失值未進(jìn)行處理)

接著處理這部分字段的缺失值,按照中位數(shù)進(jìn)行填充。當(dāng)字段為分類字段時(shí),填充的方式為中位數(shù)填充,前面處理的價(jià)格字段為連續(xù)字段,使用均值進(jìn)行填充

for col in listings_new.columns[listings_new.isnull().any()]:listings_new[col] = listings_new[col].fillna(listings_new[col].median())

然后對分類字段進(jìn)行獨(dú)熱編碼處理,并將編碼后的結(jié)果與新數(shù)據(jù)進(jìn)行合并

for cat_feature in ['zipcode', 'property_type', 'room_type', 'cancellation_policy', 'neighbourhood_cleansed', 'bed_type']:listings_new = pd.concat([listings_new, pd.get_dummies(listings[cat_feature])], axis=1)

此時(shí)不要忘記最開始對文本編碼的DataFrame數(shù)據(jù),也需要進(jìn)行合并,合并的方式為取交集,最終得到特征工程處理后的數(shù)據(jù)

listings_new = pd.concat([listings_new, df_amenities], axis=1, join='inner')listings_new.head()listings_new.shape

輸出結(jié)果如下:(數(shù)據(jù)只剩下約1.7w,但是字段數(shù)量增加到了6000+)

5 機(jī)器學(xué)習(xí)

5.1 隨機(jī)森林

特征工程完成后,就該進(jìn)行機(jī)器學(xué)習(xí)模型的創(chuàng)建,首先使用隨機(jī)森林回歸模型進(jìn)行建模,看看最終的效果如何。模型創(chuàng)建的過程以及評(píng)估的流程如下

from sklearn.model_selection import train_test_split from sklearn.metrics import r2_score from sklearn.metrics import mean_squared_error from sklearn.ensemble import RandomForestRegressory = listings_new['price'] x = listings_new.drop('price', axis =1) X_train, X_test, y_train, y_test = train_test_split(x, y, test_size = 0.25, random_state=1) rf = RandomForestRegressor(n_estimators=500, criterion='mse', random_state=3, n_jobs=-1)rf.fit(X_train, y_train)

輸出結(jié)果如下:(x是沒有標(biāo)簽的其余字段,y就是標(biāo)簽字段,切分?jǐn)?shù)據(jù)集一般就按照七三開,這里按照訓(xùn)練集75%,測試集25%,隨機(jī)種子狀態(tài)設(shè)定為1。最后決策樹模型設(shè)置500棵樹,評(píng)價(jià)方式為均方差mse,隨機(jī)種子狀態(tài)為3,-1代表選擇處理器性能全開)

訓(xùn)練過程會(huì)和選用的機(jī)器的性能相關(guān),運(yùn)行需要一定的時(shí)間,待運(yùn)行完畢后就可以使用模型進(jìn)行預(yù)測

y_train_pred = rf.predict(X_train) y_test_pred = rf.predict(X_test) rmse_rf= (mean_squared_error(y_test,y_test_pred))**(1/2)print('RMSE test: %.3f' % rmse_rf) print('R^2 test: %.3f' % (r2_score(y_test, y_test_pred)))

輸出結(jié)果如下:(注意傳入predict括號(hào)中的變量,傳入X_train就對應(yīng)得到訓(xùn)練集計(jì)算出來的預(yù)測標(biāo)簽,傳入X_test就對應(yīng)著測試集計(jì)算出來的預(yù)測標(biāo)簽,通過比對最終訓(xùn)練集和測試集的結(jié)果可以計(jì)算出最終的預(yù)測結(jié)果)

模型的預(yù)測結(jié)果出來之后,同時(shí)也可以查看模型得到的最重要的影響因素

coefs_df = pd.DataFrame()coefs_df['est_int'] = X_train.columns coefs_df['coefs'] = rf.feature_importances_ coefs_df.sort_values('coefs', ascending=False).head(20)

輸出結(jié)果如下:(影響因素一列就為傳入的字段的名稱,影響的重要性,可以通過訓(xùn)練好的模型下面的feature_importances_屬性獲得)

5.2 LightGBM

只用一個(gè)模型建模獲得結(jié)果沒有對比性,無法判斷最終的預(yù)測結(jié)果是好還是壞,因此在進(jìn)行預(yù)測時(shí)候往往都不是只使用一個(gè)模型進(jìn)行,而是采用至少兩個(gè)模型進(jìn)行對比,接下來就是使用LightGBM模型進(jìn)行預(yù)測

需要先安裝LightGBM模塊,操作如下

然后從模塊中導(dǎo)入回歸模型,劃分?jǐn)?shù)據(jù)集后構(gòu)建模型

from lightgbm import LGBMRegressory = listings_new['price'] x = listings_new.drop('price', axis =1) X_train, X_test, y_train, y_test = train_test_split(x, y, test_size = 0.25, random_state=1) fit_params={"early_stopping_rounds":20, "eval_metric" : 'rmse', "eval_set" : [(X_test,y_test)],'eval_names': ['valid'],'verbose': 100,'feature_name': 'auto', 'categorical_feature': 'auto'}X_test.columns = ["".join (c if c.isalnum() else "_" for c in str(x)) for x in X_test.columns]class LGBMRegressor_GainFE(LGBMRegressor):@propertydef feature_importances_(self):if self._n_features is None:raise LGBMNotFittedError('No feature_importances found. Need to call fit beforehand.')return self.booster_.feature_importance(importance_type='gain')clf = LGBMRegressor_GainFE(num_leaves= 25, max_depth=20, random_state=0, silent=True, metric='rmse', n_jobs=4, n_estimators=1000,colsample_bytree=0.9,subsample=0.9,learning_rate=0.01) #reduce_train.columns = ["".join (c if c.isalnum() else "_" for c in str(x)) for x in reduce_train.columns] clf.fit(X_train.values, y_train.values, **fit_params)

輸出結(jié)果如下:

如果顯示上放的輸出結(jié)果說明模型訓(xùn)練成功,但是過程并不一定會(huì)一帆風(fēng)順,可能會(huì)運(yùn)行報(bào)錯(cuò)如下:TypeError: Cannot interpret '<attribute 'dtype' of 'numpy.generic' objects>' as a data type,此時(shí)可以升級(jí)一下pandas和numpy的版本,比如將pandas升級(jí)到1.2.4,numpy升級(jí)到1.20.2。然后重新運(yùn)行當(dāng)前的notebook就可以完美解決這個(gè)問題

接著就可以使用訓(xùn)練好的模型進(jìn)行預(yù)測并查看模型得分,順帶可以將重要的影響因素進(jìn)行可視化

y_pred = clf.predict(X_test.values) print('R^2 test: %.3f' % (r2_score(y_test, y_pred)))feat_imp = pd.Series(clf.feature_importances_, index=x.columns) feat_imp.nlargest(20).plot(kind='barh', figsize=(10,6))

輸出結(jié)果如下:(使用LightGBM模型進(jìn)行預(yù)測的得分要比隨機(jī)森林模型最終的得分要高,說明此數(shù)據(jù)集較適用于LightGBM模型)

最后對比兩個(gè)模型最終給出的重要影響因素,可以發(fā)現(xiàn)前五個(gè)都是一樣的,只是順序上存在著不同。此外關(guān)于模型具體的講解會(huì)在后續(xù)的機(jī)器學(xué)習(xí)部分詳細(xì)介紹,這里就是明確數(shù)據(jù)分析案例的流程,知道如何進(jìn)行模塊的調(diào)用創(chuàng)建模型和預(yù)測

總結(jié)

以上是生活随笔為你收集整理的【数据分析师-数据分析项目案例一】600w+条短租房数据案例分析的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

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

亚洲人成网站精品片在线观看 | 中文字幕韩在线第一页 | 人人干人人搞 | 国产高清在线永久 | 国产成人一区二 | 天天草夜夜 | 一本一本久久a久久精品综合 | 又黄又爽又湿又无遮挡的在线视频 | 日韩三级在线 | 久久无码精品一区二区三区 | 日韩午夜视频在线观看 | 日韩在线电影一区 | 国内久久| 在线观看视频在线 | 国产成人精品一区二区三区网站观看 | 免费av片在线 | 欧美激情亚洲综合 | 国产精品一区二区三区免费看 | 久久久鲁 | 欧美精品首页 | 青青久草在线视频 | 婷婷成人亚洲综合国产xv88 | 免费网站看av片 | 久久艹人人 | 青青草国产在线 | 久久久久久久久久久久久国产精品 | 91最新视频在线观看 | 国产美腿白丝袜足在线av | 国产福利午夜 | 久久女教师 | 欧美一级片在线免费观看 | 欧美va日韩va| 国产97色在线 | 免费在线观看不卡av | 国内精品二区 | 丝袜美女在线观看 | 久久不射影院 | 中文字幕在线观看2018 | 国产一区视频在线观看免费 | av一级免费 | 激情五月av| 免费三级影片 | 三级av在线播放 | 久久久久久网址 | 欧美国产一区在线 | 亚洲精品国产视频 | 国产精品小视频网站 | 精品在线观看国产 | 日韩av免费一区二区 | 操操日 | 探花视频在线观看免费 | 美女精品网站 | 久久久人| 奇人奇案qvod | 久久免费中文视频 | 黄色a大片| 国产成人一级电影 | 国产在线视频在线观看 | 人人添人人 | 在线观看不卡视频 | 国产精品原创 | 精品久久综合 | 日日日爽爽爽 | 91日韩在线专区 | 国产小视频免费观看 | 一区二区网 | 国产精品久久电影观看 | 国产高清精 | av免费观看高清 | 午夜精品久久久久久久99热影院 | av 一区 二区 久久 | 91在线看视频免费 | 欧洲不卡av| 日韩系列| 最近日本韩国中文字幕 | 久久99精品国产99久久 | 66av99精品福利视频在线 | 91在线产啪 | 中国一 片免费观看 | 精品在线观看一区二区三区 | 免费福利视频网 | 久久久久久久久久久久久久电影 | 91亚色免费视频 | 97色se| 日韩二区在线观看 | 人人插人人干 | 国产在线精品一区二区 | 成人在线视频你懂的 | 成人在线播放免费观看 | 国产亚州精品视频 | 国产成人精品免高潮在线观看 | 国产永久免费高清在线观看视频 | 美女免费视频一区二区 | 激情动态 | 亚洲春色成人 | 中文字幕免费观看视频 | av 一区二区三区四区 | 欧美一级片免费播放 | 色诱亚洲精品久久久久久 | 久久97精品 | 国产亚洲成av人片在线观看桃 | 二区三区毛片 | 久久久久久久久综合 | 在线激情影院一区 | 91精品国自产在线观看欧美 | 狠狠色狠狠色综合日日小说 | 久久精品视频在线播放 | 91资源在线观看 | 黄色91在线 | av黄色在线播放 | 黄色软件视频大全免费下载 | 欧美大片www | 亚洲一级片免费观看 | 国产欧美综合在线观看 | 91资源在线播放 | 精品国产中文字幕 | 国产在线一区二区 | 色婷婷一区 | 91精品国产入口 | www.日本色| 成年人视频在线免费观看 | 欧美激情综合网 | 永久黄网站色视频免费观看w | 亚洲另类视频在线观看 | 天天爱天天操 | 国产成人精品综合 | 免费高清看电视网站 | wwwwww黄| 亚洲精品短视频 | 黄色特级毛片 | 亚洲视频第一页 | 麻豆传媒在线视频 | 蜜臀av性久久久久av蜜臀三区 | 国产福利网站 | 黄色片亚洲 | 国产精品一区二区在线免费观看 | 国产福利免费在线观看 | 久久电影国产免费久久电影 | 五月开心综合 | 一区二区视频欧美 | 91尤物在线播放 | 色婷婷综合久久久中文字幕 | 亚洲激情婷婷 | 亚洲乱码精品久久久久 | 97成人精品视频在线播放 | 久久久一本精品99久久精品 | 久草青青在线观看 | 久久久精品亚洲 | 欧美一级久久久久 | 国产精品高潮呻吟久久久久 | 国产精品视频久久 | 久久婷婷精品 | 亚州精品在线视频 | 狠狠做深爱婷婷综合一区 | 园产精品久久久久久久7电影 | 综合国产在线 | 欧美超碰在线 | 91av在线不卡 | 一区二区三区四区五区在线 | 六月婷婷久香在线视频 | 黄色免费网战 | 美女视频a美女大全免费下载蜜臀 | 亚洲精品一区中文字幕乱码 | 久久伦理影院 | 天天干天天操天天爱 | 中文字幕高清免费日韩视频在线 | 奇米网在线观看 | 在线黄色国产 | 日日操网站 | av色图天堂网 | 久久久久久久久毛片 | 国产精品夜夜夜一区二区三区尤 | 久久综合影视 | 最近中文字幕免费视频 | 在线观看第一页 | www.天天射 | 黄色的视频网站 | 最新国产中文字幕 | 国产91在线 | 美洲 | 成人一级在线 | 欧美aaa级片| 福利久久 | 久久免费99精品久久久久久 | 91男人影院 | 最近中文字幕mv | 国产欧美中文字幕 | 色视频国产直接看 | 99在线高清视频在线播放 | 久久超碰免费 | 黄p在线播放| 久久精品99久久久久久 | 成人污视频在线观看 | 天天色天天骑天天射 | 国内精品99| 波多野结衣视频一区二区 | 在线蜜桃视频 | 久久中文网| 久久涩视频| 久久天堂亚洲 | 91激情在线视频 | 一区二区三区www | 色偷偷888欧美精品久久久 | 久久神马影院 | 久久亚洲综合国产精品99麻豆的功能介绍 | 伊人色**天天综合婷婷 | 91高清在线看 | 一区二区影院 | 国产免费一区二区三区最新 | 亚洲午夜久久久综合37日本 | 午夜视频在线观看一区二区 | 国产高清免费av | 久久免费成人网 | 美女网站黄在线观看 | 久久精品欧美日韩精品 | 欧美最爽乱淫视频播放 | 特黄色大片 | 五月天国产精品 | 精品国产1区2区 | 精品国产伦一区二区三区观看体验 | 国产精品第52页 | 91污污视频在线观看 | 婷婷综合| 午夜电影久久久 | 午夜精品久久久久久久99热影院 | 久热av| 色综合久久久久综合99 | 久久精品久久99 | www.久久免费视频 | 久久九九影院 | 在线视频亚洲 | 天天亚洲综合 | 国产精品1区2区 | 99视频国产精品免费观看 | 人人爱爱人人 | 九精品| 日韩久久网站 | 天天操一操 | 91九色视频导航 | 久插视频 | 久99精品| 久久99精品国产99久久 | 久草免费在线视频观看 | 久久人人爽 | 免费在线成人 | 色精品视频 | 亚洲婷婷丁香 | 亚洲午夜精品久久久久久久久久久久 | 国产精品专区在线观看 | 97超碰在线人人 | 精品国产诱惑 | 亚洲一级片av | 国产精品乱码一区二三区 | 伊人狠狠色丁香婷婷综合 | 久久久久久久18 | 亚洲精品1234区 | 日本中文字幕在线一区 | 精品免费观看视频 | 欧美天天射 | 中文字幕色站 | 国产麻豆电影在线观看 | 日韩乱色精品一区二区 | 久久久久久蜜av免费网站 | 天天夜夜操 | 91九色精品女同系列 | 亚洲精品久久视频 | 最新三级在线 | 日韩网 | 九九久久久久久久久激情 | 欧美一区二视频在线免费观看 | 国产精品一区二区三区在线免费观看 | 激情av资源 | 亚洲精品一区二区三区新线路 | 1000部18岁以下禁看视频 | 91麻豆精品国产午夜天堂 | h文在线观看免费 | 岛国av在线免费 | 深爱激情综合 | 欧美日韩高清在线 | 天天操天天能 | 婷婷激情五月 | 国产精品123 | 国产一区免费观看 | 超碰国产97 | 久久国产精品一国产精品 | 五月开心激情 | 欧美在一区 | www国产亚洲| 免费中文字幕 | 久久精品99国产精品日本 | 91综合视频在线观看 | 国产日本三级 | 7777精品伊人久久久大香线蕉 | 人人澡人人爱 | 狠狠色伊人亚洲综合网站野外 | 特级大胆西西4444www | 日本成人中文字幕在线观看 | 日韩手机在线观看 | 日日操天天操狠狠操 | 久久久久久久毛片 | 亚洲精品乱码久久久久久蜜桃不爽 | 欧美一级高清片 | 亚洲精选视频在线 | 97久久精品午夜一区二区 | 亚洲国产网址 | 国产成人精品一区在线 | 天天操天天摸天天爽 | 国产精品自在线拍国产 | av免费成人| 日韩欧美在线一区二区 | 久久久精品午夜 | 精品欧美一区二区在线观看 | 天天综合视频在线观看 | 国产精品免费看久久久8精臀av | 91免费网址| 一区二区三区四区在线免费观看 | 91福利区一区二区三区 | 99国产精品一区二区 | 国产夫妻自拍av | 99久久精品国产系列 | 噜噜色官网 | 97香蕉久久超级碰碰高清版 | 午夜视频免费 | 午夜精品一区二区三区在线播放 | 欧美日韩国产一二三区 | 久久视频精品 | 美女免费视频一区二区 | 久久91网| 啪啪免费试看 | 免费a网 | 欧美视频在线观看免费网址 | 狠狠色丁香婷婷综合久小说久 | 国产午夜在线观看 | 久久人人添人人爽添人人88v | 91香蕉视频在线下载 | 黄色视屏av | 国产精品一区二区av | 狠狠插狠狠操 | avcom在线| 国产精品久久久久久久久久久免费看 | 国产自产高清不卡 | 国产美女视频网站 | 亚洲日本va午夜在线电影 | 亚洲精品一区二区在线观看 | 亚洲综合干| 97超碰福利久久精品 | 91精品夜夜 | 日韩a级黄色片 | 欧美性色网站 | 日韩视频1区 | 九九免费在线观看 | 久草爱视频 | 欧美日韩视频精品 | 五月婷婷开心中文字幕 | 精品1区2区 | 亚洲精品欧洲精品 | 精品美女久久久久 | 超碰国产在线 | 91精选在线观看 | 中文字幕第一页在线 | 欧美性生活久久 | 免费午夜在线视频 | 午夜精品99久久免费 | 九九交易行官网 | 人人爱爱人人 | 久久精品小视频 | 免费观看性生交大片3 | 伊人激情综合 | 色中文字幕在线观看 | 国产精品完整版 | 日韩黄在线观看 | 国产麻豆传媒 | 婷婷午夜天| 成人一级免费视频 | 丁香视频全集免费观看 | 精品人人人 | 日韩免费一区二区在线观看 | 国产男女爽爽爽免费视频 | 亚洲电影久久 | 精品人人人人 | 热久在线 | 精品亚洲男同gayvideo网站 | 欧美精品免费在线 | 国产精品一区二区你懂的 | www夜夜操 | 毛片视频电影 | 国产一区二区不卡在线 | 国产午夜精品一区二区三区在线观看 | av黄网站| 成年人视频在线免费播放 | 国产视频一二区 | 日韩欧美一区视频 | 久久综合久色欧美综合狠狠 | 成人av网站在线 | 国产成人精品一区在线 | 国产精品一区二区三区在线免费观看 | 精品久久久久久久久久久久久久久久久久 | 久久亚洲电影 | a在线v| 99看视频在线观看 | 久草久 | 在线观看不卡视频 | 久久国产精品一区二区三区四区 | 狠狠色噜噜狠狠 | 国产一级不卡毛片 | 狠狠艹夜夜干 | 国产最顶级的黄色片在线免费观看 | 色综合久久88 | 在线免费av网站 | 精品一区91| 欧美精彩视频在线观看 | 亚洲国产精品电影在线观看 | 欧美日韩p片| 黄色av电影| 一级α片| 欧美另类网站 | av国产在线观看 | 99精品国产视频 | 日韩欧美xxx| 国产在线中文字幕 | 成人免费亚洲 | 国产在线久久久 | 中文字幕日本特黄aa毛片 | 日韩欧美国产激情在线播放 | 久久99精品久久久久久 | 国产不卡在线观看视频 | 天天曰天天 | 日韩高清二区 | 亚洲综合色丁香婷婷六月图片 | 在线视频观看91 | 在线视频精品播放 | 欧美一级黄色网 | 91麻豆精品国产自产在线 | 亚洲美女免费精品视频在线观看 | 99精品在线免费观看 | 狠狠色丁香婷综合久久 | 在线免费视频a | 国产一区二区不卡视频 | 日韩aa视频 | 日韩一级黄色大片 | 天天·日日日干 | 国产精品久免费的黄网站 | 亚洲热久久 | 91视频久久久久久 | 久久黄色免费观看 | 亚洲伊人网在线观看 | 欧美日韩亚洲在线 | 国产精品毛片一区二区三区 | 在线91视频 | 天天夜夜操 | 成人永久免费 | 久久久久国产精品www | 99视频一区二区 | 国产免费黄色 | 毛片精品免费在线观看 | 免费在线激情电影 | 国产尤物在线观看 | 日韩欧美69| 亚洲精品福利视频 | 午夜精品一区二区三区四区 | 丁香激情五月 | 国产女人18毛片水真多18精品 | 中文字幕在线一区二区三区 | 免费色视频在线 | 五月婷综合 | 国产精品久久99综合免费观看尤物 | 日韩综合色 | 日日成人网| 久久视频一区二区 | 欧美色图亚洲图片 | 成人午夜电影在线播放 | 97人人艹 | 国产日韩欧美在线观看 | 久热国产视频 | 手机成人av| 亚洲jizzjizz日本少妇 | 日韩av网址在线 | 在线视频成人 | 国产精品99久久久久人中文网介绍 | 美女视频黄是免费的 | 国产精品高潮在线观看 | 国产视频九色蝌蚪 | 开心激情久久 | 成人中文字幕+乱码+中文字幕 | 成人亚洲精品久久久久 | 欧美日韩亚洲在线观看 | 国产精品久久9 | 99久久婷婷国产精品综合 | 最近乱久中文字幕 | 国产黄色成人av | 欧美色婷 | 国产二区免费视频 | 视频二区在线 | 九九热免费视频在线观看 | 成人午夜电影网站 | 色婷婷色 | 一本一道久久a久久精品 | 中文字幕在线有码 | 久久精品这里都是精品 | 日韩欧美高清不卡 | 午夜av网站| 久久久久久免费毛片精品 | 看片黄网站 | 亚洲永久av | 国产人成在线视频 | 天天色天天射天天综合网 | 久精品视频在线 | 激情开心站 | 日日夜夜天天干 | 日韩免费观看av | 亚洲专区欧美专区 | www.夜夜骑.com | 99热最新精品 | 手机av在线网站 | 久久免费视频6 | 亚洲人在线7777777精品 | 亚州精品在线视频 | 天天干天天做 | 欧美日韩亚洲在线观看 | 一级片免费视频 | 婷婷色综| 久久夜靖品 | 日韩视频免费在线 | 久久久久国产精品一区二区 | av网在线观看 | 久久综合久久综合久久 | 国产精品久久久精品 | 久久经典视频 | 国内视频在线观看 | 最新中文字幕在线观看视频 | 热99在线视频 | 日韩免费一区二区在线观看 | 综合在线色 | 久久夜色电影 | 国产精品毛片完整版 | 亚洲人成网站精品片在线观看 | 中文字幕亚洲字幕 | 最近更新中文字幕 | 精品免费| 日本色小说视频 | 日本一区二区高清不卡 | 黄色网址a | 国产69熟 | 四虎影视av | 日韩簧片在线观看 | 国产aaa免费视频 | 在线免费视频 你懂得 | 久要激情网 | 国产黄色资源 | 亚洲国产中文在线观看 | 欧美精品在线一区二区 | 九色精品在线 | 国产1区在线 | 欧美福利久久 | 一区 在线 影院 | 日韩在线第一区 | 91资源在线观看 | 高清不卡一区二区三区 | 久久手机免费视频 | 亚洲综合色视频在线观看 | 精品视频9999| 69欧美视频| 九九免费精品 | 91精品国产91久久久久久三级 | 91精品国产自产91精品 | a亚洲视频| 999精品网 | 97超碰色偷偷 | 99精品久久久久久久 | 成人动漫一区二区三区 | 狠狠狠狠狠狠干 | 波多野结衣视频一区二区三区 | 人人爽人人片 | 久久美女免费视频 | 日韩丝袜在线 | 天天爽天天射 | 亚洲91网站 | 日韩一区二区三区免费电影 | 国产一级做a爱片久久毛片a | 欧美一区二区精品在线 | 97超碰精品 | 久久精品三 | 99久精品视频 | 天天久久夜夜 | 色av资源网 | 国产日本亚洲高清 | 亚洲精区二区三区四区麻豆 | 久久久久视 | av亚洲产国偷v产偷v自拍小说 | 黄色小说免费在线观看 | 国产白浆在线观看 | www.久久成人 | 婷婷综合影院 | 国产精品中文久久久久久久 | 国产精品 日韩 欧美 | 97视频资源 | 久久天天操 | 久久久蜜桃 | 欧美日韩国产在线一区 | av线上看 | 久久情爱| 99色在线播放 | av成人免费在线看 | 97超碰网 | 97**国产露脸精品国产 | 99麻豆久久久国产精品免费 | 精品一区二区精品 | 最近中文国产在线视频 | 一级做a视频 | 黄色三级免费 | 久久这里有 | 亚洲视频专区在线 | 国产99久久精品 | 欧美久久久久久久久久久 | 色哟哟国产精品 | 日韩剧情 | 人人要人人澡人人爽人人dvd | 国产精品视频久久久 | 亚洲精品视频在线观看免费视频 | 日日精品 | 一级黄色片网站 | 国产欧美在线一区 | 国产精华国产精品 | 粉嫩av一区二区三区四区在线观看 | 久久综合婷婷综合 | 91热视频在线观看 | 久久久久美女 | 国产精品一区在线 | 亚洲精品综合久久 | 99爱视频 | 99爱精品视频 | 久久久久 免费视频 | 国产91学生| 91福利区一区二区三区 | 国产精品第三页 | 精品a视频 | 国产系列精品av | 精品视频97| 国产视频一二三 | 婷婷免费在线视频 | av一级片网站| 国产经典三级 | 国产福利在线免费观看 | 91视频最新网址 | 日韩av一区二区在线 | 欧美少妇bbwhd | 国产精品v欧美精品v日韩 | 天天干国产 | 国产99精品在线观看 | 久久精品老司机 | 国产精品99久久久精品免费观看 | 欧美精品一区二区性色 | 欧美日韩免费观看一区=区三区 | 国产小视频网站 | 天堂资源在线观看视频 | 亚州国产精品视频 | 日韩av综合网站 | 亚洲夜夜网 | 久草精品电影 | 亚洲最新视频在线播放 | 黄色av网站在线免费观看 | 一区二区三区四区五区在线视频 | 在线观看黄色免费视频 | 九九热精品视频在线播放 | 蜜臀av性久久久久蜜臀aⅴ流畅 | 天天操天天干天天综合网 | 亚洲综合成人婷婷小说 | 日韩精品视频免费在线观看 | 中文字幕视频在线播放 | 91 在线视频| 黄色一区三区 | 精品黄色片 | 99久久久久久久久久 | 国产精品久久久久一区二区三区 | 日韩精品中文字幕在线观看 | av高清一区二区三区 | 国产一区久久 | 久久综合久久鬼 | 国产精品欧美久久久久三级 | 高清日韩一区二区 | 999电影免费在线观看 | 精品在线二区 | 伊人影院在线观看 | 精品在线观看一区二区三区 | 日韩动态视频 | 丁香五月亚洲综合在线 | 9ⅰ精品久久久久久久久中文字幕 | 激情文学丁香 | 成人午夜影院 | 能在线看的av | 丁香伊人网 | 国产一区二区高清视频 | 国产精品毛片久久久久久久久久99999999 | 丁香九月激情 | 99精品一级欧美片免费播放 | 色婷婷激婷婷情综天天 | 九九久久精品 | 午夜国产一区二区 | 女人高潮一级片 | 国产精品久久久区三区天天噜 | 免费亚洲成人 | 一区 在线观看 | 久久亚洲区 | 99热在线这里只有精品 | 中文字幕精品一区久久久久 | 日韩xxxxxxxxx| 99热在线国产精品 | 免费观看黄色12片一级视频 | 国产综合在线观看视频 | 日韩在线视频国产 | 六月丁香综合网 | 成人午夜电影在线 | 国产精品久久久久久高潮 | 五月天色网站 | 超碰在线97观看 | 人人爽人人澡人人添人人人人 | 欧美孕妇视频 | 香蕉久草在线 | 久久久九色精品国产一区二区三区 | 三级黄色免费片 | 婷婷中文字幕在线观看 | 午夜久操| 看片一区二区三区 | 免费观看mv大片高清 | 99爱在线观看| 欧美视频日韩视频 | 综合久久网站 | 日韩欧美一区视频 | 99热99| 日韩高清国产精品 | 少妇性aaaaaaaaa视频 | 99久久精品免费看国产麻豆 | 亚洲综合爱| 国产精品理论片在线观看 | 久久久人| 成人影音av | av电影在线播放 | 国产永久免费 | 亚洲国产精品视频在线观看 | 精品久久国产精品 | 欧美a√大片 | 麻豆一级视频 | 国产精品嫩草影视久久久 | 日韩精品久久久久久久电影99爱 | 特级西西444www高清大视频 | 在线 欧美 日韩 | 久久久久草 | 亚洲精品在线网站 | 久久艹免费 | 综合色影院 | 日本精品久久久久中文字幕5 | 美女久久久久久久 | 这里只有精品视频在线 | 91精品影视 | 中文字幕乱偷在线 | a级国产乱理论片在线观看 伊人宗合网 | 久久久久久久久久久高潮一区二区 | 九九视频免费 | 亚洲成人午夜av | 在线观看av片 | 精品在线免费观看 | 久久久国产精品视频 | 国产成人精品一区一区一区 | 国产v亚洲v | 久久好看免费视频 | 日韩在线小视频 | 日批在线观看 | 91在线在线观看 | 激情五月亚洲 | 国产理论片在线观看 | 一级一片免费看 | 亚洲涩涩涩涩涩涩 | 韩日三级在线 | 久久久99精品免费观看app | 欧美日韩国产区 | 午夜性生活片 | 久久久久久毛片 | 国产精品专区一 | 丁香花在线观看视频在线 | 免费观看www小视频的软件 | 国产视频在线观看一区 | 一级淫片在线观看 | 亚洲精品乱码久久久久v最新版 | 久久免费资源 | 国产精品刺激对白麻豆99 | 成人午夜影院在线观看 | 久精品视频免费观看2 | 国产一区二区三区久久久 | 亚洲精品视频免费看 | 国产精品99久久久久久人免费 | 国产精品aⅴ | 91手机电视 | 美女久久 | 精品国产一区二区三区四 | 黄色小说在线观看视频 | 亚洲精品国产日韩 | 国产精品久久久av | 成年人毛片在线观看 | 精精国产xxxx视频在线播放 | 久久伊人综合 | 中文字幕日韩国产 | 国产精品入口66mio女同 | 天天操天天爱天天干 | 精品国产欧美一区二区三区不卡 | 中国一级片在线 | 中文字幕字幕中文 | 69久久夜色精品国产69 | 精品一区二区6 | 国产精品美女久久久免费 | 免费av网站在线看 | 午夜体验区 | 天天色天天草天天射 | 又黄又爽又刺激视频 | 国产一线二线三线性视频 | 五月天色综合 | 久久国产91| 亚洲天堂网站视频 | 中文字幕在线观看第三页 | 欧美 日韩 国产 成人 在线 | 天天干天天草 | 日韩在线看片 | 中文字幕在线观看免费高清电影 | 久久观看免费视频 | 久免费| 波多野结衣视频网址 | 国产在线色视频 | 欧美一级片在线播放 | 亚洲在线国产 | 久久精品视 | 人人搞人人搞 | 亚洲综合色丁香婷婷六月图片 | 日韩欧美一区二区三区在线观看 | 在线成人观看 | 国产在线小视频 | 日韩精品一区电影 | www.天天操| 日韩激情三级 | 国产精品成人国产乱 | 国产无遮挡又黄又爽在线观看 | 99久热在线精品视频成人一区 | 久草久草在线观看 | 国产精品18久久久久久久久 | 国产精品乱码久久久久 | 精品久久99 | 免费看片黄色 | 黄色在线观看网站 | 日韩理论片 | 国产黄色片一级三级 | 精品亚洲免费 | 免费视频在线观看网站 | 久久大视频 | 日韩午夜在线观看 | 丁香花中文在线免费观看 | 黄色国产在线观看 | 国产精品免费视频观看 | 99精品国产亚洲 | 久久久国产一区二区三区 | 又黄又色又爽 | 中文字幕久久精品一区 | 欧美精品久久 | 人人干人人添 | 97电影网手机版 | 西西444www大胆高清图片 | 久久精品欧美一区二区三区麻豆 | 91资源在线免费观看 | 少妇性bbb搡bbb爽爽爽欧美 | 天天天天射 | 狠狠狠狠狠狠狠干 | 午夜91视频 | 国产视频欧美视频 | 夜夜躁狠狠躁日日躁 | www五月婷婷 | 黄色电影在线免费观看 | 久久免费公开视频 | 蜜臀久久99静品久久久久久 | 黄色三级网站在线观看 | 亚洲三级在线播放 | 婷婷精品在线 | 99久久日韩精品免费热麻豆美女 | 丁香六月网 | 国产精品初高中精品久久 | 久久久久久久久久免费视频 | aaa黄色毛片 | 精品亚洲欧美一区 | 午夜三级在线 | 欧美大片mv免费 | 日韩性xxxx| 天天干天天玩天天操 | 在线国产观看 | 久久成人在线视频 | 欧美日韩国产色综合一二三四 | 中文亚洲欧美日韩 | 精品久久久影院 | 久久精品久久精品久久 | 五月婷婷丁香 | 国产视频一区精品 | 欧美精品久久久久久久亚洲调教 | 精品毛片在线 | 又紧又大又爽精品一区二区 | 夜夜爽www| 国产亚洲免费的视频看 | av电影中文字幕在线观看 | 日本性生活一级片 | 国产资源网 | 日日草视频| 久久成人资源 | 日韩精品一区二区三区中文字幕 | 成年人免费看的视频 | 人人草在线观看 | 一区二区三区四区不卡 | 免费av看片 | 中文字幕在线看视频国产中文版 | 国产精品麻豆果冻传媒在线播放 | 久久新视频 | 精品视频9999 | 日韩激情精品 | 国产视频一二区 | 日日操狠狠干 | 91影视成人 | 91丨九色丨高潮 | 久草精品在线 | 干狠狠 | 三上悠亚在线免费 | 亚洲精品黄色在线观看 | 日韩激情视频 | 亚洲狠狠干| 久久久久久毛片精品免费不卡 | 国产97视频在线 | 香蕉视频啪啪 | 五月天久久久 | 国产精品综合在线 | 午夜av网站 | 天天色天天 | 久久伊人国产精品 | 波多野结衣在线观看视频 | 欧美午夜理伦三级在线观看 | 少妇av片 | 99久久精品免费看国产免费软件 | 免费在线观看日韩视频 | 中文字幕有码在线 | 午夜国产福利在线 | 免费亚洲婷婷 | 国产一级大片免费看 | av在线播放中文字幕 | 日韩一区二区三区免费视频 | 亚洲人片在线观看 | 网站在线观看你们懂的 | 2018亚洲男人天堂 | 亚洲一区二区视频在线播放 | 日韩国产精品久久 | 欧美精品在线一区 | 免费大片av | 日韩精品一区二区在线观看视频 | 中文av网| 色av色av色av | av电影在线观看完整版一区二区 | 免费网址在线播放 | 中文字幕在线观看网 | 91福利社在线观看 | 久久短视频 | 深夜福利视频在线观看 | 欧美大码xxxx | 成在线播放 | 成年人网站免费观看 | 久久综合网色—综合色88 | 欧美精品在线视频 | 极品久久久久 | 亚洲视频99| 国产精品九九热 | 日韩高清在线看 | 久久avav | 国产亚洲精品久久久久久大师 | 五月天狠狠操 | 麻豆传媒视频在线播放 | 成人精品国产 | 激情欧美一区二区三区 | 蜜桃视频日本 | 日女人免费视频 | 成人午夜剧场在线观看 | 九九九九九精品 | 国产亚洲情侣一区二区无 | 特级西西444www高清大视频 | 久久午夜网 | 日韩高清在线不卡 | 久久视频网 | 91免费国产在线观看 | 国内三级在线观看 | 91一区啪爱嗯打偷拍欧美 | 日日夜夜操操操操 | 天天爽夜夜爽精品视频婷婷 | 国产97av| 91麻豆操| 久热香蕉视频 | 99久久er热在这里只有精品66 | 美女久久99 | 亚洲视频一区二区三区在线观看 | 国产综合在线观看视频 | 日本黄区免费视频观看 | 成人免费视频播放 |