python函数转换_将Python函数转换为PL/Python函数
我编写了几个python函数来对数据集中的连续变量进行幂变换。第一个函数基本上查找每个列的数据类型,并返回数据类型的dict以及相应的列名称作为值。在
第二个函数现在接受数据类型和列名的dict,并获取一个输入数据集,并使用代码中编写的幂变换函数对每个连续特性(“float64”)进行幂转换。在
它在python中运行得很好。下面是代码:
首先将数据集传递给featuresDtypes函数,以获取dict形式的变量的数据类型# Then pass the same dataset to varTransformation function by also passing the returned data type dict.
def featuresDtypes(model_data1):
"""This function takes a dataframe and gives a dict of column
data types
"""
g = model_data1.columns.to_series().groupby(model_data1.dtypes).groups
var_types={k.name: v for k, v in g.items()}
return var_types
def varTransformation(model_data1,var_types):
"""This function takes in a list of continuous feature names
and transforms it using Box-Cox transformation
list--> df
(list of feature names)---> returns a transformed pandas dataframe
"""
var_transform_mapping={}
model_data_transformed=copy.deepcopy(model_data1)
continuous_var=var_types['float64']
for x in continuous_var:
# Anchoring the data at 1 as Box-Cox takes more than 0 as the value
model_data_transformed[x]=(model_data_transformed[x]-(model_data_transformed[x].min()-1))
lmbda,ppc=sp.stats.boxcox_normplot(model_data_transformed[x], -20, 20, plot=ax)
lmax_pearsonr = sp.stats.boxcox_normmax(model_data_transformed[x])
lamda_ppc=lmbda[ppc.argsort()[::-1][0]]
#Rounding the lambda value
if 0.3<=np.abs(lamda_ppc)-int(np.abs(lamda_ppc))<=0.59 :
lamda_ppc=cmp(lamda_ppc,0)*(int(np.abs(lamda_ppc))+0.5)
else:
lamda_ppc=cmp(lamda_ppc,0)*(np.around(np.abs(lamda_ppc)))
# Getting the box - cox tranformation using the lambda value
model_data_transformed[x]= sp.stats.boxcox(model_data_transformed[x],lamda_ppc)
var_transform_mapping[x]=lamda_ppc
return model_data_transformed,var_transform_mapping
现在,我想在用于Postgresql的PL/Python中实现这一点。在
基本上我要找的东西如下:
^{pr2}$
在这个PL/Python中,我们可以使用informationschema代码来获取postgres表中每个列的数据类型。因此,我们不需要上面编写的第一个python函数,该函数是以python格式编写的。Pl/Python代码的其余部分将类似于这样一种情况,即查看一个列是否属于连续类型,然后使用Pl/Python对其进行转换。在
最后返回的表需要一个经过修改/转换的变量表,以及用正确的转换值转换的列名的dict或映射,如python函数所示。在
有什么帮助吗?在
python函数转换_将Python函数转换为PL/Python函数相关推荐
- Python灰帽子_黑客与逆向工程师的Python编程之道
收藏自用 链接:Python灰帽子_黑客与逆向工程师的Python编程之道
- python max函数时间复杂度_程序员的思考:用函数还是用复杂表达式
程序员的思考:用函数还是用复杂表达式 Perl语言的原作者Larry Wall曾经说过,伟大的程序员都有三个优点:懒惰.暴躁和自负.乍一看这三个词语没有一个是褒义词,但在程序员的世界里,这三个词有不同 ...
- python网页版本_利用jupyter网页版本进行python函数查询方式
我就废话不多说了,还是直接看代码吧! import numpy world_alchol=numpy.genfromtxt("world_alcohol.txt",delimter ...
- python函数助手_转jmeter(十五)函数助手
由于时间和版本问题,其中有些内容和排版我做了修改和重新整理,使其更符合最新的jmeter版本. 一.使用jmeter函数助手 启动jmeter后,可以在JMeter的选项菜单中找到函数助手对话框(快捷 ...
- python整数转换字符串_Python | 将字符串转换为整数列表
python整数转换字符串 Given a string with digits and we have to convert the string to its equivalent list of ...
- python nonetype转换str_如何将Nonetype转换为int或string?
在其中一个评论中,你说: 不知何故,我得到一个Nonetype值,它应该是一个int,但它现在是一个Nonetype对象 如果是你的代码,那么当你期望一个数字并且阻止它发生的时候,弄清楚你是如何得到N ...
- python 图像格式转换_如何用六行Python构建图像类型转换器
python 图像格式转换 by AMR 通过AMR 如何用六行Python构建图像类型转换器 (How to build an image type convertor in six lines o ...
- python 面试问题_值得阅读的30个Python面试问题
python 面试问题 Interview questions are quite tricky to predict. In most cases, even peoples with great ...
- python老师武_跟着廖雪峰老师学python (5)
若想技术精进,当然得把基础知识打得牢牢的. 廖雪峰的官方网站 python3教程,该网站提供的教程浅显易懂,还附带了讲学视频,非常适合初学者正规入门. 以下是通过廖雪峰python官方网站学习的个人 ...
最新文章
- Go 1.5正式发布:实现自举、引入并发垃圾收集器
- Executor 执行器接口笔记
- eos和以太坊有什么关系_比特币、以太坊、柚子三者的关系
- .Net 5性能改进
- 11gR2 RAC时间同异常导致节点down掉问题处理
- android 控件覆盖关系,安卓子控件抢占父控件点击事件或者焦点问题
- js数组查找最接近_如何从javascript中的对象数组中获取最接近的先前id
- 你真的会用 VS Code 的 Ctrl、Shift和Alt吗?高效易用的快捷键:多光标、跳转引用等轻松搞定
- c语言 正整数 几位 逆序,c语言经典例题:正整数求位数and求顺、逆序位数
- 发现有的时候,EBS会报连接数不足的问题
- 玩转Dokuwiki
- Surface Pro 4 无限重启的解决方法
- 真的,你不了解石家庄。
- 毕业两年,工作三年Java程序员的一点点体会与建议
- Google 后 Hadoop 时代的新 “三驾马车” -- Caffeine(搜索)、Pregel(图计算)、Dremel(查询)
- 代码审计之百家cms
- 计算机专业mx330够用吗,这款新的HP笔记本电脑配备了MX330图形卡,那么性能如何?...
- 一个风靡全球的游戏(需要大家来参加)!!!
- 你偷看的小簧片,其实全都被监视了…
- java 帕斯卡_java编程 帕斯卡三角形 立刻求高手!! 给满分