利用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,一经查实,立即删除!

相关文章

在运行时交换出Spring Bean配置

如今,大多数Java开发人员都定期与Spring打交道,而我们当中的许多人已经熟悉了Spring的功能和局限性。 最近,我遇到了一个我从未遇到过的问题:引入了基于运行时引入的配置来重新连接Bean内部的功能。 这对于简单的配置更改或交换掉…

Proximal Algorithms--Accelerated proximal gradient method

4.3 Accelerated proximal gradient method: 加速近端梯度方法: 基本的近端梯度方法的所谓的“加速”版本,就是在算法中包含了一个外推(extrapolation)步骤,一个简单的版本是: yk1:xkωk(xk−xk−1)xk1:proxλkg(yk1−…

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协…

登陆注册

登陆注册&#xff0c;注册的账号存在服务器的数据库里&#xff0c;成功了就给你返回成功&#xff0c;失败了就返回失败 有三种登陆方式&#xff1a;普通注册&#xff0c;手机号注册&#xff0c;第三方注册转载于:https://www.cnblogs.com/SensenCoder/p/4885606.html

Java并发教程–线程池

Java 1.5中提供的最通用的并发增强功能之一是引入了可自定义的线程池。 这些线程池使您可以对诸如线程数&#xff0c;线程重用&#xff0c;调度和线程构造之类的东西进行大量控制。 让我们回顾一下。 首先&#xff0c;线程池。 让我们直接进入java.util.concurrent.ExecutorSer…

HTTPPost/AFNetWorking/JSONModel/NSPredicate

一、HTTPPost 1. POST方式发送请求 HTTP协议下默认数据发送请求方法是GET方式&#xff0c;若需要使用POST方法&#xff0c;则需要对发送的请求也就是request对象&#xff0c;进行属性设置。 步骤如下&#xff1a; > 要发送的请求对象&#xff0c;需要使用可变请求对象 [[NSM…

C语言代码规范(八)使用const修饰值不允许改变的变量

使用const限定一个变量的值不允许被改变&#xff0c;从而保护被修饰的东西&#xff0c;防止意外&#xff0c;提高程序的可靠性和安全性。

教育小思

父母的时代是“攒钱&#xff0c;买房&#xff0c;生子&#xff0c;终老”&#xff0c;而现在的时代是“教育&#xff0c;创造&#xff0c;传承&#xff0c;成长”。 改变世界&#xff0c;从教育起步。 传统教育的不足之处&#xff1a; 1. 学习体验不佳&#xff0c;学习者被迫…

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

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

servlet中文乱码处理

servlet中文乱码处理 如果是post设置req.setCharacterEncoding("utf-8");如果是get&#xff0c;不去修改服务器配置的情况下new String(name.getBytes("iso-8859-1"),"utf-8")数据库乱码?useUnicodetrue&characterEncodingUTF-8转载于:http…

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;即指针指向内容为…

从JavaFX 1.3迁移到JavaFX 2.0

几天前&#xff0c;我完成了将Modellus的源代码从JavaFX 1.3脚本迁移到JavaFX 2.0 Java语言的过程。 因此&#xff0c;我认为写关于我在此过程中学到的知识会很好。 我想指出&#xff0c;如果您想继续在JavaFX 2.0中使用JavaFX脚本&#xff0c;则可以使用Visage&#xff1a; ht…

九度OJ 1034:寻找大富翁 (排序)

时间限制&#xff1a;1 秒 内存限制&#xff1a;32 兆 特殊判题&#xff1a;否 提交&#xff1a;5925 解决&#xff1a;2375 题目描述&#xff1a;浙江桐乡乌镇共有n个人,请找出该镇上的前m个大富翁.输入&#xff1a;输入包含多组测试用例.每个用例首先包含2个整数n&#xff08…

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

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

android-verticalseekbar——Android可视化SeekBar类库

android-verticalseekbar——Android可视化SeekBar类库转载于:https://www.cnblogs.com/zhujiabin/p/5706246.html

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

一些定义–测试技术9

我认为我即将结束有关测试技术的博客系列&#xff0c;感觉好像已经过去了。 对我来说更清楚的一件事是&#xff0c;测试方法仍处于起步阶段&#xff0c;因此是开发人员之间争执或讨论的明确来源&#xff0c;这是一件好事。 我怀疑我们正处于职业发展史上的某个时刻&#xff0c;…