sklearn快速入门教程 ——2.基本数据探索

sklearn快速入门教程


目录

sklearn快速入门教程

使用’Pandas’ 获取你熟悉的数据

解释数据描述

轮到你了

练习

第一步 加载数据

第二步 浏览数据

考虑你的数据

继续向前

练习参考答案


使用’Pandas’ 获取你熟悉的数据

任何机器学习项目的第一步都是熟悉数据。你可以用 pandas 包来完成这个。pandas 是科学家探索和处理数据的主要工具。大多数人在代码中将 pandas 缩写为pd。我们用命令来完成。

import pandas as pd

pandas 库最重要的部分是DataFrame。DataFrame保存的数据类型可能被认为是表。这类似于Excel中的工作表或SQL数据库中的表。
Pandas有强大的方法来处理这类数据。
举个例子,我们来看看澳大利亚墨尔本的房价数据。在实践练习中,您将对一个新的数据集应用相同的过程,该数据集包含爱荷华州的房价。

示例(墨尔本)数据位于文件路径 ./melbourne-housing-snapshot/melb_data.csv.

我们使用以下命令加载和浏览数据:

# 查看文件相关路径
melbourne_file_path = './melbourne-housing-snapshot/melb_data.csv'
# 读取数据并保存为 DataFrame 格式 ,以墨尔本数据
melbourne_data = pd.read_csv(melbourne_file_path) 
# 打印 墨尔本数据 的概要
melbourne_data.describe()
              Rooms         Price      Distance      Postcode      Bedroom2  \
count  13580.000000  1.358000e+04  13580.000000  13580.000000  13580.000000   
mean       2.937997  1.075684e+06     10.137776   3105.301915      2.914728   
std        0.955748  6.393107e+05      5.868725     90.676964      0.965921   
min        1.000000  8.500000e+04      0.000000   3000.000000      0.000000   
25%        2.000000  6.500000e+05      6.100000   3044.000000      2.000000   
50%        3.000000  9.030000e+05      9.200000   3084.000000      3.000000   
75%        3.000000  1.330000e+06     13.000000   3148.000000      3.000000   
max       10.000000  9.000000e+06     48.100000   3977.000000     20.000000   

           Bathroom           Car       Landsize  BuildingArea    YearBuilt  \
count  13580.000000  13518.000000   13580.000000   7130.000000  8205.000000   
mean       1.534242      1.610075     558.416127    151.967650  1964.684217   
std        0.691712      0.962634    3990.669241    541.014538    37.273762   
min        0.000000      0.000000       0.000000      0.000000  1196.000000   
25%        1.000000      1.000000     177.000000     93.000000  1940.000000   
50%        1.000000      2.000000     440.000000    126.000000  1970.000000   
75%        2.000000      2.000000     651.000000    174.000000  1999.000000   
max        8.000000     10.000000  433014.000000  44515.000000  2018.000000   

          Lattitude    Longtitude  Propertycount  
count  13580.000000  13580.000000   13580.000000  
mean     -37.809203    144.995216    7454.417378  
std        0.079260      0.103916    4378.581772  
min      -38.182550    144.431810     249.000000  
25%      -37.856822    144.929600    4380.000000  
50%      -37.802355    145.000100    6555.000000  
75%      -37.756400    145.058305   10331.000000  
max      -37.408530    145.526350   21650.000000  
解释数据描述

结果显示原始数据集中每列有8个数字。第一个数字count,显示了有多少行没有缺失值。
缺失值的原因有很多。例如,在调查一套一居室的房子时,不会收集第二居室的大小。我们将回到丢失数据的话题。
第二个值是平均值,它是平均值。在这种情况下,std是标准偏差,用于测量数值在数值上的分布情况。
要解释最小25%50%75%最大值,请想象将每列从最低值排序到最高值。第一个(最小的)值是最小值。如果你在列表中遍历四分之一,你会发现一个大于25%的值,小于75%的值。这就是**25%**值(发音为“第25百分位”)。第50百分位和第75百分位的定义类似,max是最大的数字。

轮到你了

以下为练习部分


练习

运行下面的单元格设置代码检查,这将在运行过程中验证您的工作。

第一步 加载数据

将 iowa 的数据文件读入名为 home_data 的Pandas 的 DataFrame。

import pandas as pd

# 文件路径
iowa_file_path = '../input/home-data-for-ml-course/train.csv'

# 将文件数据读入到 home_data 变量中,在横线入填相应的内容
home_data = ________

# 系统将会检查你输入是否正确

step_1.check()

如果上述填写正确,会出现 Correct 字符

# 去掉注释,运行此处,即会有提示与答案
# step_1.hint()
# step_1.solution()

第二步 浏览数据

使用所学的命令查看数据的摘要统计信息。然后填写变量以回答以下问题

# 打印摘要统计信息
________
import datetime
# lot 的 平均大小 (保留到整数)?
avg_lot_size = ____

# 到今天为止,最新的房子最悠久的历史(今年 - 它的建造日期)
newest_home_age = ____

# 检查答案
step_2.check()

#step_2.hint()
#step_2.solution()

考虑你的数据

你数据中最新的房子并不是那么新。对此有一些可能的解释:
1.他们还没有在收集这些数据的地方建造新房子。
2.这些数据是很久以前收集的。数据公布后建造的房屋不会出现。

如果原因是上面的解释#1,那么这是否会影响您对使用这些数据构建的模型的信任?如果这是原因#2呢?

你怎么能深入研究数据,看看哪种解释更合理?
查看此讨论帖子,了解其他人的想法或添加您的想法。

继续向前

你已准备好前往 你的第一个机器学习模型

练习参考答案
# step 1
home_data = pd.read_csv(iowa_file_path)

# step 2
home_data.describe()
avg_lot_size = round(home_data['LotArea'].mean())
newest_home_age = datetime.datetime.now().year-home_data['YearBuilt'].max()

# 也可以根据 describe 直接提交具体数值
avg_lot_size = 10517
newest_home_age = 12

相关推荐

  1. sklearn快速入门教程 ——2.基本数据探索

    2024-06-18 23:12:03       6 阅读
  2. 机器学习入门sklearn基础教程

    2024-06-18 23:12:03       10 阅读
  3. sklearn基础教程

    2024-06-18 23:12:03       10 阅读
  4. sklearn基础教程

    2024-06-18 23:12:03       8 阅读
  5. Sklearn基础教程

    2024-06-18 23:12:03       10 阅读
  6. [Rust] 快速基础入门教程

    2024-06-18 23:12:03       25 阅读
  7. 从零开始的机器学习之旅:探索Sklearn基础教程

    2024-06-18 23:12:03       15 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-06-18 23:12:03       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-06-18 23:12:03       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-06-18 23:12:03       19 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-06-18 23:12:03       20 阅读

热门阅读

  1. 音频处理2_进阶概念

    2024-06-18 23:12:03       7 阅读
  2. Git分支打包的详细教程

    2024-06-18 23:12:03       6 阅读
  3. ubuntu22.04安装vivado2022.2

    2024-06-18 23:12:03       9 阅读
  4. Ubuntu Updates for this repository will not be applied

    2024-06-18 23:12:03       7 阅读
  5. ijkplayer编译 android版本

    2024-06-18 23:12:03       6 阅读
  6. QT

    QT

    2024-06-18 23:12:03      6 阅读
  7. ARM处理器的应用场景

    2024-06-18 23:12:03       6 阅读
  8. adb 截屏和录屏命令

    2024-06-18 23:12:03       8 阅读