Python机器学习从入门到高级:导入数据(包含数据库连接)

加载数据是我们进行数据分析的第一步,本文主要介绍以下几个常用的方面导入数据集

  • 加载scikit-learn中的数据集
  • 创建模拟数据集
  • 导入csv数据集
  • 导入excel数据集
  • 连接mysql数据库

🥇1.加载sklearn包中的数据集

sklearn是一个机器学习库,里面包含了许多机器学习数据集。例如:

  • load_boston 波士顿房价的观测值 用于研究回归算法

  • load_iris 150个花的数据,用于研究分类算法

  • load_digits 手写数字图片的观测值,用于研究图形分类算法的优质数据集

from sklearn import datasets

# 手写数字数据集
digits = datasets.load_digits()

# 创建特征向量
features = digits.data
# 创建目标向量
tatget = digits.target

features[0]

array([ 0.,  0.,  5., 13.,  9.,  1.,  0.,  0.,  0.,  0., 13., 15., 10.,
       15.,  5.,  0.,  0.,  3., 15.,  2.,  0., 11.,  8.,  0.,  0.,  4.,
       12.,  0.,  0.,  8.,  8.,  0.,  0.,  5.,  8.,  0.,  0.,  9.,  8.,
        0.,  0.,  4., 11.,  0.,  1., 12.,  7.,  0.,  0.,  2., 14.,  5.,
       10., 12.,  0.,  0.,  0.,  0.,  6., 13., 10.,  0.,  0.,  0.])

🥇2.创建模拟数据集

🥈2.1 回归数据集

下面我们通过make_regression来模拟一个回归数据集

from sklearn.datasets import make_regression
features, target, coefficients = make_regression(n_samples=100,
                                                 n_features=3,
                                                 n_informative=3,
                                                 n_targets=1,
                                                 noise=0,
                                                 coef=True,
                                                 random_state=1)

print('Featrue Matrix\n', features[:3])
print('Target Vector\n', target[:3])

Featrue Matrix
 [[ 1.29322588 -0.61736206 -0.11044703]
 [-2.793085    0.36633201  1.93752881]
 [ 0.80186103 -0.18656977  0.0465673 ]]
Target Vector
 [-10.37865986  25.5124503   19.67705609]

🥈2.2 分类模拟数据集

使用make_classification创建分类数据集

from sklearn.datasets import make_classification
features, target= make_classification(n_samples=100,
                                      n_features=3,
                                      n_informative=3,
                                      n_redundant=0,
                                      n_classes=2,
                                      weights=[.25, .75],
                                      random_state=1)

print('Featrue Matrix\n', features[:3])
print('Target Vector\n', target[:3])

Featrue Matrix
 [[ 1.06354768 -1.42632219  1.02163151]
 [ 0.23156977  1.49535261  0.33251578]
 [ 0.15972951  0.83533515 -0.40869554]]
Target Vector
 [1 0 0]

import matplotlib.pyplot as plt
%matplotlib inline

plt.scatter(features[:,0], features[:,1],c=target)


png

🥈2.3 聚类数据集

使用make_blobs创建聚类数据集

# 用于聚类
from sklearn.datasets import make_blobs
features, target = make_blobs(n_samples=100,
                              n_features=2,
                              centers=3,
                              cluster_std=0.5,
                              shuffle=True,
                              random_state=1)

print('Featrue Matrix\n', features[:3])
print('Target Vector\n', target[:3])

Featrue Matrix
 [[ -1.22685609   3.25572052]
 [ -9.57463218  -4.38310652]
 [-10.71976941  -4.20558148]]
Target Vector
 [0 1 1]

plt.scatter(features[:,0], features[:,1],c=target)


png

🥇3. 加载CSV文件

csv文件是我们在进行数据分析时最常用的数据格式。python中pandas库提供了非常简单的方法导入,具体如下

import pandas as pd 
file = r'C:\Users\DELL\Desktop\Statistic learning\ISLR\data\auto.csv'
df = pd.read_csv(file)
# 当数据没有表头时,设置header = None
df.head()

.dataframe tbody tr th:only-of-type { vertical-align: middle; } .dataframe tbody tr th { vertical-align: top; } .dataframe thead th { text-align: right; }

mpgcylindersdisplacementhorsepowerweightaccelerationyearoriginname
018.08307.0130350412.0701chevrolet chevelle malibu
115.08350.0165369311.5701buick skylark 320
218.08318.0150343611.0701plymouth satellite
316.08304.0150343312.0701amc rebel sst
417.08302.0140344910.5701ford torino

🥇4. 加载excel文件

url = r'C:\Users\DELL\Desktop\我的文件\学校课程\大三上复习资料\多元统计\例题数据及程序整理\例3-1.xlsx'
df = pd.read_excel(url,header=1)
#sheetname 表数据表所在的位置,如果加入多张数据表,可以把他们放在一个列表中一起传入
f

序号批发和零售业交通运输、仓储和邮政业住宿和餐饮业金融业房地产业水利、环境和公共设施管理业所属地区单位类型
0153918.031444.047300.038959.047123.035375.0北京集体
1261149.039936.045063.0116756.048572.047389.0上海集体
2334046.047754.039653.0111004.046593.037562.0江苏集体
3450269.051772.039072.0125483.056055.043525.0浙江集体
4527341.043153.040554.079899.044936.042788.0广东集体
56129199.090183.059309.0224305.080317.074290.0北京国有
6789668.0100042.064674.0208343.088977.077464.0上海国有
7869904.072784.045581.0105894.065904.059963.0江苏国有
89108473.086648.051239.0163834.069972.056899.0浙江国有
91063247.076359.052359.0138830.054179.047487.0广东国有
101193769.080563.050984.0248919.087522.073048.0北京其他
1112118433.099719.052295.0208705.082743.073241.0上海其他
121363340.065300.042071.0126708.067070.050145.0江苏其他
131461801.071794.041879.0125875.066284.052655.0浙江其他
141562271.080955.043174.0145913.068469.052324.0广东其他

🥇5. 查询SQL数据库

在实际业务分析中,很多时候数据都是存放在数据库中,因此,学会如何连接数据库是非常有必要的,之前介绍了如何使用R语言连接数据库,R语言连接mysql数据库,接下来我们看看如何使用python来连接数据库。首先需要安装pymysql包,pip install pymysql,具体使用代码如下

  • 导入相关库
impcort pandas as pd 
import pymysql

  • 连接mysql数据库,需要指定相关的参数
dbconn=pymysql.connect(
  host="localhost",
  database="test",#要连接的数据库
  user="root",
  password="密码",#密码
  port=3306,#端口号
  charset='utf8'
 )

  • 读取数据,通过read_sql可以实现在python中读取sql查询的结果,具体结果如下。
sql = "select * from goods;"
df = pd.read_sql(sql=sql, con=dbconn)
df

.dataframe tbody tr th:only-of-type { vertical-align: middle; } .dataframe tbody tr th { vertical-align: top; } .dataframe thead th { text-align: right; }

idcategory_idcategoryNAMEpricestockupper_time
011女装/女士精品T恤39.910002020-11-10
121女装/女士精品连衣裙79.925002020-11-10
231女装/女士精品卫衣89.915002020-11-10
341女装/女士精品牛仔裤89.935002020-11-10
451女装/女士精品百褶裙29.95002020-11-10
561女装/女士精品呢绒外套399.912002020-11-10
672户外运动自行车399.910002020-11-10
782户外运动山地自行车1399.925002020-11-10
892户外运动登山杖59.915002020-11-10
9102户外运动骑行装备399.935002020-11-10
10112户外运动运动外套799.95002020-11-10
11122户外运动滑板499.912002020-11-10

本章的介绍到此介绍,在后续我还会考虑介绍一些如何使用python进行特征工程、数据清洗、模型构建以及一些数据挖掘实战项目。大家多多点赞、收藏、评论、关注支持!!

---------------------------END---------------------------

题外话

在这里插入图片描述

感兴趣的小伙伴,赠送全套Python学习资料,包含面试题、简历资料等具体看下方。

👉CSDN大礼包🎁:全网最全《Python学习资料》免费赠送🆓!(安全链接,放心点击)

一、Python所有方向的学习路线

Python所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照下面的知识点去找对应的学习资源,保证自己学得较为全面。

img

二、Python兼职渠道推荐*

学的同时助你创收,每天花1-2小时兼职,轻松稿定生活费.
在这里插入图片描述

三、最新Python学习笔记

当我学到一定基础,有自己的理解能力的时候,会去阅读一些前辈整理的书籍或者手写的笔记资料,这些笔记详细记载了他们对一些技术点的理解,这些理解是比较独到,可以学到不一样的思路。

img

四、实战案例

纸上得来终觉浅,要学会跟着视频一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。

img

👉CSDN大礼包🎁:全网最全《Python学习资料》免费赠送🆓!(安全链接,放心点击)

若有侵权,请联系删除

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值