精华内容
下载资源
问答
  • 1python怎么学好在使用python的时候,经常会需要进行数据分析。而这个时候Quandl是比较常用的数据分析源,下面小编就给大家分享一下如何用Python搭配Quandl进行数据分析。以下是小编为你整理的python怎么学好首先...

    b3f25aedd5b3021427204369e169843c.png

    1

    python怎么学好

    在使用python的时候,经常会需要进行数据分析。而这个时候Quandl是比较常用的数据分析源,下面小编就给大家分享一下如何用Python搭配Quandl进行数据分析。以下是小编为你整理的python怎么学好

    首先打开CMD命令行,执行pip install sklearn命令安装sklearn包

    然后通过pip install quandl命令安装quandl包

    接下来我们通过pip install pandas安装pandas包

    接下来我们在CMD命令行中通过import语句导入pandas和Quandl两个库

    然后我们可以登录Quandl的平台寻找要进行数据分析的Quandl Code

    接下来我们通过Quandl的get方法获取数据分析的数据源

    最后我们执行以后就会在CMD窗口看到如下图所示的数据源,我们只需要通过命令对数据源进行计算就可以达到分析的目的了

    2

    编写内容爬虫

    首先,给爬虫建立个目录,在项目里面和app同级,然后把这个目录变成一个python的package

    mkdir ~/python_spider/sfspider touch ~/python_spider/sfspider/__init__.py

    以后,这个目录就叫爬虫包了

    在爬虫包里面建立一个spider.py用来装我的爬虫们

    vim ~/python_spider/sfspider/spider.py

    一个基本的爬虫,只需要下面几行代码:

    (代码下面会提供)然后呢,就可以玩玩我们的“爬虫”了。

    进入python shell

    >>> from sfspider import spider

    >>> s = spider.SegmentfaultQuestionSpider('1010000002542775')

    >>> s.url

    >>> 'http://segmentfault.com/q/1010000002542775'

    >>> print s.dom('h1#questionTitle').text()

    >>> 微信JS—SDK嵌套选择图片和上传图片接口,实现一键上传图片,遇到问题

    看吧,我现在已经可以通过爬虫获取segmentfault的提问标题了。下一步,为了简化代码,我把标题,回答等等的属性都写为这个蜘蛛的属性。代码如下

    # -*- coding: utf-8 -*-

    import requests # requests作为我们的html客户端

    from pyquery import PyQuery as Pq # pyquery来操作dom

    class SegmentfaultQuestionSpider(object):

    def __init__(self, segmentfault_id): # 参数为在segmentfault上的id

    self.url = 'http://segmentfault.com/q/{0}'.format(segmentfault_id)

    self._dom = None # 弄个这个来缓存获取到的html内容,一个蜘蛛应该之访问一次

    @property

    def dom(self): # 获取html内容

    if not self._dom:

    document = requests.get(self.url)

    document.encoding = 'utf-8'

    self._dom = Pq(document.text)

    return self._dom

    @property

    def title(self): # 让方法可以通过s.title的方式访问 可以少打对括号

    return self.dom('h1#questionTitle').text() # 关于选择器可以参考css selector或者jquery selector, 它们在pyquery下几乎都可以使用

    @property

    def content(self):

    return self.dom('.question.fmt').html() # 直接获取html 胆子就是大 以后再来过滤

    @property

    def answers(self):

    return list(answer.html() for answer in self.dom('.answer.fmt').items()) # 记住,Pq实例的items方法是很有用的

    @property

    def tags(self):

    return self.dom('ul.taglist--inline > li').text().split() # 获取tags,这里直接用text方法,再切分就行了。一般只要是文字内容,而且文字内容自己没有空格,逗号等,都可以这样弄,省事。

    然后,再把玩一下升级后的蜘蛛。

    >>> from sfspider import spider

    >>> s = spider.SegmentfaultQuestionSpider('1010000002542775')

    >>> print s.title

    >>> 微信JS—SDK嵌套选择图片和上传图片接口,实现一键上传图片,遇到问题

    >>> print s.content

    >>> # [故意省略] #

    >>> for answer in s.answers print answer

    >>> # [故意省略] #

    >>> print '/'.join(s.tags)

    >>> 微信js-sdk/python/微信开发/javascript

    3

    列表生成式

    from collections import Iterable, Iterator # 引入包# 将列表生成式的方括号改成圆括号,返回结果就不是列表了,而是一个生成器。g = (i for i in range(10))print(g)

    print(isinstance(g, Iterator)) # 生成器属于迭代器。print(isinstance(g, Iterable)) # 生成器属于可迭代对象。print(isinstance('good', Iterator)) # 字符串等容器属于可迭代对象,但是不属于迭代器。

    # 生成器每次被访问都会记录自己被访问的位置next(g) # 通过next()访问生成器中的下一个元素print(next(g))

    # for-in遍历生成器会直接从记录的位置访问到最后for i in g: print(i, end=' ')print()

    # next(g) # 访问到最后一个,就不能在访问了,否则崩溃g = (i for i in range(10))# 使用next()访问生成器中特定数量的数据# 生成器,访问一个加载一个,不访问不加载:俗称懒加载或惰性加载。for i in range(6): print(next(g))

    # 利用函数创建生成器def back_genarator(n): print(111111) for i in range(n+1): print(2222222) yield i print(3333333)

    4

    如何使用

    环境配置:下载Python并安装,安装完成后,配置windows的环境变量:打开高级系统设置,将Python的安装目录添加到系统变量path中。配置完成后,在cmd命令行,输入命令"Python",出现Python版本号,即配置成功

    教程学习:上网百度下载一份Python教程,进行学习。初学者入门的话,没必要整份教程看一遍,只需要将基础的语法及模块挑出学习,如:字符串、列表、字典、元组、文件及数据库的操作

    上机实践:单纯地学习教程绝对是没法学好编程语言的,我们需要通过实践将理论知识转为实打实的技能。在学习的过程中,可以在Ulipad上尝试编写脚本,也可以将教程上的代码自己敲一遍。总之,一定要“多敲”

    展开全文
  • 新年伊始,很多同学都会想着:我要好好学习数据分析,今年做好工作/找个好工作。怎么才能学好?这里推荐用KSA方法,理清目标,分解任务哦。啥?你说之前没听过?今天我们系统讲解下。1...

    新年伊始,很多同学都会想着我要好好学习数据分析,今年做好工作/找个好工作。怎么学才能学好?这里推荐用KSA方法,理清目标,分解任务哦。啥?你说之前没听过?今天我们系统讲解下。

      1   

    什么是KSA

    KSAHR领域的概念,原本说的是评价人能力的三个维度

    ●  知识Knowledge:完成任务必须掌握的理论知识。

    ●  技能Skills:完成任务必须的工具操作技能。

    ●  能力Abilities:完成任务所必须的思维、沟通、协调等能力。

    举个简单的例子,陈老师家里4岁的小朋友coco在学算数

    ●  爸爸问:1+1等于几?coco答:2!这是知识。

    ●  去买菜,coco拿了1个萝卜,爸爸说:我们要2个,coco又拿了1个,这是技能。

    ●  走亲访友,当着大家的面,爸爸问:coco,1+1等于几。coco忽闪着大眼睛,大声说:2!引来大家赞许的目光,这是能力!

     

    简单来说:

     知识是能背诵的,有客观评价标准的。如果是自然科学知识,很有可能有唯一的正确答案,社会科学知识不见得有唯一答案,但是在一定范围内有约定俗成的理解和解释。

     

     技能是需要操作、练习、反复训练才能能掌握的。技能以知识作为依托,需要借助工具实现。不同的工具需要的技能不同,越强大而工具实现的效果越好。比如coco小朋友,已经学会各种加减乘除问题扭头就问siri,coco并表示体验良好。

     

    ╮(╯▽╰)╭

     

     能力则需要见识和悟性!有意思的是,在面对实际问题的时候,理解能力、沟通能力、共情能力、协调能力、往往比知识和技能都更能直接产生作用!比如在亲戚面上问小朋友问题,根本的目的是炫耀,是涨涨脸,这时候能积极配合的小朋友才是好小朋友!不然平时学再多,再能干,使不上劲,还是很尴尬呀。

     

    这一套理论原本是HR评估用人资格的方法。但是一经掌握,就发现它在工作中非常好用!因为在工作中,能区分清楚解决问题到底需要KSA中哪一个,能极大提高工作效率,促成工作质量。

     2   

    什么是工作中的KSA

    举个简单的例子,当你开始运用KSA拆解工作的时候,你会秒懂很多问题,比如:

     

    为什么大家总吐槽大学里文科没啥用,理科才好用?因为本质上是KSA在教育和工作中差异所致(如下图):

                               

    为什么很多大公司里,职业经理人们看起来屁都不会,屁事不办,但是混的顺风顺水?本质上是因为在促成目标上,KSA有不同的运用方式(如下图):

     

    所以理解KSA的原理,掌握拆解KSA的方法,对混职场很有意义,特别是对数据分析工作!

     3   

    为什么KSA对数据分析求职很重要

    如果套到数据分析身上,KSA的体现就是:

    ●  知识Knowledge:《数学》《统计学》《管理科学》《运筹学》《机器学习》

    ●   技能Skills:excel、ppt、sql、python、tableau、hadoop、spark……

    ●  能力Abilities:需求沟通、用户洞察、逻辑推理、实验设计、总结汇报……

     

    有趣的是,如果仔细研究就会发现,在各类工作中,数据分析是唯一一个KSA的知识库都爆满的工种。一般来说:业务类工作,比如销售、产品、运营、营销都更偏A,KS相对较少;研发类工作更偏KS,A较少。而数据分析,恰好夹在业务和技术之间,两边都有涉及。因此只要你想学,KSA里都有成吨的书可以学(如下图)

    于是便导致了一个搞笑的事:入行的同学总是急着看书,买了几十本狂学一通,结果毫无重点,记也记不住,一面试稀里哗啦。回来以后还不去总结:别人到底要的是我的什么能力。还在继续上网问:“到底数据分析要看啥书”然后买更多书回来了!结果越学越迷茫。

     

    要知道:数据分析与数据分析之间的差距,比数据与运营、产品、研发的差距之间大多了。不去认真研究求职目标企业的要求,不去区分自己在面试哪个环节,挂在哪一类问题上,闭着眼睛海学,肯定越学越迷茫。如果能做好充分功课,至少能知道自己输在哪些问题上,这样就更好对症下药(如下图)。

     4   

    为什么KSA对数据分析工作很重要

    真当开始数据分析工作以后,就会发现:在懂数据和不懂数据的人眼里,数据分析的角色完全不同。

     

     懂数据的人看起来,数据分析S的成分最大,数据采集、数据清洗、数仓设计都是脏活累活,得认真耕耘才有一个靠谱的数据可用。

     

     在不懂数据的业务方看起来,数据分析A成分最大,这帮人一张嘴就是:“底层思维”“核心链路”“内功心法”,然后满嘴跑火车,却连最基础的数据从哪来,准不准都不考虑。

     

     在不懂数据的新人看起来,数据分析K的成分最大,总是觉得有一本书已经写好了答案等着他可以抄。遇到问题总是到处问“常规的,标准的,头腾阿的做法是什么?”

     

    这种差异,导致了数据分析工作中特殊难点:业务部门直接开口要的,不是简单的、孤立的数字,就是一个玄幻的、马上能见效、法力无边的模型。如果数据分析师每天陷于跑一两个孤立的数字无法自拔,就无法做深入的分析,最后结果还不被认可;如果数据分析师头铁,直接接了玄幻不切实际的模型需求,最后肯定难以落地,无法见效,还是背锅。

     

    所以想做好工作,就得一定得对具体的问题进行深入拆解,平衡业务方期望与数据建设质量,分清楚到底这次项目里,要用到多少K,对S的性能要求是啥,最后用A来处理、协调各种乱七八糟问题,保障项目成功(如下图)。

     

    很多同学会感兴趣,如何培养自己运用KSA的能力呢?严格来说,所有能力的培养都是需要思想顿悟与长期的训练的,但是这里可以推荐一个简单的起步方法:

     

    如果对方不懂技术、没有计算机/数学专业背景、没有数据分析从业经历,就不要轻信他说的:“分析模型”“用户画像”“精准预测”,他大概率说的跟KS没关系。这时候需要的是A(沟通能力)从他的提问背景、想达成的目标、遇到的具体问题等角度入手,整明白需求。

     

    如果对方有技术背景,且提及一个准确的技术概念,先跟他就事论事,讨论清楚技术问题本身(S的问题),如果技术路线没有问题,但是他做的仍不能被同事/领导接受,大概率是A上的问题,这时候不要再钻技术的牛角尖了,试着分析一下他的工作环境、项目目标、领导态度,会有很大收获。

     

    这里有种方法:数据MVP测试,可以简单有效的达成沟通目标。想了解的话,本篇集齐60在看,我们下一篇分享哦,敬请期待。

    原创精选:

    除了KSA,数据分析相关工作还需要具备八大能力!陈老师在《数据分析师八大能力》视频课程有详细讲解。学习课程还可以加入学员群,和陈老师一对一讨论问题,提升能力。

    点左下角“阅读原文”听陈老师讲课噢!

    我是陈小小,扫描二维码可添加小助理微信~

    展开全文
  • 怎么才能学好大数据开发?一般能从事哪些岗位?IT开发行业一直是公认的高薪人才聚集地,吸引了无数的人投身其中。目前市场上的热门编程语言很多,大数据技术绝对是其中颇具典型的一个。随着互联网技术的迅猛发展以及...

    怎么才能学好大数据开发?一般能从事哪些岗位?IT开发行业一直是公认的高薪人才聚集地,吸引了无数的人投身其中。目前市场上的热门编程语言很多,大数据技术绝对是其中颇具典型的一个。随着互联网技术的迅猛发展以及国家一系列政策扶持,越来越多的人选择学习大数据走上人生巅峰。

     

    怎么才能学好大数据开发 一般能从事哪些岗位

     

     

    1、数据分析师

    数据分析师指的是不同行业中,专门从事行业数据搜集、整理、分析,并依据数据做出行业研究、评估和预测的专业人员。作为一名合格的数据分析师需要具备的技能有:熟练SPSS、STATISTIC、Eviews、SAS、大数据魔镜等数据分析软件中的一门;能用Acess等进行数据库开发;掌握一门数学软件如matalab、mathmatics进行新模型的构建;掌握Java、Python等至少一门编程语言。

    2、数据挖掘工程师

    做数据挖掘要从海量数据中发现规律,这就需要一定的数学知识,最基本的比如线性代数、高等代数、凸优化、概率论等。经常会用到的语言包括Python、Java、C或者C++,我自己用Python或者Java比较多。有时用MapReduce写程序,再用Hadoop或者Hyp来处理数据,如果用Python的话会和Spark相结合。

    3、Hadoop开发工程师

    Hadoop是一个分布式文件系统(Hadoop Distributed File System),简称HDFS。Hadoop是一个能够对大量数据进行分布式处理的软件框架, 以一种可靠、高效、可伸缩的方式进行数据处理。所以说Hadoop解决了大数据如何存储的问题,因而在大数据培训机构中是必须学习的课程。

    4、大数据可视化工程师

    随着大数据在人们工作及日常生活中的应用,大数据可视化也改变着人类的对信息的阅读和理解方式。大数据可视化工程师岗位职责:依据产品业务功能,如果你对大数据开发感兴趣,想系统学习大数据的话,可以加入大数据技术学习交流扣扣群:522+数字189+数字307,欢迎添加,私信管理员,获取学习资源,详细了解。设计符合需求的可视化方案;依据可视化场景不同及性能要求,选择合适的可视化技术;依据方案和技术选型制作可视化样例;配合视觉设计人员完善可视化样例。

    5、数据产品经理

    数据产品经理必须要了解不同的公司在不同的阶段,需要哪些数据产品,并能制作出来,这是此岗位的核心要求。此外,数据产品经理必须要有足够的数据分析能力,要具备产品经理的能力:了解用户、需求调研、方案设计、协调技术、测试和设计等。

    现在是大数据时代,也是大数据人才稀缺的时代。资料显示,大数据无论是对人才的招聘还是在培训都成了刚需,大数据人才的薪资在同岗位中也是较高的,掌握大数据技术,工资提升40%左右是很常见的。如果你想快速掌握大数据技术实现高薪,建议你参加专业全面的学习方式。

    展开全文
  • 数据分析(一)

    2018-11-14 19:58:57
    学好数据分析才能学好机器学习,进而才能学习人工智能,我们一起来了解下数据分析吧。 一.启动程序 执行命令:jupyter notebook 浏览器地址为:http://localhost:8888/ 通过control—C终止jupyter程序 几个基本操作...
    数据分析应用于各个领域,作为一个Python的程序员,又怎么能不知道数据分析呢。学好数据分析才能学好机器学习,进而才能学习人工智能,我们一起来了解下数据分析吧。
    

    一.启动程序

    执行命令:jupyter notebook

    浏览器地址为:http://localhost:8888/

    通过control—C终止jupyter程序

    几个基本操作:

    1.双击D:删除当前cell
    2.单击M:转为markdown文档
    3.单击Y:转为代码
    4.markdown文档下运行变为预览模式
    

    二.IPython的帮助文档

    1.使用help()

    通过以下命令来获得帮助文档:help(len)

    help()是一个内置函数 可以告诉用户 传入的函数的参数和返回值是什么

    2.使用?

    或者使用问号:len?

    ?和help()函数功能一样,都可以用看查看帮助文档

    使用两个问号??可以把函数的源代码显示出来

    还可以应用到自定义的变量和自定义的函数上来返回帮助文档

    使用一个?和help(len)一样

    len?

    import numpy as np

    np?

    对于函数和模块 两个问号 会直接获取源代码 np??

    对于自定义函数 后面加一个? 会显示说明文档。 后面加两个问号 会显示源代码。

    3.tab自动补全

    敲击tab键能自动补全

    命令行代码提示是tab键,jupyter代码提示也是tab键 其实在jupyter中写代码就是在命令行中写代码,只不过这个界面更好看一些 功能更丰富一些

    三.IPython魔法命令

    1.运行外部Python文件

    使用下面命令运行外部python文件(默认是当前目录,最好加上绝对路径)

    %run *.py

    例如在当前目录下有一个myscript.py文件:

    def square(x):

    square  a  number
    
    return   x**2
    
    for  N in range(1,4):
    
    	print(N,"squared is",square(N))
    

    我们可以通过下面的命令执行它:

    %run myscript.py
    

    注意:是.py的python代码文件 不是通过jupyter创建的。ipynb文件

    (如果想在jupyter中创建,可以通过创建text file然后改后缀名来实现;编辑后记得保存)

    尤其要注意的是,当我们使用魔法命令执行了一个外部文件时,该文件的函数就能在当前会话中使用

    sum(1,2)
    

    run后面跟相对路径 就可以加载外部的.py文件(注意是加载.py文件 不是ipynb文件)并且路径要用双引号引起来 不是单引号

    加载之后就可以对函数和变量进行调用了

    2.运行计时

    2.1用下面命令计算statement的运行时间

    %time statement

    2.2用下面的命令计算statement的平均运行时间

    %timeit statement

    timeit会多次运行statement,最后得到一个更为精准的预期运行时间

    2.3可以使用两个百分号来测试多行代码的平均运行时间

    %%time

    statement1

    statement2

    statement3

    %%timeit

    statement1

    statement2

    statement3

    记住:%time 一般用于耗时长的代码段

        %timeit  一般用于耗时短的代码段
    

    3.查看当前会话中的所有变量与函数

    快速查看当前会话的所有变量与函数名称:%who

    查看当前会话的所有变量与函数名称的详细信息:%whos

    返回一个字符串列表,里面元素是当前会话的所有变量与函数名称:%who_is

    4.执行Linux指令

    linux指令:
    $echo "hello world"  #echo is like Python's print function
    hello world
    $ pwd #pwd=print working directory
    /Users/..  #this is the "path" that we're sitting in
    $is #is = list working directory contents
    notebooks projects
    $mkdir mm
    /home/jake/projects
    $touch txt
    !touch /home/nanfengpo/Desktop/xx/hello.txt
    在linux指令之前加上!,即可在ipython当中执行linux指令。
    注意会将标准输出以字符串形式返回
    
    windows系统前面不加!  也不加$
    

    5.更多魔法命令

    列出所有魔法命令 %ismagic

    查看魔法命令的文档:使用?

    四.notebook的快捷键

    1、命令模式

    Enter:转入编辑模式(或者鼠标双击)
    Ctrl+Enter:运行本单元,选中本单元
    Alt+Enter:运行本单元,在下面插入一单元
    Shift+Enter:运行本单元,选中下个单元
    

    Y:单元转入代码状态

    M:单元转入markdown状态

    A:在上方插入新单元

    B:在下方插入新单元

    2、编辑模式(enter键启动)

    Tab:代码不全或缩进

    Shift-Tab:提示

    # 代码提示
    # Jupyter 中也有快捷键查看代码提示 Shift + Tab
    # 按Tab键可以获取只能提示 选择智能提示使用 Enter
    # 在函数中按 Shift + Tab 可以获取参数的只能提示
    # np.random.random()
    

    Ctrl-A:全选

    Ctrl-Z:后退

    Ctrl+Shift+Z:前进

    #导入包:
    import numpy
    import pandas
    import scipy
    import sklearn
    
    展开全文
  • 不管怎么说,Python都是大家进军IT行业值得选择的语言。毕竟它不但使用,而且...到底Python该怎么入门,怎么才能学好Python呢?下面来看看吧。 编辑 请点击输入图片描述 需要了解一些编程基础: 一是变量、...
  • 数据结构教程期末学习总结

    千次阅读 2015-12-19 17:21:40
    很难,不知道该这门课到底讲的什么,不清楚自己怎么才能把它学好。那书的第一章——绪论就给了我解释。数据结构涵盖了计算机学科的算法设计、数值分析、操作系统和编译原理等课程所涉及的大部分相关算法的实现。数据...
  • JAVA自学之路

    2012-09-21 20:39:46
    每个环节都可能出问题,怎么才能知道哪里出的问题?继续往下读。 3:如何定位错误(重要)分析清楚有哪些环节之后,下一步就是定位到底什么环节出错了。 定位有以下三种办法: A 打印输出,比如java的System....
  • 数据表之统计数据分析 371 碎片的消除与性能优化 374 Cache与Nocache对于性能的影响 379 ERP系统中Cache表案例分析 380 对于分页查询的优化 384 DBMS_PROFILER包用于诊断与优化 387 总结 390 一次排序的调整...
  • 分析枯燥的16进制数据的同时, 也会和大家讨论一些有趣和常见的错误现象。 深入研究Windows内部原理系列之十二:网络协议的构成和实现 讲师信息:高宇 2007年02月09日 14:00-15:30 Level: 400 课程内容包括...
  • 分析枯燥的16进制数据的同时, 也会和大家讨论一些有趣和常见的错误现象。 深入研究Windows内部原理系列之十二:网络协议的构成和实现 讲师信息:高宇 2007年02月09日 14:00-15:30 Level: 400 课程内容包括...
  • 深入理解windows内部原理1-16打包下载

    热门讨论 2012-09-04 11:31:36
    分析枯燥的16进制数据的同时, 也会和大家讨论一些有趣和常见的错误现象。 深入研究Windows内部原理系列之十二:网络协议的构成和实现 讲师信息:高宇 2007年02月09日 14:00-15:30 Level: 400 课程内容包括...

空空如也

空空如也

1 2
收藏数 32
精华内容 12
关键字:

怎么才能学好数据分析