利用python进行数据分析_利用python进行数据分析复现(1)

2f0ff573d01c341bf767ee3a229966d9.png

一直以来,都想学习python数据分析相关的知识,总是拖拖拉拉,包括这次这个分享也是。《利用python进行数据分析 第2版》是一次无意之间在简书上看到的一个分享,我决定将很详细。一直都想着可以复现一下。但总有理由,忘记和拖拉。这次我想通过分享的方式来监督自己学习。争取一周更一次。中间每天都还是要学习,只是周末再分享。 放上原链接: https://www.jianshu.com/p/04d180d90a3f 作者在链接中放上了书籍,以及相关资源。因为平时杂七杂八的也学了一些,所以这次可能是对书中的部分内容的复现。也可能有我自己想到的内容,内容暂时都还不定。在此感谢原简书作者SeanCheney的分享。

直接从第二章开始。

第二章 Python语法基础,IPython和Jupyter Notebooks

我使用的是Jupyter Notebooks进行所有操作

import numpy as np

通过上述语句,导入import后面的包,as 后跟在本次运算中,对那个包取的别名。在Jupyter Notebooks中,输入完一句后,运行并跳到下一行中,按shift + enter

data = {i : np.random.randn() for i in range(7)}
'''上述语句表示,对data赋值,data是一个字典,一共有7对,每一个值都是由np.random.randn()产出的随机数。'''
'''导入包的时候,也可以直接导入我们需要的那个函数'''
from numpy.random import randn
data = {i : randn() for i in range(7)}
print(data)

tab补全

这个是在IPython shell 中可以对文件路径、命名、对象和模块属性这些进行文件全路径的补全 当我输入到numpy.的时候,按下tab键,就可以补全后面的函数。

45028d56ef4d1ba8fa27db86b245b0b5.png

自省

加上?,就可以显示出对象的详细信息。 加上??,就可以显示出对象的源代码。

b6a47d6af87fc0b94f99f54d3495d056.png

%run命令 这个是可以在IPython中运行另一段代码,而在jupyter notebook中,这是用%load Ctrl+C 可以打断正在运行中的代码。在我目前用到的IDE中,基本上行都是可以用Ctrl+C打断运行代码 IPython和jupyter notebook都有一套快捷键,在jupyter notebook中,可以参考帮助文档。

786a43b1125d31aad52604f6f033c992.png

IPython中还有一套魔术命令,但是我一般都不用IPython,所以这一段我就没细看。有需要的可以去看原作者的帖子内容。 在jupyter notebook中可以随意复制粘贴,但IPython shell 的风格和cmd较为接近,复制粘贴相对麻烦,可以使用%paste 和%cpaste可以运行剪切板中的代码,%cpaste在运行的时候会给出一段提示。jupyter notebook中就不能使用这个了。

Python语法基础

通过缩进表示文档的语句之间的空间。一般使用四个空格,或者按一下Tab键。 在python中,数字、字符串、函数、模块都可以作为一个对象。同时,在语句中也可以通过#键,对每一行内容进行一个注释。 书中还提到了一个鸭子类型,即只要满足我们需要功能,那他就是符合我们要求的。这可以去判断一个对象是不是可以达到我们需要的功能。 Python中,通过=传递数组,在=前后的变量对应的内容是一样的,变量类似指针,同时指向内存的一个内容,改变其中的一个,会影响另一个的值。

a=[1,2,3]
b=a
b
# out:[1,2,3]
a.append(3)
b
# out:[1,2,3,4]

引入

这个可以导入我们之前编辑的文件 可以引用我们在另一个文件确定的函数等等。 这是在同一个文件夹中便捷的some.py文件

0231442c39e88f0d20da9c413eb65f61.png
import some
some.f(2)
# out:4
print(some.g(3,4))
some.PI
# out:7
# out:3.14159

运算符

具体的内容可以参照这个内容

bdb4a8a8f31123419f438ae58ba17576.png

python中字符串和元祖是不可变的,其余的基本上都是可变的。 Python的标准库中有⼀些内建的类型,⽤于处理数值数据、字符串、布尔值,和⽇期时间。这些单值类型被称为标量类型,本书中称其为标量。

dfd2cc800170d82b39451a1b14cf1c0f.png

python中的数据类型主要是int和float类型,int类型可以存储任意大的数。float为浮点数

python中还有字符串,一般是放在' '中间,原始的字符串不能修改,可以通过把一个字符串赋值给另一个值进行修改,但不改变原始值。 可以通过list方法打开字符串,然后就可以进行相关操作了。 有些时候由于字符串中有一些双斜杠,这个时候可以在字符串前面加一个r,表示字符串只是表示字符串本身。就不会出现转义等情况了。 编码和解码 ,编码使用encode ,解码使用decode

a='hallo'
x=list(a)
x
# out:['h', 'a', 'l', 'l', 'o']
m=a.encode('utf-16')
m
# out:b'xffxfehx00ax00lx00lx00ox00'

布尔值,主要是true和false 类型转换,可以转换对象的类型,str(),bool(),float()等,可以转成相关的str,bool,float类型 None 空值 时间函数 datetime

from datetime import datetime, date, time
dt = datetime(2020,1,4,20,00,12)#年月日时分秒
print(dt.date())
print(dt.time())
# out:2020-01-04
# out:20:00:12
dt.strftime('%m/%d/%Y %H:%M')
# out:'01/04/2020 20:00'

21aa173e79957b84de40c709745c6eeb.png

控制流: if 语句,主要包括:if ,elif,else for 循环 while语句 pass 语句 range循环:主要是迭代器

三元表达式

value = true-expr if condition else false-expr
# 等价于
if condition:value = true-expr
else:value = false-expr

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/374315.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

C语言代码规范(七)#define

#define 宏定义的使用 #define MAX(x, y) ( ((x) > (y)) ? (x) : (y) ) #define MIN(x, y) ( ((x) < (y)) ? (x) : (y) ) 在宏定义中要把参数用括号扩起来( ((x) > (y)) ? (x) : (y) )。 因为宏只是简单的文本替换&#xff0c;如果不注意&#xff0c;很容…

http 二进制_浅谈HTTP协议

HTTP一、HTTP协议http协议&#xff0c;是超文本传输协议&#xff0c;此协议是基于TCP/IP的协议&#xff0c;是互联网上应用最为广泛的一直网络协议是一种无状态协议&#xff0c;默认端口为80,。设计HTTP的最初目的是为了提供一种发布和接受HTML页面的方法。通过HTTP或者HTTPS协…

linux redis客户端_为什么单线程Redis能那么快?

我们通常说&#xff0c;Redis 是单线程&#xff0c;主要是指 Redis 的网络 IO 和键值对读写是由一个线程来完成的&#xff0c;这也是 Redis 对外提供键值存储服务的主要流程。但 Redis 的其他功能&#xff0c;比如持久化、异步删除、集群数据同步等&#xff0c;其实是由额外的线…

C语言开发笔记(七)const和指针

const修饰变量是常用的&#xff0c;不容易犯错&#xff0c;而const和指针一起使用时很容易混淆。 (一)const int *p #include <stdio.h>int main(void) {int a 10;int b 20;const int *p &a;*p b;return 0; } const在int *的左侧&#xff0c;即指针指向内容为…

ubuntu php 无法执行exec_利用webhook使php项目自动部署

php中文网最新课程每日17点准时技术干货分享1.先来讲一下自动部署的原理&#xff0c;一般在我们push代码的时候&#xff0c;可以自动请求webhook中设置的url&#xff0c;完成一次请求与响应。那么只要我们设置的url地址请求的php文件内容是执行命令行git push命令&#xff0c;则…

C语言开发笔记(八)static

在C语言中&#xff0c;static有3个作用&#xff1a; &#xff08;1&#xff09;在函数体&#xff0c;一个被声明为静态的变量在这一函数体内被调用的过程中维持其值不变。 #include <stdio.h>void test(void) {static int i 0;printf("%d\n", i); }int main…

ppt修复无法读取_移动硬盘故障分析以及建议修复方法

移动硬盘中存储了大量的重要数据&#xff0c;一旦出现什么问题&#xff0c;会让人急得焦头烂额。换个硬盘倒是件小事&#xff0c;但其中资料、数据的丢失更令人懊恼。而在硬盘使用的过程中&#xff0c;由于使用者一时的不注意&#xff0c;往往就很容易造成意外的问题。接下来&a…

(原创)c#学习笔记04--流程控制01--布尔逻辑03--运算符优先级

转载于:https://www.cnblogs.com/wodehao0808/p/4896018.html

m.2接口和nvme区别_NVMe/SATA SSD有啥不一样?萌新怎么选

随着NAND技术的升级迭代&#xff0c;堆栈层数不断提高使得SSD单位容量成本不断下降&#xff0c;消费级市场基本已经成为了SSD的天下。目前主流的SSD大致有两种接口&#xff0c;分别是M.2和SATA两种类型。NVMe/SATA有啥区别SATA接口的SSD执行的AHCI协议标准&#xff0c;是目前较…

带有NetBeans 7.1 RC 2的WebLogic 12c快速入门

WebLogic服务器12c停运了几天。 它是针对“裸露”的Java开发人员的–花哨的Fusion Middleware东西将继续沿线升至12c。 因此&#xff0c;这基本上是我要运行的版本。 今天&#xff0c;我为您提供了一个最新的NetBeans 7.1&#xff08;RC 2&#xff09;和WebLogic的快速入门 &am…

python爬虫反爬机制_Python Scrapy突破反爬虫机制(项目实践)

对于 BOSS 直聘这种网站&#xff0c;当程序请求网页后&#xff0c;服务器响应内容包含了整个页面的 HTML 源代码&#xff0c;这样就可以使用爬虫来爬取数据。但有些网站做了一些“反爬虫”处理&#xff0c;其网页内容不是静态的&#xff0c;而是使用 JavaScript 动态加载的&…

自定义URL Scheme完全指南

iPhone / iOS SDK 最酷的特性之一就是应用将其自身”绑定”到一个自定义 URL scheme 上&#xff0c;该 scheme 用于从浏览器或其他应用中启动本应用。 注册自定义 URL Scheme 注册自定义 URL Scheme 的第一步是创建 URL Scheme — 在 Xcode Project Navigator 中找到并点击工程…

P6 音频格式—— AAC

目录 前言 01 AAC是什么&#xff1f; 02 为什么需要进行AAC进行音频压缩处理&#xff1f; 03 AAC的特点以及优势 04 AAC格式详解&#xff1a; 4.1. ADIF的数据结构&#xff1a; 4.1.1 ADIF Header具体的表格: 4.2. ADTS的结构&#xff08;重点&#xff09;&#xff1a; …

Android开发笔记——ListView模块、缓存及性能

ListView是Android开发中最常用的组件之一。本文将重点说明如何正确使用ListView&#xff0c;以及使用过程中可能遇到的问题。 ListView开发模块图片缓存可能遇到的问题一、ListView开发模块 从项目实践的角度来看&#xff0c;ListView适合“自底向上”的开发模式&#xff0c;即…

python实现excel筛选功能并输出_python如何实现excel按颜色筛选功能

离岛 2020-07-09 09:37 已采纳 不太了解具体需求&#xff0c;提供一些示例代码和思路供你参考&#xff1a; 整体思路&#xff1a;首先已知excel中的颜色值&#xff0c;根据编码实现颜色筛选的功能 示例&#xff1a; 1、首先安装pip install openpyxl 2、示例代码可以获取Excel中…

C学习杂记(七)extern声明可省略变量类型

工作三年&#xff0c;看C的书也不少。第一次知道extern可以省略变量类型。 b.c有一个全局变量unsigned int data_length&#xff0c;a.c想要调用它&#xff0c;通常使用: extern unsigned int data_length&#xff1b; 在声明时可以把外部变量类型去掉&#xff1a;extern da…

linux 内存取证_【取证流程】电子数据证据远程勘验

原创&#xff1a;弘连网络电子数据证据远程勘验在日常的取证工作中必不可少&#xff0c;但由于存在信息安全差、数据可能被篡改的问题。取证过程中&#xff0c;有明确的取证要求来确保取证过程的规范显得至关重要&#xff0c;今天我们就一起来回顾下遇到远程勘验的取证场景&…

python2 print_Python2和Python3中print的不同点

在Python2和Python3中都提供print()方法来打印信息,但两个版本间的print稍微有差异 主要体现在以下几个方面&#xff1a; 1.python3中print是一个内置函数&#xff0c;有多个参数&#xff0c;而python2中print是一个语法结构&#xff1b; 2.Python2打印时可以不加括号&#xff…

java 与 c#的 中 字符串比较“==”与“equals”的差异

.net中&#xff0c;其字符串特有的驻留机制&#xff0c;保证了在同一进程中&#xff0c;相同字符序列的字符串&#xff0c;只有一个实例&#xff0c;这样能避免相同内容的字符串重复实例化&#xff0c;以减少性能开销。 先来回顾一下c#中的代码&#xff1a; public static void…

visual studio 2019 未能在命名空间“System.IO.Ports”中找到类型名“SerialPort”

在vs2019以前的版本&#xff0c;只要using System.IO.Ports就可以用SerialPort。 这里需要自己手动添加相关引用。 工具–>Nuget包管理器&#xff08;N&#xff09;–>管理解决方案的Nuget程序包&#xff08;N&#xff09; –>浏览&#xff0c;左边搜索SerialPort 右…