Python数据分析个人笔记6

Function application

读取数据

# 导包
import numpy as np
import pandas as pd

# 读取数据
house = pd.read_csv('./data/house.csv')
house

结果:
在这里插入图片描述

查看数据信息

house.info()

结果:
在这里插入图片描述

自定义函数拆分square

def split_square(x):
    if '平米' in x:
        return eval(x[:-2])
    else:
        return None
        
house['square'] = house['square'].apply(split_square, convert_dtype=True)

house.head()

结果:

在这里插入图片描述

自定义函数拆分years

def split_years(x):
    if '年' in str(x):
        return x[x.index('年')-4:x.index('年')]
    else:
        return None
        
house['years'] = house['years'].apply(split_years, convert_dtype=True)

house

结果:

在这里插入图片描述

自定义函数拆分floor

def split_floor(x):
    if '(' in str(x):
        return str(x)[:str(x).index('(')]
    else:
        return None
        
house['floor'] = house['floor'].apply(split_floor, convert_dtype=True)

house

结果:

在这里插入图片描述

自定义函数拆分followInfo

1、获取followInfo列

house['followInfo']

结果:

在这里插入图片描述

2、对followInfo列进行拆分

def attention_number(x):
    return eval(x[:x.split('/')[0].strip().index('人')] )

def follow_number(x):
    return eval(x.split('/')[1].strip()[x.split('/')[1].strip().index('共')+1:x.split('/')[1].strip().index('次')] )

3、提取关注人数

house['attention'] = house['followInfo'].apply(attention_number)

4、提取带看次数

house['follow'] = house['followInfo'].apply(follow_number)

5、添加到house的最后两列

house.drop('followInfo', axis=1, inplace=True, errors='ignore')
house.drop('taxtype', axis=1, inplace=True, errors='ignore')

house

结果:

在这里插入图片描述

缺失值处理

house.info

house.info()

结果:

house.dropna

参数

  • inplace = True 删除所有缺少值的行。
  • inplace = False 函数将返回包含删除行的数据。
house.dropna(inplace=True)

house

结果:

在这里插入图片描述

重复值处理

house.duplicated

house.drop_duplicates

# 检查是否有重复值
house.duplicated().sum()

# 删除重复值
house.drop_duplicates(inplace=True)

house

结果:

在这里插入图片描述

分组

house.groupby

参数

  • 将数据以 community进行分组,返回 DataFrameGroupBy 对象
house.groupby(by='community')

结果:

在这里插入图片描述

0H-1717780406617)]

分组

house.groupby

参数

  • 将数据以 community进行分组,返回 DataFrameGroupBy 对象
house.groupby(by='community')

结果:

在这里插入图片描述

  • 4
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

红陌樱花vip

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值