题目
第一题:
1.1使用read_csv读取某读取房屋销售数据.csv文件
1.2使用ndim,shape,columns属性,分别查看数据的维度,形状,以及所有特征名称
1.3使用iloc()方法,loc()方法对房屋类型为单身公寓的数据进行索引操作
第二题:
2.1使用to_datetime函数转化房屋出售时间
2.2使用mean,max,min,mode函数分别计算该地区房屋价格的均值,最大值,最小值和众值。
2.3使用describe()方法计算房屋价格的非空值数目,均值等统计量。
第三题:
3.1使用apply()方法生成new_postcode特征
3.2使用agg()方法和count函数计算出每个地区的房屋出售总数。
3.3使用transform()聚合方法和mean函数计算housesalel中房屋价格的均值。
第一题
先导入pandas、numpy库
import pandas as pd //把pandas缩写成pd,以便后面写代码。
import numpy as np //把numpy缩写成np,以便后面写代码。
使用Jupyter Notebook 需要安装一些常用的Python库。以下是一些重要的库:
1.NumPy: 用于支持大规模数值数组和矩阵运算。
2. pandas: 用于数据分析和数据清洗, 提供了DataFrame和Series 等数据结构。
3. matplotlib: 用于绘制各种类型的图表和可视化。
4. scikit-learn: 用于机器学习和数据挖掘任务。
5. tensorFlow: Google开发的机器学习框架, 支持深度学习和机器学习算法。
6. Keras: 基于tensorFlow的高级神经网络API, 可以简化模型的构建和训练过程。
除了上述库之外,还有许多其他的Python库可以在Jupyter Notebook 中使用。可以根据需要选择安装。(现在这个小练习只需要用到前两个库就好了)
jupyter notebook 的安装库
1.使用pip安装:在Jupyter Notebook的终端或命令行中,使用pip 命令来安装需要的库。例如,要安装numpy库,可以运行以下命令:!pip install numpy
2.使用conda安装:如果你使用的是Anaconda发行版,可以使用conda命令来安装库。例如,要安装pandas库,可以运行以下命令:!conda install pandas
3.使用Jupyter Notebook的内置命令:Jupyter Notebook提供了一些内置的命令来安装库。在Notebook中的代码单元格中,使用感叹号(!)来执行系统命令。
1.1使用read_csv读取某读取房屋销售数据.csv文件
data=pd.read_csv('C:/Users/admin/Desktop/某地区房屋销售数据.csv',encoding='gbk')
data为名称(可以根据自己的需要来取),read_csv为读取文件为csv文件,我们需要在文件后面加上.csv。encoding='gbk':encoding意思是编码,是将信息分类的结果用一种易于被计算机和人识别的符号体系表示出来的过程,是人们统一认识、统一观点、相互交换信息的一种技术手段。gbk编码是中文编码,中文、英文均采用双字节编码(1字节=8位),它支持简体中文和繁体中文
文件路径要去文件的属性那复制,如果自己打字上去可能会出现错误。
然后我们要查看data文件是否正确导入到jupyter里。
data.head(5) //查看data数据的前5行。.head(数字)为查看数据的前几行。
1.2使用ndim,shape,columns属性,分别查看数据的维度,形状,以及所有特征名称
ndim的属性用于获取数组的维数。简单地说,它告诉你数组有多少个维度。
data.ndim //查看data文件的维度
shape属性返回一个表示数组在每个维度上大小的元组。对于一维数组,它返回一个表示数组长度的元组;对于二维数组,它返回表示行数和列数的元组;对于更高维度的数组,它会继续返回更多维度的大小。
data.shape //查看data文件的形状
columns(列)是数据表中的一部分,用于描述表格的结构和属性。每个列都有一个名称和一个数据类型,用于存储特定类型的数据。
data.columns //查看data文件的所有特征名称
1.3使用iloc()方法,loc()方法对房屋类型为单身公寓的数据进行索引操作
先看看房屋类型里都有什么取值
value_counts()是一个用于统计某列中各个值的出现次数的函数。当配合参数bins使用时,它可以将数据分成指定的区间,然后统计每个区间内值的出现次数。
data['房屋类型'].value_counts()
在用iloc()切片
iloc是Pandas库中DataFrame和Series对象的一个方法,用于通过整数位置(索引)选择数据。iloc代表"integer location",它允许你通过整数位置来访问数据,而不是通过标签。
data.iloc[(data['房屋类型']=='unit').values,:]
在使用loc()
loc通过行索引 "Index" 中的具体值来取行数据(如取"Index"为"A"的行)
data.loc[data['房屋类型']=='unit']
总结:loc使用范围比iloc更广更实用,loc可以使用切片、名称(index,columns)、也可以切片和名称混合使用;但是loc不能使用不存在的索引来充当切片取值。iloc只能用整数来取数
第二题
2.1使用to_datetime函数转化房屋出售时间
在使用to_datetime函数之前,我们需要先查看data文件的信息。
info通常用于表示对象的信息或元数据。它可以以多种方式获得,具体取决于对象的类型。 对象属性 对于类实例和内置数据类型(如列表或字典),"info"通常是其属性。
data.info()
查看完data文件信息后,我们在使用to_datetime函数。
to_datetime用于将输入的日期或时间字符串转换为datetime
对象。
data['房屋出售时间']=pd.to_datetime(data['房屋出售时间'])
使用to_datetime函数后,我们在使用.dtype查看data文件的数据类型。
dtype是Python里的关联的数据类型对象。
data['房屋出售时间'].dtype
2.2使用mean,max,min,mode函数分别计算该地区房屋价格的均值,最大值,最小值和众值。
data['房屋价格'].mean() //均值
data['房屋价格'].max() //最大值
data['房屋价格'].min() //最大值
data['房屋价格'].mode() //众值
我们还可以计算一下分位数。
data['房屋价格'].quantile(0.25) //查看上四分位数
data['房屋价格'].quantile(0.5) //查看中位数
data['房屋价格'].quantile(0.75) //查看下四分位数
2.3使用describe()方法计算房屋价格的非空值数目,均值等统计量。
describe
并不是一个内置函数或方法,通常用于描述数据集的统计摘要信息。
data.describe() //主要作用是生成数据框(DataFrame)或序列(Series)的描述性统计信息。
第三题
3.1使用apply()方法生成new_postcode特征
在使用apply()之前需要使用.dtype查看数据类型。
data['地区邮编'].dtype
然后使用apply()方法生成new_postcode特征
data['new_postcode']=data['地区邮编'].apply(lambda x:(x/100)//1)
lambda函数也叫匿名函数,即没有具体名称的函数,它允许快速定义单行函数,可以用在任何需要函数的地方。
查看是否成功。我们只查看data文件的前两行。
data.head(2)
3.2使用agg()方法和count函数计算出每个地区的房屋出售总数。
data[['new_postcode']].groupby(by='new_postcode').agg({'new_postcode':'count'})
data['new_postcode'].value_counts()
3.3使用transform()聚合方法和mean函数计算housesalel中房屋价格的均值。
housesale1['房屋价格'].transform('mean')
最后总结和入门小教程
全部代码
import pandas as pd
import numpy as np
data=pd.read_csv('C:/Users/admin/Desktop/某地区房屋销售数据.csv',encoding='gbk')
data.head(5)
data.ndim
data.shape
data.columns
data['房屋类型'].value_counts()
data.iloc[(data['房屋类型']=='unit').values,:]
data.loc[data['房屋类型']=='unit']
data.info()
data['房屋出售时间']=pd.to_datetime(data['房屋出售时间'])
data['房屋出售时间'].dtype
data['房屋价格'].mean()
data['房屋价格'].max()
data['房屋价格'].min()
data['房屋价格'].mode()
data['房屋价格'].quantile(0.25)
data['房屋价格'].quantile(0.5)
data['房屋价格'].quantile(0.75)
data.describe()
data['地区邮编'].dtype
data['new_postcode']=data['地区邮编'].apply(lambda x:(x/100)//1)
data.head(2)
data[['new_postcode']].groupby(by='new_postcode').agg({'new_postcode':'count'})
data['new_postcode'].value_counts()
housesale1['房屋价格'].transform('mean')
总结
我们这个小练习差不多完成了,我们在这个练习里面有许多知识点,要好好记下来。
入门小教程
Jupyter Notebook是一个交互式笔记本,支持运行40多种编程语言,本质上是一个Web应用程序,便于创建和共享程序文档,支持实时代码、数学方程、可视化和markdown。它的用途包括数据清理和转换、数值模拟、统计建模、机器学习等。Jupyter Notebook允许用户通过Web浏览器访问和操作,提供了一个交互式的编程环境,使得编程学习、教学和科研变得更加直观和便捷。12
入门Jupyter Notebook,首先需要了解其基本概念和操作。以下是一些入门教程的关键点:
-
安装Jupyter Notebook:
-
启动Jupyter Notebook:
- 安装完成后,通过命令行输入
jupyter notebook
命令来启动Jupyter Notebook。这将在浏览器中打开一个窗口,显示Jupyter Notebook的Dashboard。
- 安装完成后,通过命令行输入
-
创建新的Notebook:
- 在Dashboard中,单击右上角的“New”下拉按钮,然后选择希望启动的notebook类型(例如,Python 3)。这将打开一个新的Notebook界面,用户可以在其中编写和执行代码。
-
Notebook界面介绍:
- Jupyter Notebook界面由多个部分组成,包括代码单元格、输出区域等。用户可以在代码单元格中编写代码,执行后结果将显示在输出区域。此外,还有各种功能按钮和菜单,用于管理Notebook和执行常用操作。
-
使用Jupyter魔术命令:
- Jupyter Notebook提供了一系列魔术命令,如
%%html
、%%writefile
、%%bash
等,这些命令可以在Notebook中执行特殊操作。通过执行%lsmagic
可以查看所有可用的魔术命令列表,而%magic
则提供每个魔术命令的详细文档。
- Jupyter Notebook提供了一系列魔术命令,如
-
分享和协作:
- Jupyter Notebook支持通过电子邮件、Dropbox、GitHub和Jupyter Notebook Viewer等方式分享给其他人。这使得团队合作和知识共享变得更加容易。
通过上述步骤,用户可以快速入门Jupyter Notebook,并开始享受其带来的便捷和高效。无论是学习编程、进行教学还是进行科研工作,Jupyter Notebook都是一个强大的工具。