大数据时代浅谈医疗数据分析在医疗领域的运用

随着医疗卫生信息化迅速发展 医学研究正步入大数据时代 大数据的许多承诺正在医疗行业变成现实 大数据的实时处理和数据分析 可以让医疗领域的从业者 更快更全面的做出决策和行动 该领域正在慢慢成熟 随着云计算、物联网、移动互联网等新技术水平的提高,各行各业所累计的数据已经呈现指数级的增长。“大数据” 时代已经出现。 近年来,大数据解决方案与大数据分析工具开始被广泛运用于医疗卫生领域。通过数据,可以把医学专家积累的宝贵经验,转化成标准化的知识基础,做到数据驱动医疗服务,因此从而大大提高服务能力和效率,解决中国医疗领域存在的诸多需求。然而健康医疗大数据究竟指的是何种数据?其“大”又体现在何处? 一.大数据 大数据的类型大致可以分为以下两种: 第一种类型是通过对海量数据进行分析,获得巨大价值的产品、服务和见解,我们称之为“动词定义”。 第二种类型是基于多源异构、跨域关联的海量数据(数据量、数据形态、数据分析处理方式),通过分析所产生的决策流程、商业模式、科学范式、生活方式和观念形态上的颠覆性变化的总和,我们称之为“名词定义”。 二.医疗数据 医生对患者诊疗和治疗过程中产生的数据,包括患者的基本数据、电子病历、诊疗数据、医学影像数据、医学管理、经济数据、医疗设备和仪器数据等,以患者为中心,成为医疗数据的主要来源。 三.医疗数据来源 首先来讲,“医疗数据”的主要来源有四个方面,第一种是患者就医,第二种是临床研究和科研,第三种是生命制药,第四种是可穿戴设备。 第一种“患者就医”,源于患者,患者的体征数据、患者的化验数据、患者的描述,患者的住院数据、医生对患者的问诊数据、医生对患者的临床诊治、用药、手术等数据。 第二种“临床研究和科研”主要是实验中产生的数据,也包含患者产生的数据。 第三种“生命制药”主要是实验产生的数据,与用药相关的用药量,用药时间,用药成分,实验对象反应时间,症状改善表象等数据,与生命等基因组学相关的数据。 第四种“可穿戴设备”主要通过各种穿戴设备(手环、起搏器、眼镜等)收集人体的各种体征数据。 四.医疗数据特性 医疗数据首先它属于数据的一种,所以其大数据也必定具备一般的数据特性:规模大、结构多样、增长快速、价值巨大,但是其作为医疗领域产生的数据也同样具备医疗性:多态性、不完整性、冗余性、时间性、隐私性。 多态性:医疗数据包含有像化验产生的纯数据,也会有像体检产生的图像数据类似心电图等信号图谱,医生对患者的症状描述以及跟进自己经验或者数据结果做出的判断等文字描述,另外还有像心跳声,哭声,咳嗽声等类似的声音资料,同时现代医院的数据中还有各种动画数据(像胎动的影像等)。 不完整性:由于各种原因导致有很多医学数据是不完整的,像医生的主观判断以及文字描述的不完整,患者治疗中断导致的数据不完整,患者描述不清导致的数据不完整等。 冗余性:医疗数据量巨大,每天会产生大量多余的数据,这给数据分析的筛选带来了很大困难。 时间性:大多医疗数据都是具有时间性、持续性的,像心电图,胎动思维图均属于时间维度内的数据变化图谱。 隐私性:隐私性也是医疗数据的一个重要特性,同时也是现在大部分医疗数据不愿对外开放的一个原因,很多医院的临床数据系统都是相对独立的局域网络,甚至不会去对外联网。 五、数据的处理 数据的处理一般分为6个步骤:挖掘数据、收集数据、分析数据、存储数据、数据转化实用,最终在实用过程中产生数据,如此循环。 六.医疗大数据的用途 医疗大数据的主要用途有:用药分析、病因分析、移动医疗、基因组学、疾病预防、可穿戴医疗等。 随着医疗大数据的发展和分析方法、人工智能等技术的不断革新,能够准确利用医疗大数据来进行分析和预测的场景会越来越多,到时大数据将会成为医疗决策的一种重要辅助依据。 七.医疗大数据 医疗大数据企业主要分为三类:慢病及健康管理(辅助患者)、临床决策支持(辅助医生)、医药研发。 医疗大数据的服务对象主要有:居民、医生、科研、管理机构、公众健康。 医疗大数据的主要用途有:用药分析、病因分析、移动医疗、基因组学、疾病预防、可穿戴医疗等。 八.统计学在医疗方面的运用 统计学是医学科学研究的重要工具,运用概率论与数理统计的原理及方法,结合医学实际,研究数字资料的搜集、整进行理分析与推断。正确的统计分析能够帮助人们正确认识客观事物的规律性,做到胸中有数,有的放矢地开展工作,提高工作质量。 在统计分析领域中,有一种用途极其广泛的特征曲线,叫做接受者操作特性曲线。 得此名的原因在于曲线上各点反映着相同的感受性,它们都是对同一信号刺激的反应,只不过是在几种不同的判定标准下所得的结果而已。 接受者操作特性曲线就是以虚惊概率为横轴,击中概率为纵轴所组成的坐标图,和被试在特定刺激条件下由于采用不同的判断标准得出的不同结果画出的曲线。 在统计学中常讲到的AUC就是”Area Under the ROC curve“,它的值是介于0.1到1之间,是当前分类算法根据计算所得的一个score值,AUC值越大说明正样本越有可能排在负样本之前,从而能更好进行统计样本的分类。 在现有的一个统计学方法中,我们对样本的诊断通常是分为两类,一个是健康类,另一类是得病类。除了这两类以外,还存在一种人群叫亚健康人群,如果我们还是按照原有的方法去给病人进行分类的话,那么我们所得到的一些结果可能是具有误导性的。 在统计学中概率样本的置信区间是对样本的某个总体参数的区间,估计通常来说,比如说我们说有95%的置信区间,那么就是说测试者有95%的统计量是落在置信区间内的。 它其实展示了这个参数的真实值,有一定概率落在测试结果周围的一个程度,也给出被测量参数测试测量值的一个可信程度。 怎么去判断这个诊断的一个精确性,我们需要看的是置信区间的一个覆盖率,如果这个覆盖率越接近于既定的一个概率的话,那么这个方法就越精确。 广泛搜寻,就是把所有的值结合在一起,然后去比较它们之间的大小,用这种比对的方法来找出最大的不同。 如此可见,随着医疗服务提供者越来越善于从患者数据中提取有意义的见解,他们也将学习更好的提供治疗的方法,提高服务质量。随着大数据技术领域的成熟,许多组织将受益于运营的改善、费用的降低和健康状况的改善。 通过许多方式,大数据和人工智能可以帮助解决日益严重的护理提供者短缺问题。医疗服务提供商也将充分利用大数据技术为医疗技术框架持续提供动力。

June 25, 2019 · 1 min · jiezi

2019-年-最简单最通俗的-vagrant-安装使用说明附带示例Vagrantfile

2019 年 最简单最通俗的 vagrant 安装使用说明,附带示例vagrantfileVagrant是一个基于Ruby的工具,用于创建和部署虚拟化开发环境。它 使用Oracle的开源VirtualBox虚拟化系统,使用 Chef创建自动化虚拟环境。 老套路,更新留坑vagrant 安装官网链接vagrant windows 下载64 位下载:https://releases.hashicorp.co...32 位下载:https://releases.hashicorp.co...百度云64位下载: 链接:https://pan.baidu.com/s/1oiztOlj0S_h6AfQ6WdUb_w 提取码:aoph vagrant mac 下载64 位下载: https://releases.hashicorp.co...vagrant box 下载官网下载:https://app.vagrantup.com/box...百度云下载: 提取码:aophvagrant box 添加到本地镜像下载好的镜像添加vagrant box add {镜像名称} {镜像地址}例如: vagrant box add C:/box/centos7.box --name centos/7.5 使用远程镜像vagrant box add https://mirrors.tuna.tsinghua.edu.cn/ubuntu-cloud-images/bionic/current/bionic-server-cloudimg-amd64-vagrant.box --name ubuntu/bionicvagrant 命令说明vagrant up 启动/创建虚拟机G:\project vagrant up ci1.cn && vagrant ssh ci1.cnBringing machine 'ci1.cn' up with 'virtualbox' provider...==> ci1.cn: Clearing any previously set forwarded ports...==> ci1.cn: Vagrant has detected a configuration issue which exposes a.....Last login: Mon Jun 24 06:40:46 2019 from 10.0.2.2[vagrant@ci1 ~]$ lsnode-v12.3.1 node-v12.3.1.tar.gz project[vagrant@ci1 ~]$vagrant ssh 进行虚拟机交互命令行G:\project vagrant ssh ci1.cnLast login: Mon Jun 24 06:40:46 2019 from 10.0.2.2[vagrant@ci1 ~]$vagrant reload 重新启动虚拟机vagrant reload ci1.cnvagrant up/reload --provision 重新创建或重新执行脚本vagrant up --provisionvagrant reload --provisionvagrant status 查看当前目录下的虚拟机状态vagrant status例如: ...

June 25, 2019 · 3 min · jiezi

Python3网络爬虫实战4数据库的安装MySQLMongoDBRedis

上一篇文章:Python3网络爬虫实战---3、解析库的安装:LXML、BeautifulSoup、PyQuery、Tesserocr下一篇文章:Python3网络爬虫实战---5、存储库的安装:PyMySQL、PyMongo、RedisPy、RedisDump作为数据存储的重要部分,数据库同样是必不可少的,数据库可以分为关系型数据库和非关系型数据库。 关系型数据库如 SQLite、MySQL、Oracle、SQL Server、DB2 等,其数据库是以表的形式存储,非关系型数据库如MongoDB、Redis,它们的存储形式是键值对,存储形式更加灵活。 本书用到的数据库主要有关系型数据库 MySQL 及非关系型数据库 MongoDB、Redis。 本节我们来了解一下它们的安装方式。 1.3.1 MySQL的安装MySQL 是一个轻量级的关系型数据库,以表的形式来存储数据,本节我们来了解下它的安装方式。 1. 相关链接官方网站:https://www.mysql.com/cn下载地址:https://www.mysql.com/cn/down...中文教程:http://www.runoob.com/mysql/m...2. Mac下的安装推荐使用 Homebrew 安装,执行 brew 命令即可。 brew install mysql启动、停止、重启 MySQL 服务的命令: sudo mysql.server startsudo mysql.server stopsudo mysql.server restartMac 一般不会作为服务器使用,如果要想取消本地 host 绑定,同样修改 my.cnf 文件,然后重启服务即可。 1.3.2 MongoDB安装MongoDB 是由 C++ 语言编写的非关系型数据库,是一个基于分布式文件存储的开源数据库系统,其内容存储形式类似 Json 对象,它的字段值可以包含其他文档,数组及文档数组,非常灵活。 MongoDB 支持多种平台,包括 Windows、Linux、Mac OS、Solaris 等,在其官方网站均可找到对应的安装包,https://www.mongodb.com/downl... 本节我们来看下它的安装过程。 1. 相关链接官方网站:https://www.mongodb.com官方文档:https://docs.mongodb.comGitHub:https://github.com/mongodb中文教程:http://www.runoob.com/mongodb...2. Mac下的安装推荐使用 Homebrew 安装,执行 brew 命令即可: brew install mongodb然后创建一个新文件夹 /data/db,用于存放 MongoDB 数据。 启动 MongoDB 服务: ...

June 14, 2019 · 1 min · jiezi

Python3网络爬虫实战3解析库的安装LXMLBeautifulSoupPyQueryTesserocr

上一篇文章:Python3网络爬虫实战---2、请求库安装:GeckoDriver、PhantomJS、Aiohttp下一篇文章:抓取下网页代码之后,下一步就是从网页中提取信息,提取信息的方式有多种多样,可以使用正则来提取,但是写起来会相对比较繁琐。在这里还有许多强大的解析库,如 LXML、BeautifulSoup、PyQuery 等等,提供了非常强大的解析方法,如 XPath 解析、CSS 选择器解析等等,利用它们我们可以高效便捷地从从网页中提取出有效信息。 本节我们就来介绍一下这些库的安装过程。 1.2.1 LXML的安装LXML 是 Python 的一个解析库,支持 HTML 和 XML 的解析,支持 XPath 解析方式,而且解析效率非常高。 1. 相关链接官方网站:http://lxml.deGitHub:https://github.com/lxml/lxmlPyPi:https://pypi.python.org/pypi/...2. Mac下的安装pip3 install lxml如果产生错误,可以执行如下命令将必要的类库安装: xcode-select --install之后再重新运行 Pip 安装就没有问题了。 LXML 是一个非常重要的库,后面的 BeautifulSoup、Scrapy 框架都需要用到此库,所以请一定安装成功。 3. 验证安装安装完成之后,可以在 Python 命令行下测试。 $ python3>>> import lxml如果没有错误报出,则证明库已经安装好了。 1.2.2 BeautifulSoup的安装BeautifulSoup 是 Python 的一个 HTML 或 XML 的解析库,我们可以用它来方便地从网页中提取数据,它拥有强大的 API 和多样的解析方式,本节我们了解下它的安装方式。 1. 相关链接官方文档:https://www.crummy.com/softwa...中文文档:https://www.crummy.com/softwa...PyPi:https://pypi.python.org/pypi/...2. 准备工作BeautifulSoup 的 HTML 和 XML 解析器是依赖于 LXML 库的,所以在此之前请确保已经成功安装好了 LXML 库,具体的安装方式参见上节。 3. Pip 安装目前 BeautifulSoup 的最新版本是 4.x 版本,之前的版本已经停止开发了,推荐使用 Pip 来安装,安装命令如下: ...

June 14, 2019 · 2 min · jiezi

Python3网络爬虫实战2请求库安装GeckoDriverPhantomJSAiohttp

上一篇文章:Python3网络爬虫实战---1、请求库安装:Requests、Selenium、ChromeDriver下一篇文章:1.1.4 GeckoDriver的安装在上一节我们了解了 ChromeDriver 的配置方法,配置完成之后我们便可以用 Selenium 来驱动 Chrome 浏览器来做相应网页的抓取。那么对于 Firefox 来说,也可以使用同样的方式完成 Selenium 的对接,这时需要安装另一个驱动 GeckoDriver。本节来介绍一下 GeckoDriver 的安装过程。 1. 相关链接GitHub:https://github.com/mozilla/ge...下载地址:https://github.com/mozilla/ge...2. MAC安装方式brew install GeckoDriver3. 验证安装配置完成之后,就可以在命令行下直接执行 geckodriver 命令测试。命令行下输入:geckodriver这时控制台应该有类似输出,如图 1-20 所示: 图 1-20 控制台输出如果有类似输出则证明 GeckoDriver 的环境变量配置好了。随后再在程序中测试,执行如下 Python 代码: from selenium import webdriverbrowser = webdriver.Firefox()运行之后会弹出一个空白的 Firefox 浏览器,证明所有的配置都没有问题,如果没有弹出,请检查之前的每一步的配置。如果没有问题,接下来我们就可以利用 Firefox 配合 Selenium 来做网页抓取了。 4. 结语到现在位置我们就可以使用 Chrome 或 Firefox 进行网页抓取了,但是这样可能有个不方便之处,因为程序运行过程中需要一直开着浏览器,在爬取网页的过程中浏览器可能一直动来动去,着实不方便。目前最新的 Chrome 浏览器版本已经支持了无界面模式,但如果版本较旧就不支持。所以在这里还有另一种方便的选择就是安装一个无界面浏览器 PhantomJS,抓取过程会在后台运行,不会再有窗口出现,这样就方便了很多,所以在下一节我们再了解一下 PhantomJS 的相关安装方法。 1.1.5 PhantomJS的安装如果我们使用 Chrome 或 Firefox 进行网页抓取的话,每次抓取的时候,都会弹出一个浏览器,比较影响使用。所以在这里再介绍一个无界面浏览器,叫做 PhantomJS。PhantomJS 是一个无界面的,可脚本编程的 WebKit 浏览器引擎。它原生支持多种 web 标准:DOM 操作,CSS 选择器,JSON,Canvas 以及 SVG。Selenium 支持 PhantomJS,这样在运行的时候就不会再弹出一个浏览器了,而且其运行效率也是很高的,还支持各种参数配置,使用非常方便,下面我们就来了解一下 PhantomJS 的安装过程。 ...

June 14, 2019 · 1 min · jiezi

Python3网络爬虫实战1请求库安装RequestsSeleniumChromeDriver

下一篇文章:爬虫可以简单分为几步:抓取页面、分析页面、存储数据。 在第一步抓取页面的过程中,我们就需要模拟浏览器向服务器发出请求,所以需要用到一些 Python 库来实现 HTTP 请求操作,在本书中我们用到的第三方库有 Requests、Selenium、Aiotttp 等。 在本节我们介绍一下这些请求库的安装方法。 1.1.1 Requests的安装由于 Requests 属于第三方库,也就是 Python 默认不会自带这个库,需要我们手动去安装,下面我们首先看一下它的安装过程。 1. 相关链接GitHub:https://github.com/requests/r...PyPy:https://pypi.python.org/pypi/...官方文档:http://www.python-requests.org 中文文档:http://docs.python-requests.o...2. Pip安装无论是 Windows、Linux 还是 Mac,都可以通过 Pip 这个包管理工具来安装。 在命令行下运行如下命令即可完成 Requests 库的安装: pip3 install requests这是最简单的安装方式,推荐此种方法安装。 3. Wheel安装Wheel 是 Python 的一种安装包,其后缀为 whl,在网速较差的情况下可以选择下载下 Wheel 文件再安装,直接用 pip3 命令加文件名安装即可。 不过在这之前需要先安装 Wheel 库,安装命令如下: pip3 install wheel然后到 PyPi 上下载对应的 Wheel 文件,如当前最新版本为 2.17.3,则打开:https://pypi.python.org/pypi/...,下载 requests-2.17.3-py2.py3-none-any.whl 到本地。 随后命令行进入 Wheel 文件目录,利用 Pip 安装即可。 pip3 install requests-2.17.3-py2.py3-none-any.whl这样我们同样可以完成 Requests 的安装。 4. 源码安装那么如果你不想用 Pip 来安装,或者想获取某一特定版本,可以选择下载源码安装。 ...

June 13, 2019 · 2 min · jiezi

个人博客四|注册登录退出功能后台开发

声明:本博客的注册登录退出功能将使用django-allauth,参考资源如下:django-allauth文档django-allauth教程1、安装django-allauthpip install django-allauth2、配置信息安装后设置blog/settings.py,将allauth相关APP加入到INSTALLED_APP里去。INSTALLED_APPS = [ ‘django.contrib.admin’, ‘django.contrib.auth’, ‘django.contrib.contenttypes’, ‘django.contrib.sessions’, ‘django.contrib.messages’, ‘django.contrib.staticfiles’, # <添加storm相关应用> ‘storm’, # <storm–end—> # <添加allauth相关应用> ‘django.contrib.sites’, ‘allauth’, ‘allauth.account’, ‘allauth.socialaccount’, ‘allauth.socialaccount.providers.github’, # <allauth–end—>]注意:allauth对于站点设置django.contrib.sites有依赖,你必需也把它加入进去,同时设置SITE_IDSITE_ID没必要深入了解,目前不涉及多站点。目前能涉及到的是当出现"SocialApp matching query does not exist"这种报错的时需要更换SITE_ID值3、allauth 基本设置# 多站点框架:# 位于django.contrib.sites的site。# SITE_ID指定与特定配置文件相关联的site对象之数据库的ID。# 当出现"SocialApp matching query does not exist",这种报错的时候就需要更换这个IDSITE_ID = 1# 设置登录和注册成功后重定向的页面,默认是/accounts/profile/LOGIN_REDIRECT_URL = “/”# Email setting# 禁用注册邮箱验证ACCOUNT_EMAIL_VERIFICATION = ’none’# 登录方式,选择用户名或者邮箱登录ACCOUNT_AUTHENTICATION_METHOD = “username_email”# 设置用户注册的时候必须填写邮箱地址ACCOUNT_EMAIL_REQUIRED = True# 登出直接退出,不用确认ACCOUNT_LOGOUT_ON_GET = True4、django-allauth常见设置选项你也可以添加其它设置选项来实现你所想要的功能, 比如设置邮件确认过期时间,限制用户使用错误密码登录的持续时间。# 指定要使用的登录方法(用户名、电子邮件地址或两者之一)ACCOUNT_AUTHENTICATION_METHOD (=“username” | “email” | “username_email”)# 邮件确认邮件的截止日期(天数)ACCOUNT_EMAIL_CONFIRMATION_EXPIRE_DAYS (=3)# 注册中邮件验证方法:“强制(mandatory)”,“可选(optional)”或“否(none)”之一ACCOUNT_EMAIL_VERIFICATION (=“optional”)# 邮件发送后的冷却时间(以秒为单位)ACCOUNT_EMAIL_CONFIRMATION_COOLDOWN (=180)# 登录尝试失败的次数ACCOUNT_LOGIN_ATTEMPTS_LIMIT (=5)# 从上次失败的登录尝试,用户被禁止尝试登录的持续时间ACCOUNT_LOGIN_ATTEMPTS_TIMEOUT (=300)# 更改为True,用户一旦确认他们的电子邮件地址,就会自动登录ACCOUNT_LOGIN_ON_EMAIL_CONFIRMATION (=False)# 更改或设置密码后是否自动退出ACCOUNT_LOGOUT_ON_PASSWORD_CHANGE (=False)# 更改为True,用户将在重置密码后自动登录ACCOUNT_LOGIN_ON_PASSWORD_RESET (=False)# 控制会话的生命周期,可选项还有:False,TrueACCOUNT_SESSION_REMEMBER (=None)# 用户注册时是否需要输入邮箱两遍ACCOUNT_SIGNUP_EMAIL_ENTER_TWICE (=False)# 用户注册时是否需要用户输入两遍密码ACCOUNT_SIGNUP_PASSWORD_ENTER_TWICE (=True)# 用户不能使用的用户名列表ACCOUNT_USERNAME_BLACKLIST (=[])# 加强电子邮件地址的唯一性ACCOUNT_UNIQUE_EMAIL (=True)# 用户名允许的最小长度的整数ACCOUNT_USERNAME_MIN_LENGTH (=1)# 使用从社会帐户提供者检索的字段(如用户名、邮件)来绕过注册表单SOCIALACCOUNT_AUTO_SIGNUP (=True)# 设置登录后跳转链接LOGIN_REDIRECT_URL (="/") # 设置退出登录后跳转链接ACCOUNT_LOGOUT_REDIRECT_URL (="/") 5、配置allauth路由urlpatterns = [ url(r’^admin/’, admin.site.urls), # allauth url(r’^accounts/’, include(‘allauth.urls’)), # storm url(’’, include(‘storm.urls’, namespace=‘blog’)), # blog]6、运行效果可以访问哪个路由,取决于,blog/settings.py中allauth设置信息注册http://127.0.0.1:8080/accounts/signup/登录http://127.0.0.1:8080/accounts/login/7、django-allauth全部路由下面是django_allauth所有内置的URLs,均可以访问的。可以去allauth/account/urls.py查看# 登录/accounts/login/# 注册/accounts/signup/# 重置密码/accounts/password/reset/# 退出登录/accounts/logout/# 设置密码 /accounts/password/set/# 改变密码(需登录)/accounts/password/change/# 用户可以添加和移除email,并验证/accounts/email/# 管理第三方账户/accounts/social/connections/用户详细信息是没有的/accounts/profile/如果我希望用户在注册时提供更多信息(比如公司名、电话、住址等)如果用户在注册后需要修改个人信息怎么办?由于每个开发者对用户所需提供的额外信息需求是不一样的,所以没有提供这个视图和URL。因此django-allauth并没有提供用户详情应用用户详情请参考:[个人博客五|用户个人资料Profile扩展] ...

February 22, 2019 · 1 min · jiezi

安装python包到指定虚拟环境

首先需要阅读《创建Python虚拟环境——下》《创建Python虚拟环境——下》创建虚拟环境1、 打开虚拟环境workon venv(自己创建的虚拟环境名称)2、 在这里使用pip安装python包直接安装pip install 包名使用国内镜像安装python包国内镜像:清华:https://pypi.tuna.tsinghua.ed…阿里云:http://mirrors.aliyun.com/pyp…中国科技大学 https://pypi.mirrors.ustc.edu…华中理工大学:http://pypi.hustunique.com/山东理工大学:http://pypi.sdutlinux.org/豆瓣:http://pypi.douban.com/simple/使用演示pip install -i https://pypi.tuna.tsinghua.ed… 包名如果pip安装出错时可以选择离线安装python离线包:http://www.lfd.uci.edu/~gohlke/pythonlibs/#lxml打开离线包网站Ctrl+f 在浏览器的搜索框输入要安装的包名,找到他下载他安装 pip install 下载的离线包位置使用演示pip install D:chrome下载tensorflow-1.9.0-cp36-cp36m-win_amd64.whl完毕

February 21, 2019 · 1 min · jiezi

为什么要坚持写技术博文

图片描述写作能力,就是一个人的隐形财富,我最喜欢的一个文化类节目《圆桌派》,更是让我明白了,一个人只要还有一只笔在就不会是最穷的。自己特别喜欢听这些老腊肉聊天。昨天,我忙碌了将近四个小时写的一篇《python自学之路》,发布后八个小时就因为内容侵权违规(主要是分享了一些网课资源)被举报,已经被删除。刚开始通过写作记录自己的学习、分享知识,就给了当头一棒。好了言归正传。本渣渣经历过昨天删文的事件后,想谈谈自己《第一个错失》《为什么要写文章》、《如何坚持写下去》一、为什么要写文章1、第一个错失——通过上学改变命运在高二时,我的一个本姓堂侄大学毕业(北京对外经贸大学韩语专业),但是经人推荐直接进入中信建投工作,现在已经是一个带领10人团队的股权并购主管、业务基本都是对接公司高管。一个语言专业毕业的学生,从事了金融行业,而且从事的还是一级市场。他让我真切的意识到一个学历的重要性。不要相信有些人说能力是一个人立业的根本。我这个本姓堂侄的成功引发了我的一些思考。什么是能力?我认为能力分为两块:学习能力、专业能力学历主要证明你的学习能力、在某个领域的成功主要证明你的专业能力。①、学习能力上学是一个底层人改变命运的第一个平台也是最重要的平台,只要能坚持千万不要放弃。就像我这个本姓堂侄,他如果不是有名牌大学的背景,一个学习语言专业的能进入权贵聚集的国企中信建投,可以说没有学历证明你的学习能力那是不可能的。经过人生的第一个平台你就已经被划分社会层次。当初本渣渣在高二时就意识到了圈层的重要性,我处在高考大省河南,高一时浑浑噩噩,高二经过自己的努力,根据高二一年的综合成绩高三进入了加强班,进入加强班基本保一本冲211、985。其实我当时清楚自己的水平,由于自己存在偏科,语文和英语极差,高二全年的策略就是放养这两个,数学和物理一般般,主要抓住自己的优势科目生物和化学,每次保证这两科大考进全校前100,班级前三,加强班的人选只看全年综合成绩不看单科,最终如愿进入加强班,进入加强班后又通过单科领跑第一次大考获得了优先选位权。我进入加强班的目地是改变圈层,拿到选位权尤为重要。既然进入了加强班,那么就要改变一下自己的高考目标。最初本渣渣的高考目标是根据自己的成绩选择一个计算机学院(不考虑专业),现在由于学习环境的改变圈层的变化,可以改变一下自己的选择范围。如果能报考211就选择金融专业、如果能报考985选择经济学院、如果211、985都没戏就选择任何一个可选择的计算机学院,最终本渣渣还是只能选择计算机学院。虽然没有成功走进好的学府,但是这种通过进入一定的圈层改变自己的思维是没错的,也算是一种社会生存能力(以结果为唯一导向的努力方式)。②、专业能力本渣渣认为,能力是广泛的,能力没有大小只有差别,这个差别是由圈层决定的,你第一个平台获得的成绩决定了你的圈层。不要扯什么马云,茫茫人海中你可能成为哪一个人,但是要始终告诉自己哪个人不是你。就像我这个本姓堂侄,一个语言专业懂金融吗?他压根没金融专业背景,这就是学历的重要性,只要有了高学历未来的选择会更加广泛,选择了行业后专业能力是可以从实践中获得的。本渣渣学习编程也是需求推动学习,这样就不会被一门编程语言的庞杂基础知识给堵在门外,这种方法在python学习中更为有效,python有强大的第三方开源库,短时间是学不完的。学习初期只需要深耕一个方向即可,其它都可以需求推动学习。为什么要写文章前边也提到了本渣渣的写作能力极差,高考语文89分考出了一个物理应该有的成绩。但是在互联网行业有两个需要思考的问题:技术、产品怎么检测自己适合技术,还是产品。如果一门编程语言你能坚持学习基础知识两个月不失热情,那么恭喜你大概率能成为技术大牛。如果你学习任何一门语言都是需求推动,对用户需求敏感、对生活有深入思考。如果再有一个做出一款改变人们生活方式的产品梦想,那么恭喜,你大概率和本渣渣有同样的梦想,一起努力成为一个懂技术的产品人。由于对自己的定位清晰,不得不在学习python的同时关注新媒体现在写文章主要是记录自己每天的进步,分享python知识,认识更多努力进步的人提升自己的圈层,促进自己进步。如何坚持下去这是个头疼的问题,但是我又仔细思考了一下。为什么并不是每个人都热爱工作,但是每个人都在坚持工作呢?主要的原因是为了生存,不过现在的我,通过工作也并不愁吃喝。不过定神一想目前本人单身,如果赚的钱只够吃喝什么时候能娶上媳妇呢?所以我要把我的文章当作赚取彩礼钱的工作来做,不想做也得咬牙做。图片描述哈哈,开个玩笑,其实我写文章的终极目的还是认识更高圈层的人,因为我现在的圈层给我带来不了任何养分,年前我和几个学习python的同学说了一个我思考已久的项目,想合作开发但是没有一个人有想法,这让我明白了,有的时候当一个人的思维已经超出自己能力范围时,很难和周围的人交流。所以之后我要坚持每天在这里记录我的学习与进步让编程能跟上自己的思维,同时希望能遇到一些不安于现状的小伙伴们一起前进交流亦或是合作。微信公众号『stormsha』

February 17, 2019 · 1 min · jiezi

创建Python虚拟环境——下

1、安装virtualenvpip install virtualenv2、安装virtualenvwrapper对虚拟环境集中管理pip install virtualenvwrapper-win3、配置环境变量WORKON_HOMED:Usersvirtualenv图片描述4、基本操作创建虚拟环境mkvirtualenv venv查看已经创建过的虚拟环境workon启动虚拟环境workon venv退出虚拟环境deactivate删除虚拟环境rmvirtualenv venv5、步入社会的第一个情人节此处纯属临时感慨、扯淡不感兴趣的读者请自行飘过┄┄┄今天公司同事都早早的溜走了,只有我还一如既往的加班,走在下班的路上,看到不同以往的气氛发现今天又是一年一度的2.14,本来是写技术文章呢!突然感觉无名的难受,难受的一逼,突然又想起前年春节,也正是自己决定考研的时间点,作为一个普通二本的学生考研是人生第一个平台的最后一搏。如果有正是大二的同学我建议在大二时要对自己是否考研做出决定,如果不考研就需要为自己进入社会铺路搭桥了,不要在宿舍浑噩度日了。如果巧了你的确迷茫那你就庆幸自己遇到了本渣渣,次公号将持续分享自学经历、偶尔和读者吹吹牛皮,最重要的是你们将见证我立的所有flag。贴一下前年的一点感慨:元宵佳节月仍在二十二年单人影明朝观月题榜时愿求双影享功名文章来源:微信公众号『stormsha』微信号『sxc123654』QQ『1414749109』

February 14, 2019 · 1 min · jiezi

Python的virtualenv使用

virtualenv为应用提供了隔离的Python运行环境,解决了不同应用间多版本的冲突问题。安装virtualenvpip3 install virtualenv使用virtualenv$ virtualenv [OPTIONS] DEST_DIR选项:–version 显示当前版本号。-h, –help 显示帮助信息。-v, –verbose 显示详细信息。-q, –quiet 不显示详细信息。-p PYTHON_EXE 指定所用的python解析器的版本比如 –python=python2.5 就使用2.5版本的解析器创建新的隔离环境。 默认使用的是当前系统安装(/usr/bin/python)的python解析器–clear 清空非root用户的安装,并重头开始创建隔离环境。–no-site-packages 默认,令隔离环境不能访问系统全局的site-packages目录。–system-site-packages 令隔离环境可以访问系统全局的site-packages目录。可以使用virtualenv –no-site-packages venv创建一个干净的虚拟环境,与原来的全局packages的隔绝。进入虚拟环境在Posix系统(*nix/BSD)中,用法如下:source venv/bin/activate在win中,直接执行Scripts目录下的activate:.\venv\Scripts\activate进入后在命令行前面会出现(venv)退出虚拟环境在Posix系统(*nix/BSD)中:deactivatewin:deactivate.bat常用命令记录安装的第三方模块pip freeze > requirements.txt安装txt文件里所记录的所有第三方模块pip install -r requirements.txt在编译器中配置虚拟环境pyCharm在file-setting-project-Project interpreter 中进行配置VScode在usersetting中的用户设置中设置:

January 20, 2019 · 1 min · jiezi

从javascript到python(二):virtualenv

前序文章《从javascript到python(一):基本环境搭建》中提到了pip和pip3安装Python的库,但是问题来了,安装之后的库都会放在如:python2.7/site-packages,这也意味着可能出现同一个库多个版本同时存在的问题。npm中的包管理工具是怎么解决的?npm 全局安装的方式npm install -g XXX //表示包全局安装根据package.json来安装npm install第一种方法安装的包放在全局的node_moudle中,而后一种方法则把包安装到每一个项目下面的node_moudle中。后面一种安装方法我们可以理解为每一个项目一个单独的运行环境。virtualenv实际上也是基于此原理来解决这个问题。具体的说明可以参考廖雪峰的Python3教程,具体的安装和使用方法,廖雪峰的文档中已经写得很清楚了,笔者就不赘述了。建立完成后会有一个venv 文件夹,其文件夹目录结构如下我们看到存在大量的软链接实际指向到全局的pip库的安装目录。requirements.txt文件建立实际上python 可以建立如npm中的package.json文件。在项目目录下使用如下指令pip3 freeze > requirements.txt即可导出当前环境下的库文件使用pip3 install -r requirements.txt可以根据requirements.txt完成库的安装可能的坑在编写程序过程中,经常会出现找不到包的情况,这种情况一般是没有把paython的路径配置到虚拟环境中,这需要如下图修改VSCode中的用户设置,配置成功后会在VS Code下方出现【venv】的字样总结文章中写了很多原理的对比理解,建议读者从原理的角度去理解相关指令,而不是靠强行记忆。技术发展这么快,你是记不住的。

December 19, 2018 · 1 min · jiezi