EFunction jupyter魔法函数能够以简单语法命令快速增强Excel和jupyter之间数据交互能力。目前EFunction已经实现4条魔法语法函数。后续继续增加。
%ef_get语法能够从当前活动表格之中提取数据,如果不带任何参数,语法命令能够将该表格内所有使用单元格区域内数据提取到jupyter之中。
Excel表格内不同类型数据,将会被转化为不同形式:
%ef_get语法只有一个参数,表示提取数据范围,如果缺省表示提取整张表格包含数据的区域。例如下图将表格内所有数据提取出来,参数缺省不填。下图案例完整语法为:%ef_get
提取表格内所有数据
如果只想提取Excel表格内前3行数据,第一行将作为columns数据,其余两行将作为实际数据,完整语法为:%ef_get -a a1:h3。
%ef_get参数“-a”为address地址缩写,后面跟着Excel单元格引用区域。如果需要指定数据区域,该写法为固定写法。
提取表格内指定范围数据
%ef_get语法函数,能够获取数据,并将结果返回给一个变量,以提供进一步分析使用,例如将提取数据结果返回给“pad”变量,则完整语法为:
pad = %ef_get -a a1:h3。
语法将结果返回给变量
在jupyter内,Python分析结果数据,也可以通过魔法语法,将结果返回到Excel表格内。该语法只有一个参数,就是语法后面跟着变量名称,例如将上文案例之中,变量“pad”数据返回到一个新表格之中,则返回数据完整语法为:%ef_set pad。
语法命令只能够载出dataframe,series和list(list数据只能够为数值、文本和布尔值)类型数据。
将jupyter内变量返回到Excel之内
Excel表格内,如果不需要数据,可以使用%ef_clear语法将表格指定范围内数据给清除掉。语法默认将当前活动表格内所有数据清除,如果指定区域,则将指定区域内数据清除。
清除所有表格数据
%ef_clear语法用法和%ef_get用法类似清除所有数据使用%ef_clear语法,清除指定选区内数据使用%ef_clear -a a1:c3。
清除指定区域内数据
%%ef_sql语法支持jupyter单元格内编写SQL脚本,从数据之中查询数据,并将结果返回到jupyter变量之中。
%%ef_sql语法只执行查询操作,不支持其他操作。在执行查询前,先要通过%ef_conn语法设置数据库连接。
例如从mysql数据库之中查询数据,通过pymysql包设置数据库连接信息。
import pymysql
conn = pymysql.connect(host='localhost',user='********',
password='*****',
port=3306,
db='stockdata',
charset='utf8')数据库连接信息设置完毕后,就可以通过%ef_conn语法设置数据库连接。如果连接成功,命令会打印成功标志。
设置数据库连接信息
数据库连接设置完成后,就可以通过%%ef_sql命令编写SQL脚本,并将结果返回给dataframe数据。
需要注意SQL脚本必须在%%ef_sql语法第二行开始,%%ef_sql后面参数为SQL执行结果变量,数据类型为dataframe数据类型。
SQL只能够为查询语句,禁止出现分号“;”。
编写SQL脚本并返回结果
目前4条魔法命令已经集成到EFunction jupyter编辑器之中,如果jupyter提示缺失该函数,可以将页面刷新,或者重置jupyter。
四条魔法函数目前处于初步阶段。后续可能根据网友反馈进行调整,如果使用过程之中,有何建议欢迎留言反馈!
| 留言与评论(共有 0 条评论) “” |