从纯传统bi转型过来的技术顾问,比较有优势的是对业务的熟悉,对数据有敏感度,熟悉数据模型。但是长年累月基本都是用sql处理问题。目前还没有经历过sql解决不了的问题,一个sql解决不了就用临时表,几个sql解决(笑)。虽然不是最佳实现。但目前还都能凑合应付,但咱不能就此停步不前吧?整合这段时间项目有空,于是就研究了一下用python写udf。why python??因为我还不会java啊,python相对容易学习啊。而且python学好了,还可以搞搞爬虫,搞搞机器学习呢。当然,以后也有吧这些python udf 转换成java代码的准备。毕竟技术要全,也要精啊。

  用python 写udf,我也是零基础搞起。网上一搜一大堆的的上挂python udf到hive的教程。也都很简单,也很清晰。于是学习起步了,我挑了一个比较好实现的来学习,输出一大堆用python写的日期处理函数(毕竟我还是比较偷懒的人嘛)。该函数里面包括了月头,月末,季度头,季度末,周一,周末,年头,年末,n天后,n周后,n月后,n季度后的处理函数。中间还做了一个以本行数据对比上行数据的趣味实现。

  逻辑嘛无非就是一大堆数字处理,字符串处理。在开发n周,n季度的时候才发现,我去,可以调用之前的函数来方便计算(比如n周的计算可以调用周一的函数和计算n天的函数),于是又学习python的函数调用。

  比较有意思的是季度的计算:Quarter_begin='0'+str(int(int(month)/3.1)*3+1)

  这些都是比较简单的实现,只是大概对python有个了解。如果要了解爬虫要懂网站架构,还要会搞分布式,会破解验证码什么的。如果要了解机器学习也要学习哪些python 的算法包。(本人也没做过,后期还需要再选个方向学习。不过大概会是机器学习吧~)

  废话了这么多。其实也是因为之前一直想学习python,但是一直都没找到合适的着力点。但是写完本次这轮代码后,对python算是有个大概了理解了,虽然还是很浅显,但基本能满足日常对日期使用的要求了。心里还是美滋滋的。当然了这些东西对大神来说都不值一提的。希望各位也是和我一样处在转型学习阶段的童鞋。也都能找到自己的学习方法。

  过段时间我会整理我的代码。并分享出来。求大神们帮忙指正学习。并求往后的一个学习路线。

从零起步学python计划及感想的更多相关文章

  1. [零基础学python]为什么要开设本栏目

    这个栏目的名称叫做"零基础学Python". 如今网上已经有不少学习python的课程.当中也不乏精品.按理说,不缺少我这个基础类型的课程了.可是,我注意到一个问题.无论是课程还是 ...

  2. 零基础学python》(第二版)

    ---恢复内容开始--- 零基础学python>(第二版) python学习手册 可以离线下载,  .chn格式, 插入小幽默笑话,在学习累的时候看看笑话 放松一下 欢迎下载转载,请注明出处,谢 ...

  3. jquery从零起步学

    html: <HTML> <head> <meta http-equiv="content-type" content="text/html ...

  4. 零基础学python,python视频教程

    零基础学python,python视频教程 这是我收集到的互联网上的视频资源,所有内容均来自互联网.仅供学习使用. 目前我在也在学习过程中,会把学习过程中遇到问题以及解决问题的方式,总结到我的公众号[ ...

  5. 小甲鱼零基础学python第25讲课后习题动手练习--通讯录

    小甲鱼零基础学python第25讲课后习题动手练习---通讯录 **************************通讯录要求******************************* 输入指令: ...

  6. Python学习课程零基础学Python

    python学习课程,零基础Python初学者应该怎么去学习Python语言编程?python学习路线这里了解一下吧.想python学习课程?学习路线网免费下载海量python教程,上班族也能在家自学 ...

  7. 零基础学Python 3之环境准备

    一. 配置python 3 环境 1. Python 3 下载 64位 https://www.python.org/ftp/python/3.4.2/python-3.4.2.amd64.msi 3 ...

  8. 零基础学python之构建web应用(入门级)

    构建一个web应用 前面的学习回顾: IDLE是Python内置的IDE,用来试验和执行Python代码,可以是单语句代码段,也可以是文本编辑器中的多语句程序. 四个内置数据结构:列表.字典.集合和元 ...

  9. 零基础学python之函数与模块(附详细的代码和安装发布文件过程)

    代码重用——函数与模块 摘要:构建函数,创建模块,安装发布文件,安装pytest和PEP 8插件,确认PEP8兼容性以及纠错 重用代码是构建一个可维护系统的关键. 代码组是Python中对块的叫法. ...

随机推荐

  1. Project Euler:Product-sum numbers (problem 88) C++

    A natural number, N, that can be written as the sum and product of a given set of at least two natur ...

  2. Oracle函数之chr

    chr()函数将ASCII码转换为字符:字符 –> ASCII码:ascii()函数将字符转换为ASCII码:ASCII码 –> 字符: 在oracle中chr()函数和ascii()是一 ...

  3. webservice06#异常#Handler

    1, 异常处理 package com.yangw.soap.service; public class UserException extends Exception { public UserEx ...

  4. Angular - Templates(模板)

    点击查看AngularJS系列目录 转载请注明出处:http://www.cnblogs.com/leosx/ 在Angular中,模板是一个包含了Angular特定元素和属性的HTML.Angula ...

  5. Spring MVC中Filter Servlet Interceptor 执行顺序

    <servlet> <servlet-name>springmvc</servlet-name> <servlet-class>org.springfr ...

  6. js特效遮罩层(弹出层)

    <!DOCTYPE html><html> <head> <meta charset="UTF-8"> <title>& ...

  7. D - DZY Loves Hash CodeForces - 447A

    DZY has a hash table with p buckets, numbered from 0 to p - 1. He wants to insert n numbers, in the ...

  8. Linux入门之常用命令(6)Bash命令重定向 管线命令

    命令重定向 将目前所得数据转移到其他地方 >  将输出结果导入文件 如  ls -l / >test     (1)若test文件不存在则创建 (2)若test文件存在 清空后写入 > ...

  9. JSP入门 Listener

    实现HttpSessionListener 编写一个OnlineUserListener类 package anni; import java.util.List; import javax.serv ...

  10. JavaScript案例开发之扑克游戏

    随着时代的发展,知识也在日益更新,但是基础知识永远不会过时,它是新时代的基石,更是我们进一步学习的保障,下面带着大家用JavaScript开发一款真正的扑克游戏,和大家一起分享,希望你们能够喜欢:闲话 ...