第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定

鏈家數(shù)據(jù)分析二-數(shù)據(jù)分組處理

標(biāo)簽:
Python

关于
  学习日月光华老师的《Python数据分析从入门到机器学习》,通过写该文来巩固数据分析中使用的知识点。
主要是针对链家的数据进行各个不同方向的分析,本文是第二篇,针对数据中各个房源成交单价及其总价的分析。
准备
工具 :Anaconda、juyter notebook
类库:numpy、pandas、matplotlib
分析及代码实现
  首先接上一篇,先读入整个的数据,代码实现如下:

import numpy as npimport pandas as pdfrom matplotlib import pyplot as plt
%matplotlib inline

data_list = []for i in range(1, 8):    try:
        data = pd.read_csv('C:\\Users\\nash.wan\\Desktop\\lianjia\\lianjia{}.csv'.format(i), encoding='GBK')    except:
        data = pd.read_csv('C:\\Users\\nash.wan\\Desktop\\lianjia\\lianjia{}.csv'.format(i))    finally:
        data_list.append(data)
data = pd.concat(data_list)

  数据分组处理,我通过每个版块里面每个经纪人成交总价和每个版块里面成交单价的前5名两个方面来介绍。

 一,每个版块里面每个经纪人成交总价,


我们要对成交总价进行分析,首先先查看一个cjzongjia这个参数的类型,如下:

webp

image.png

,从上面可知,类型为float64,可以直接进行计算。如下,对cjzongjia进行去除缺省值,并且去除cjzongjia为0的数据

data.dropna(subset = ['cjzongjia'], inplace = True)  //去除cjzongjia缺省的行数据data = data[~data['cjzongjia'].isin([0])]  //去除cjzongjia中为0的数据

    涉及知识点:
     pandas.Series.isin(values):判断values(为list)值是否在Series中,返回bool dtype
接下来,对数据按照‘bankuai’和‘xingming’进行分组,如下,返回一个object对象

webp

image.png

对每个板块经纪人的cjzongjia进行求和,具体的实现如下


data.groupby(by = ['bankuai', 'xingming'])['cjzongjia'].agg('sum')

    涉及知识点:
     DataFrame.groupby分组计算
        1.DataFrame.groupby(by=None, axis=0, level=None, as_index=True, sort=True, group_keys=True, squeeze=False,observed=False)
          by:按照什么来分组,可以是list
        2.agg() 可以使用自定义函数和内置函数,比如data.groupby(['bankuai', 'xingming']).agg({'cjdanjia':fun, 'cjzongjia':'max'})(fun为自定义函数),可以针对每一列进行函数计算,只能返回一个标量值。
结算结果如下:

webp

image.png

 二、每个版块里面成交单价的前5名
对每个版块的成交前5名进行分析,首先对cjdanjia进行预处理,通过

webp

image.png

可以看出cjdanjia为object型,我们需要对其进行处理,如下


data.dropna(subset = ['cjdanjia'], inplace = True) //去除缺省值data['cjdanjia'] = data.cjdanjia.map(lambda x: float(x.replace('元/平', ''))) //转化类型

下面,我们就可以对其按照bankuai进行分组,并且取每个版块中cjdanjia的top5,具体实现如下:

def top5(group, n=5):
    return group.sort_values(by = ['cjdanjia'], ascending = False)[:n] //自定义函数,返回cjdanjia的top5
data.groupby(['bankuai']).apply(top5, 5) //计算得出结果

部分结果如下图:

webp

image.png

    涉及知识点:
     DataFrame.groupby对象的apply()方法:是一个更一般化的方法,将一个数据分拆-应用-汇总,跟agg()主要区别就是apply()不仅仅返回一个标量值,可以返回多个或者其他类型。
总结
  到目前为止,对版块的每个经纪人成交总价和单价的top5分析到此为止已经分析完毕。
未完,后面写会针对其他的方向对链家数据进行分析。





作者:s_nash
链接:https://www.jianshu.com/p/f8c3cd2541bc


點(diǎn)擊查看更多內(nèi)容
TA 點(diǎn)贊

若覺(jué)得本文不錯(cuò),就分享一下吧!

評(píng)論

作者其他優(yōu)質(zhì)文章

正在加載中
  • 推薦
  • 評(píng)論
  • 收藏
  • 共同學(xué)習(xí),寫(xiě)下你的評(píng)論
感謝您的支持,我會(huì)繼續(xù)努力的~
掃碼打賞,你說(shuō)多少就多少
贊賞金額會(huì)直接到老師賬戶(hù)
支付方式
打開(kāi)微信掃一掃,即可進(jìn)行掃碼打賞哦
今天注冊(cè)有機(jī)會(huì)得

100積分直接送

付費(fèi)專(zhuān)欄免費(fèi)學(xué)

大額優(yōu)惠券免費(fèi)領(lǐng)

立即參與 放棄機(jī)會(huì)
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢(xún)優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)

舉報(bào)

0/150
提交
取消