python简单的模型数据分析案列
时间: 2023-10-14 21:33:34 浏览: 47
好的,以下是一个简单的 Python 模型数据分析案例,使用了 Scikit-learn 库和 Matplotlib 库:
假设我们有一份房屋销售数据,包含了房屋的面积和售价。我们想要训练一个线性回归模型来预测房屋的售价,并且使用模型来分析面积和售价之间的关系。
首先,我们需要导入 Scikit-learn 和 Matplotlib 库,并且读取数据集:
```python
import pandas as pd
import numpy as np
from sklearn.linear_model import LinearRegression
import matplotlib.pyplot as plt
#读取数据
data = pd.read_csv('house_sales_data.csv')
#将面积和售价转换成矩阵形式
X = np.array(data['area']).reshape(-1, 1)
y = np.array(data['price'])
```
然后,我们可以使用 Scikit-learn 库的 LinearRegression 类来训练线性回归模型,并且使用模型来预测房屋的售价:
```python
#训练线性回归模型
model = LinearRegression()
model.fit(X, y)
#使用模型预测房屋的售价
y_pred = model.predict(X)
```
接下来,我们可以使用 Matplotlib 库来绘制面积和售价以及预测值之间的关系:
```python
#绘制面积和售价以及预测值之间的关系
plt.scatter(X, y, color='blue')
plt.plot(X, y_pred, color='red', linewidth=2)
plt.xlabel('Area')
plt.ylabel('Price')
plt.show()
```
最后,我们可以使用模型来分析面积和售价之间的关系,例如计算相关系数和预测某个面积的房屋售价:
```python
#计算相关系数
r = np.corrcoef(X.reshape(-1), y)[0, 1]
print('Correlation coefficient:', r)
#预测某个面积的房屋售价
area = np.array([[1000]])
price = model.predict(area)
print('Price of 1000 sq.ft. house:', price[0])
```
完整代码如下:
```python
import pandas as pd
import numpy as np
from sklearn.linear_model import LinearRegression
import matplotlib.pyplot as plt
#读取数据
data = pd.read_csv('house_sales_data.csv')
#将面积和售价转换成矩阵形式
X = np.array(data['area']).reshape(-1, 1)
y = np.array(data['price'])
#训练线性回归模型
model = LinearRegression()
model.fit(X, y)
#使用模型预测房屋的售价
y_pred = model.predict(X)
#绘制面积和售价以及预测值之间的关系
plt.scatter(X, y, color='blue')
plt.plot(X, y_pred, color='red', linewidth=2)
plt.xlabel('Area')
plt.ylabel('Price')
plt.show()
#计算相关系数
r = np.corrcoef(X.reshape(-1), y)[0, 1]
print('Correlation coefficient:', r)
#预测某个面积的房屋售价
area = np.array([[1000]])
price = model.predict(area)
print('Price of 1000 sq.ft. house:', price[0])
```
这个简单的模型数据分析案例可以帮助我们了解面积和售价之间的关系,并且使用线性回归模型来预测房屋的售价。你可以根据自己的需求,使用 Scikit-learn 和 Matplotlib 库来完成更复杂的模型数据分析任务。