Python数据科学入门

Dmitry Zinoviev著
熊子源 译


第二章 数据科学的Python核心


第4单元 理解基本的字符串函数

大小写转换函数:
lower() 将所有字符转换为小写
upper() 将所有字符转换为大写
capitalize() 将第一个字符转换为大写,同时将后面的字符都转化为小写

(这些操作都不会影响其他非字母字符)

字符串判定函数:
islower() 判断字符串中的所有字母是否都是小写
isupper() 判断字符串中的所有字母是否都是大写
isspace() 检查所有字符是否为空格
isdigit() 检查所有字符是否为0-9中的数字
isalpha() 检查所有字符是否为a-z,A-Z中的字母字符
符号b表示二进制数组:
Array1 = b”hello”   #二进制数组
Array2 = ”hello”   #字符串数组
>>>Array1[0]
104
>>>Array2[0]
‘h’
Array1.decode() #将二进制数组转化为字符串数组
Array2.encode() #将字符串数组转化为二进制数组
去除字符串周围的空格:
strip() 删除整个字符串前后的空格
istrip() 删除字符串左边(开始处)的空格
rstrip() 删除字符串右边(结束处)的空格

(不删除字符串内部的空格)

分割、连接字符串:
Split(delim=””)         #使用delim中的内容作为分隔符,来分割字符串
“”.join()               #使用””中的内容将()中的内容连接起来
查找字符索引:
“”.find(needle)      #查找needle在””字符串中第一次出现的索引值
“”.Count(needle)    #查找needle在””字符串中出现的次数

(区别字符串大小写)


第5单元 选择合适的数据结构

列表 搜索时间是线性的,不适合存储大量的可搜索数据
元组 不可变的列表,搜索时间也是线性的
集合 不存在索引,适合成员查询和消除重复项
字典 构建一个从键到值得映射,适合键值的查找

字典说明:
1,通过(键,值)这样的元组列表创建字典
2,使用内置类构造函数enumerate(seq)创建字典(seq为值,键位对应的序号)
3,使用内置类构造函数zip(kseq,vseq)创建字典(kseq为键序列,vseq为值序列(两个序列的长度相同))


第6单元 通过列表推导式理解列表

列表推导式是将数据集(不一定是列表)转换为列表的表达式。
(没什么只要知识点,本来也就没有多少内容,就没有总结了)


第7单元 使用计数器

Collections()模块定义计数器
将计数的集合传递给构造函数counter,然后使用most_common()方法获取各项及其出现频率。

from collections import counter
phrase = “a man a plan a canal panama”
cntr = counter(phrase.split())
cntr.most_common()

第8单元 使用文件

With语句:显式的打开一个文件,在退出Python后能自动关闭文件

    #普通语句f = open(name,mode=”r”)f.close()#with语句    With open(name,mode=”r”) as f
f.read() 以字符串或二进制形式读取文件所有数据
f.write() 以字符串或二进制形式向文件写入内容

第9单元 上网

Urllib.parse模块提供解析和构建网址的工具
Urlparse()方法将网址分为六个元素的元组:协议、网络地址、文件系统路径、参数、查询和片段


第10单元 使用正则表达式实现模式匹配

将一个需要使用多次的正则表达式编译成Pattern对象,使得模式匹配更高效

CompiledPattern = re.complie(pattern,flags=0)
正则表达式说明

基本操作:

· 除换行符外的任意字符
a 字母a
a|b a或b

字符类:

[a-d] a,b,c,d中任一字符
[^a-d] 除a,b,c,d中任意字符
\d 一个数字字符
\D 一个非数字字符
\s 一个空白字符
\S 一个非空白字符
\w 一个字母数字字符
\W 一个非字母数字字符

数量相关:

X* 0个或多个X
X+ 1个或多个X
X? 0或1个X
X{2} 2个且仅2个X
X{2,5} 2-5个X

转移字符:

\n 换行符
\r 回车符
\t Tab

界定符号:

^ 字符起始处
\b 单词边界
\B 非单词边界
$ 字符结束处
Re模块
re.split(pattern,string,maxsplit=0,flags=0)    #通过Pattern(正则表达式)将字符串分为maxsplit个字符串,并返回子字符串列表
re.match(pattern,string,flags=0)               #检查字符串开头是否与Pattern相匹配
re.search(pattern,string,flags=0)              #检查整个字符串是否存在Pattern部分
re.findall(pattern,string,flags=0)                 #查找与Pattern相匹配的所有子字符串
re.sub(pattern,repl,string,flags=0)                #用repl替换字符串的所有非重叠匹配部分

第11单元 globbing文件名

Globbing是匹配特定文件名和通配符的过程,是正则表达式的简化版。
(通配符可以包含特殊字符’*’,”?”。+·不是特殊字符)


第12单元 Picking数据

Pickle模块用于实现序列化——将任意的Python数据结构保存到一个文件中,并将其作为Python表达式读回。


"We can never learn to fly without crashing a few times."--《The Flash》

《Python数据科学入门》之阅读笔记(第2章)相关推荐

  1. Python 数据科学入门教程:机器学习:回归

    Python 数据科学入门教程:机器学习:回归 原文:Regression - Intro and Data 译者:飞龙 协议:CC BY-NC-SA 4.0 引言和数据 欢迎阅读 Python 机器 ...

  2. 《Python数据科学入门》之数据库的使用(第4章)

    Python数据科学入门 Dmitry Zinoviev著 熊子源 译 第四章 使用数据库 本章介绍了数据库的使用.之前那本<Python爬虫>中有谈到数据库的使用,这里就不再详细介绍.仅 ...

  3. python爬虫从入门到实战笔记——第四章Scrapy框架

    推荐阅读: python爬虫从入门到实战笔记--第一章爬虫原理和数据爬取 python爬虫从入门到实战笔记--第二章非结构化数据和结构化数据的提取 python爬虫从入门到实战笔记--第三章动态HTM ...

  4. 有前途的人工智能大数据分析相关职业:Python数据科学入门之路

    2019独角兽企业重金招聘Python工程师标准>>> 为什么学习Python数据科学? Python是数据科学职业所需的宝贵技能之一.Python是数据科学的首选编程语言. 201 ...

  5. python数据科学入门_干货!小白入门Python数据科学全教程

    前言本文讲解了从零开始学习Python数据科学的全过程,涵盖各种工具和方法 你将会学习到如何使用python做基本的数据分析 你还可以了解机器学习算法的原理和使用 说明 先说一段题外话.我是一名数据工 ...

  6. python数据科学用法_Matplotlib 使用 - 《Python 数据科学手册》学习笔记

    一.引入 import matplotlib as mpl import matplotlib.pyplot as plt 二.配置 1.画图接口 Matplotlib 有两种画图接口: (1)一个是 ...

  7. Python 数据科学入门

    http://python.jobbole.com/85394/ Python 在数据科学领域越来越流行了.它的流行不无道理. Python 容易学,有超强数据科学库,并且和 Hadoop 以及 Sp ...

  8. Python 数据科学入门教程:OpenCV

    图像和视频分析 原文:Images and Video Analysis 译者:飞龙 协议:CC BY-NC-SA 4.0 一.Python OpenCV 入门 欢迎阅读系列教程,内容涵盖 OpenC ...

  9. Python 数据科学入门教程:TensorFlow 聊天机器人

    TensorFlow 聊天机器人 原文:Creating a Chatbot with Deep Learning, Python, and TensorFlow 译者:飞龙 协议:CC BY-NC- ...

最新文章

  1. AI一分钟 | 小鹏汽车回应前苹果员工窃取商业机密:积极配合相关调查
  2. 如何合并两个Docker 镜像
  3. Word中快速插入目录
  4. Hadoop参数汇总
  5. 脑芯编:窥脑究竟,织网造芯(二)
  6. 【算法学习笔记】19.算法设计初步 最大子列和问题的几种方法
  7. Angulary应用依赖里的zone.js
  8. 数据库恢复相关知识笔记
  9. php 彩票系统,hsyl12141511 一套完整的PHP版彩票系统 - 下载 - 搜珍网
  10. Python数据科学库-小测验
  11. Leetcode 142. Linked List Cycle IIJAVA语言
  12. idea 页面改了 网页没_如何做出高大上的PPT?试试美得令人窒息的网页风格!
  13. Linux学习笔记6 - 用户和组群账户管理
  14. 2017年美国大学生数学建模竞赛E题O奖65123论文解读
  15. Inventor Pro v2008
  16. 十大排序算法总结与实现
  17. 电脑护眼,老司机教你电脑护眼设置怎么开
  18. [转载]前端代码规范 及 最佳实践
  19. macOS Big Sur 11.0 B2(20A4300b)原版镜像
  20. PCM开发板模块实验指导--IIC主从实验

热门文章

  1. Dart —— 函数 函数参数 匿名函数
  2. 修改java环境变量_怎么配置java环境变量
  3. 国外变电站3d可视化技术发展_国外沥青路面纵向施工接缝技术的发展
  4. 手把手带你安装webpack --mac电脑哦~
  5. 基于深度学习的人脸检测和关键点检测推理实践(OpenCV实现,含代码)
  6. 神经网络架构大盘点--读Fjodor Van Veen的《neural-network-zoo》
  7. 数据挖掘 沪深股市预测
  8. 关于win10 共享打印机遇到的问题(自己留用)
  9. 太秀了!那个在 GitHub 用文言文编程的小哥,竟从 28 万行唐诗中找出了对称矩阵...
  10. 第一章、Ansible的详细介绍与安装