图:北京-奥森公园-2018年4月
无论是SAS、R还是Python,本身都自带一些数据集,对于初学者来说,可以通过这些自带的小数据集进行编程练习,无疑是非常方便的。SAS、R作为统计分析软件,本身自带的数据集较为丰富,而Python自带的数据集则相对较少,只有6、7个,存在于机器学习sklearn.datasets模块中。
如何利用Python获取到SAS和R自带的数据集呢?
方法大概有下面这几种:
将SAS、R数据集导出为txt,csv,excel等格式,再通过Python读取;
利用pandas.read_sas()直接读取SAS的数据集文件;
Python调用XXX,或者XXX调用Python?安装配置复杂,容易出问题;
使用SAS、R将自带数据集一次性写入MySQL,再通过Python读取;
从复用性和学习的角度,这里采用上面的第四种方法实现。
1、配置MySQL ODBC数据源
在“控制面板”-“管理工具”-“ODBC数据源”中添加,如下图所示:
配置MySQL的连接参数,配置好点击test测试一下是否成功。
2、将SAS自带数据集导入MySQL
将SAS数据集写入MySQL比较简单暴力,直接copy库即可,期间可能会报错,但这不影响proc copy的执行。导入完毕后,在MySQL客户端中,通过show tables可以查看所导入的全部表名称。当然,也可以通过在SAS中连接MySQL进行查看。
3、将R自带数据集导入MySQL
将R全部数据集写入MySQL的操作过程,通过循环来实现,并使用try函数跳过错误,同Python的try方法有异曲同工之处。
4、使用python读取MySQL数据
如下通过sqlalchemy模块的create_engine创建数据库连接,进行简单的数据库读写操作。
注:导入create_engine的过程中可能会报错:
1、如果提示No module named MYSQLdb,则需要安装mysqlclient模块(Windows);
2、如果安装过程中提示pyasn1-modules有问题,且pip uninstall pyasn1无法卸载时,可以手动删除pyasn1相关的文件和文件夹,然后重新安装:pip install pyasn1-modules。
领取专属 10元无门槛券
私享最新 技术干货