租房数据预处理(3)

租房数据预处理(3)

描述

1.请读取租房数据原始文件zfsj_group.csv,某5行数据如下图所示。‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬

img‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬

2.请对"区域"列数据统计,统计结果如下。‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬

img‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬

3.统计数据结果为zfsj3_after.csv文件,文件内前五行数据如下所示。**请参考编程模板完善代码。本题目支持文件在线评阅。**‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬

输入输出示例

输入输出
示例 1[输出处理好结果到zfsj3_after.csv]

代码:

import numpy as np
import pandas as pd

file_path = open("zfsj_group.csv", encoding="utf-8")
file_data = pd.read_csv(file_path)
housetype_data = file_data["户型"]
file_data.drop_duplicates(inplace=True)
file_data.dropna(inplace=True)
df = pd.DataFrame(file_data.groupby('区域').count())
df.drop(['户型', '面积(㎡)', '价格(元/月)'], axis=1, inplace=True)
df.rename(columns={'小区名称': '小区数量'}, inplace=True)
df = df.reset_index()
df.to_csv("zfsj3_after.csv", encoding="utf-8", header=True)

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
在前面的三个预处理步骤中,我们完成了数据的清洗、去重、缺失值处理和特征工程。在这一步中,我们将对处理后的数据进行进一步的处理,以便我们可以在后续步骤中使用它来构建模型。 1. 对特征进行编码 我们需要将文本特征转换为数字特征,以便我们可以在模型中使用它们。我们可以将文本特征编码为数字特征,例如将每个区域编码为一个数字。我们可以使用 pandas 中的 `get_dummies()` 函数来进行独热编码,将每个区域编码为一个二进制值。 ``` # 将区域特征编码为二进制值 df = pd.concat([df, pd.get_dummies(df['区域'])], axis=1) ``` 2. 特征缩放 我们需要对数值型特征进行特征缩放,以便它们具有相同的尺度。我们可以使用 sklearn 中的 `StandardScaler` 函数来对特征进行缩放。 ``` # 对数值型特征进行缩放 from sklearn.preprocessing import StandardScaler scaler = StandardScaler() df[['面积', '楼层', '房龄']] = scaler.fit_transform(df[['面积', '楼层', '房龄']]) ``` 3. 特征选择 我们需要从所有特征中选择一些最相关的特征来构建模型。我们可以使用 sklearn 中的 `SelectKBest` 函数来选择最相关的特征。 ``` # 选择与目标变量最相关的特征 from sklearn.feature_selection import SelectKBest, f_regression X = df.drop(['租金'], axis=1) y = df['租金'] selector = SelectKBest(f_regression, k=10) selector.fit(X, y) X = X[X.columns[selector.get_support(indices=True)]] ``` 在完成这些预处理步骤后,我们可以将数据划分为训练集和测试集,并使用它们来构建模型。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

追寻远方的人

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

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

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

打赏作者

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

抵扣说明:

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

余额充值