利用python 学习数据分析 (学习三)
内容学习自:
Python for Data Analysis, 2nd Edition
就是这本
纯英文学的很累,对不对取决于百度翻译了
前情提要:
各种方法贴:
https://www.cnblogs.com/baili-luoyun/p/10250177.html
本节内容,numpy 结尾, 以及pands初入门
一:伪随机函数
samples =np.random.normal(size=(3,3))
print(samples)
samples1 =np.random.seed(1234) #调节随机种子
print(samples1) >>>> [[ 0.91041087 0.99724402 -0.0681944 ]
[ 0.48277059 -1.50446272 0.30656754]
[-0.01929894 -0.27835256 -0.68331925]]
None
2>:给上下限的数取整
samplse1 = np.random.randint(1,6) #给上下限的数取整数
print(samplse1)
.>>>.>>>>>
# 随机整数
2
3>:产生正太分布样本
arr1 =np.random.randn(3,3) #产生正态分布的样本值
print(arr1) >>>>>
[[ 0.55526507 -0.3952732 1.49921319]
[-0.06943318 -0.05375604 -0.26636376]
[-1.48909115 -0.00702559 0.15973251]]

4>:产生均匀分布样本
arr1 =np.random.rand(3,3) #产生均匀分布的样本质
print(arr1)
>>>
[[0.56847387 0.23533505 0.97136229]
[0.0049996 0.60753788 0.20997453]
[0.41777576 0.26264969 0.55777828]]


二:随机漫步
1:单随机漫步(普通方法)
import matplotlib.pylab as plt
import random
postition = 0
walk =[postition]
steps =1000
for i in range(steps):
step = 1 if random.randint(0,1) else -1
postition += step
walk.append(postition)
print(walk)
plt.plot(walk[:100])
plt.show() >>>>>>
[0, 1, 0, 1, 2, 1, 0, -1, 0, -1, -2, -3, -4, -5, -6, -5, -6, -5, -6, -7, -8, -7, -8, -7, -8, -7, -6, -5, -6, -7, -6, -7, -8, -7, -8, -9, -8, -7, -6, -5, -6, -5, -4, -3, -4, -3, -2, -3, -4, -5, -4, -5, -4, -5, -6, -5, -4, -3, -4, -5, -4, -3, -2, -3, -2, -1, -2, -1, -2, -3, -4, -5, -4, -3, -2, -3, -4, -3, -2, -1, 0, 1, 0, -1, 0, -1, 0, 1, 2, 3, 4, 5, 4, 3, 2, 3, 2, 1, 2, 1, 0, 1, 2, 3, 4, 3, 4, 3, 4, 3, 4, 3, 4, 5, 4, 5, 6, 7, 6, 5, 4, 3, 2, 1, 2, 3, 4, 3, 4, 5, 6, 5, 4, 5, 4, 5, 6, 5, 6, 5, 4, 3, 2, 1, 2, 1, 0, 1, 0, -1, 0, 1, 0, -1, -2, -1, -2, -1, 0, 1, 2, 3, 4, 5, 4, 5, 4, 3, 4, 5, 6, 7, 8, 7, 6, 5, 4, 5, 6, 7, 6, 7, 6, 7, 8, 9, 10, 9, 8, 9, 8, 9, 10, 11, 10, 11, 12, 11, 10, 9, 10, 9, 8, 7, 8, 7, 6, 5, 4, 5, 4, 3, 2, 1, 0, 1, 0, 1, 2, 1, 0, -1, 0, -1, -2, -3, -2, -1, 0, 1, 0, 1, 0, -1, 0, 1, 0, -1, -2, -3, -2, -3, -2, -3, -4, -3, -2, -3, -4, -3, -2, -3, -4, -3, -4, -3, -2, -3, -4, -3, -4, -5, -6, -7, -6, -7, -8, -9, -10, -9, -8, -7, -8, -9, -10, -11, -12, -13, -14, -15, -14, -15, -14, -15, -14, -13, -12, -13, -14, -13, -14, -15, -16, -17, -18, -17, -18, -19, -18, -19, -20, -19, -18, -17, -16, -15, -14, -13, -12, -11, -12, -13, -12, -13, -12, -11, -10, -9, -8, -9, -8, -7, -8, -9, -10, -9, -10, -11, -12, -13, -12, -13, -14, -13, -12, -13, -14, -15, -14, -13, -12, -11, -12, -13, -12, -13, -12, -13, -14, -13, -14, -15, -14, -15, -16, -17, -16, -15, -16, -15, -16, -15, -16, -17, -18, -17, -18, -19, -18, -17, -16, -15, -14, -15, -14, -15, -16, -17, -18, -19, -20, -21, -20, -21, -20, -19, -20, -19, -18, -19, -18, -17, -16, -17, -16, -15, -16, -15, -14, -15, -14, -15, -14, -15, -16, -15, -14, -15, -16, -17, -16, -15, -16, -15, -16, -17, -16, -15, -14, -13, -14, -15, -14, -13, -14, -15, -16, -17, -16, -15, -14, -13, -12, -13, -14, -15, -14, -15, -14, -13, -12, -11, -12, -11, -12, -13, -14, -13, -12, -13, -12, -13, -14, -13, -14, -15, -14, -15, -14, -13, -12, -13, -14, -15, -14, -15, -16, -15, -16, -17, -18, -17, -18, -17, -18, -17, -18, -17, -18, -19, -18, -19, -18, -17, -18, -19, -20, -19, -18, -19, -18, -17, -16, -15, -14, -15, -16, -15, -14, -15, -16, -15, -16, -15, -14, -13, -12, -11, -12, -11, -10, -11, -12, -13, -14, -13, -12, -11, -10, -11, -10, -11, -12, -13, -14, -15, -14, -15, -14, -15, -16, -17, -16, -17, -18, -17, -18, -17, -16, -15, -14, -15, -14, -15, -16, -15, -14, -15, -16, -17, -18, -19, -20, -21, -20, -19, -18, -19, -18, -17, -18, -19, -18, -19, -18, -19, -20, -19, -18, -19, -20, -19, -20, -19, -18, -19, -20, -21, -22, -21, -22, -23, -22, -21, -20, -21, -20, -21, -22, -21, -20, -19, -18, -19, -18, -19, -18, -17, -18, -19, -20, -21, -20, -21, -22, -23, -24, -23, -22, -21, -20, -19, -20, -19, -18, -17, -18, -17, -18, -19, -20, -21, -20, -19, -18, -19, -20, -21, -22, -23, -22, -23, -22, -21, -20, -21, -22, -23, -24, -25, -24, -25, -24, -25, -24, -25, -26, -25, -24, -25, -26, -25, -26, -27, -28, -29, -30, -29, -30, -31, -32, -33, -34, -33, -32, -33, -34, -33, -34, -33, -32, -31, -30, -29, -30, -31, -30, -31, -30, -29, -28, -27, -26, -27, -28, -27, -26, -25, -24, -25, -26, -25, -24, -25, -24, -23, -22, -23, -22, -21, -20, -21, -20, -21, -20, -19, -20, -19, -20, -21, -22, -21, -20, -19, -20, -19, -18, -19, -18, -17, -16, -15, -16, -17, -18, -19, -20, -21, -22, -23, -22, -23, -24, -25, -26, -27, -28, -29, -28, -27, -28, -27, -26, -25, -24, -25, -26, -27, -26, -27, -26, -25, -24, -23, -24, -25, -24, -25, -26, -25, -26, -27, -28, -27, -26, -27, -26, -25, -24, -25, -26, -25, -26, -27, -28, -27, -28, -27, -26, -27, -26, -27, -26, -25, -24, -25, -24, -23, -22, -21, -20, -21, -20, -21, -22, -21, -20, -21, -20, -19, -20, -21, -20, -19, -20, -21, -22, -23, -24, -23, -22, -21, -22, -23, -24, -25, -26, -25, -24, -23, -24, -23, -22, -23, -22, -23, -22, -21, -20, -21, -22, -23, -24, -23, -22, -21, -22, -21, -22, -21, -20, -19, -20, -19, -20, -21, -22, -21, -20, -19, -18, -19, -18, -17, -18, -19, -20, -19, -20, -21, -20, -19, -20, -19, -18, -19, -20, -19, -20, -19, -18, -19, -18, -17, -18, -17, -18, -19, -18, -17, -16, -15, -16, -15, -16, -15, -14, -15, -16, -17, -18, -19, -20, -19, -18, -17, -16, -17, -18, -19, -20, -21, -20, -19, -20, -21, -20, -21, -20, -21, -22, -21, -20, -19, -20, -21, -20, -19, -20, -21, -22, -21, -22, -23, -24, -23, -24, -23, -24, -23, -24, -25, -26, -27, -28, -27, -28, -29, -30, -29, -28, -27, -26, -27, -26, -27, -28, -29, -28, -27, -26, -27, -28, -29, -30, -29, -30, -31, -32, -31, -32, -31, -30, -29, -30, -31, -30, -29, -28, -29, -30, -29, -28, -27, -28, -27, -26, -25, -26, -25, -26, -25, -24, -25, -26, -27, -26, -27, -26, -25, -24, -25, -26, -25, -24, -25, -24, -23, -22, -23, -24]

2:利用numpy随机漫步
1>:生产1个0 或者1 的1维矩阵,1000次
nsteps =1000
draws =np.random.randint(0,2,size=nsteps) #生成一个0 或者1 的1位矩阵,1000次
print(draws)
>>>>
[1 1 1 0 1 1 1 0 1 0 0 0 1 1 1 1 0 1 0 1 0 1 0 1 0 0 1 0 0 0 0 0 1 1 1 0 0.............. 0 1 1 1 0 1 1 1 1 1 1 0 1 0 0 1 0 1 1 1 0 0 0 1 0 1 0 0 0 0 1 0 0 1 1 0 1
1]
2>:进行三元运算累加
nsteps =1000
draws =np.random.randint(0,2,size=nsteps) #生成一个0 或者1 的1位矩阵,1000次
# print(draws)
steps =np.where(draws>0 ,1,-1) #三元运算
walk =steps.cumsum() #累加
print(walk)
plt.plot(walk)
plt.show()
>>>>>>>>>>
[ 1 0 -1 0 -1 0 -1 0 1 0 1 2 3 4 3 4 5 6
5 6 5 4 5 6 7 6 7 8 9 10 11 10 11 12 11 10
11 12 11 12 11 12 13 14 13 12 13 14 15 16 15 16 17 18
17 18 17 18 19 18 17 16 15 14 15 16 17 16 15 14 13 12
11 10 9 10 9 10 9 10 9 10 9 10 11 10 11 12 11 10
9 10 11 12 11 10 9 10 11 10 9 8 9 8 9 8 9 8
.......

2.1>最大值 ,最小值
l1 =walk.min() # 最小值
print(l1)
l2 =walk.max() #最大值
print(l2)
>>>>>>
-51
12
2.2>求距离0 到(+,-)10 距离最近的索引
l =(np.abs(walk)>=10).argmax() #求距离0 位置10个距离的索引
print(l)
\>>>>>>>>>>>>>>
35
3:模拟多次随机漫步
nwalks =5000 #组数
nsteps =1000 #步数
draws =np.random.randint(0,2,size=(nwalks,nsteps)) # 生成1,0 内的随机5000个漫步值
print(draws)
steps =np.where(draws>0 ,1,-1)
walks =steps.cumsum(1)
print(walks)
>>>>
[[1 1 1 ... 1 0 1]
[0 0 0 ... 0 1 1]
[1 0 0 ... 0 1 0]
...
[0 0 0 ... 1 0 0]
[1 1 0 ... 0 1 1]
[1 0 1 ... 0 0 1]]
[[ 1 2 3 ... 54 53 54]
[ -1 -2 -3 ... -50 -49 -48]
[ 1 0 -1 ... -34 -33 -34]
...
[ -1 -2 -3 ... -64 -65 -66]
[ 1 2 1 ... -8 -7 -6]
[ 1 0 1 ... -8 -9 -8]]
利用python 学习数据分析 (学习三)的更多相关文章
- "利用python进行数据分析"学习记录01
"利用python进行数据分析"学习记录 --day01 08/02 与书相关的资料在 http://github.com/wesm/pydata-book pandas 的2名字 ...
- Python: 利用Python进行数据分析 学习记录
-----15:18 2016/10/14----- 1. import numpy as np;import pandas as pd values = pd.Series(np.random.no ...
- PYTHON学习(三)之利用python进行数据分析(1)---准备工作
学习一门语言就是不断实践,python是目前用于数据分析最流行的语言,我最近买了本书<利用python进行数据分析>(Wes McKinney著),还去图书馆借了本<Python数据 ...
- 利用python进行数据分析——(一)库的学习
总结一下自己对python常用包:Numpy,Pandas,Matplotlib,Scipy,Scikit-learn 一. Numpy: 标准安装的Python中用列表(list)保存一组值,可以用 ...
- $《利用Python进行数据分析》学习笔记系列——IPython
本文主要介绍IPython这样一个交互工具的基本用法. 1. 简介 IPython是<利用Python进行数据分析>一书中主要用到的Python开发环境,简单来说是对原生python交互环 ...
- 利用python进行数据分析--(阅读笔记一)
以此记录阅读和学习<利用Python进行数据分析>这本书中的觉得重要的点! 第一章:准备工作 1.一组新闻文章可以被处理为一张词频表,这张词频表可以用于情感分析. 2.大多数软件是由两部分 ...
- 参考《利用Python进行数据分析(第二版)》高清中文PDF+高清英文PDF+源代码
第2版针对Python 3.6进行全面修订和更新,涵盖新版的pandas.NumPy.IPython和Jupyter,并增加大量实际案例,可以帮助高效解决一系列数据分析问题. 第2版中的主要更新了Py ...
- 利用Python进行数据分析_Pandas_基本功能
申明:本系列文章是自己在学习<利用Python进行数据分析>这本书的过程中,为了方便后期自己巩固知识而整理. 第一 重新索引 Series的reindex方法 In [15]: obj = ...
- 利用Python进行数据分析(第二版)电子版书籍分享
资料下载地址: 链接:https://pan.baidu.com/s/1y1C0bJPkSn7Sv6Eq9G5_Ug 提取码:vscu <利用Python进行数据分析(第二版)>高清中文版 ...
- 利用Python进行数据分析 2017 第二版 项目代码
最近在学习<利用Python进行数据分析>,找到了github项目的地址, 英文版本,中文版本 (非常感谢翻译中文的作者). mark一下,方便后边学习查找.
随机推荐
- spring boot 2
服务端验证: // 1.修改实体 @Min(value = 18,message = "必须大于18岁") private int age; // 2.修改add方法 @PostM ...
- unity animation readonly 无法加事件?
目前找到的解决方案是用代码加Event: using System.Collections; using System.Collections.Generic; using UnityEngine; ...
- ios 单个ViewController屏幕旋转
如果需要旋转的ViewController 使用了UINavigationController,对UINavigationController进行如下扩展 @implementation UINavi ...
- 在 macOS 中激活 Astash Professional
Astah Professional v7.2.0-1ff236版安装完毕后,直接用压缩包内的 astah-pro.jar 替换原安装目录内的同名文件(/Applications/astah prof ...
- BI实施的四个层次
满足业务需求 注重数据分析汇总 统一.高效的系统集成越来越麻烦.管理人员穿梭在具有不同风格.使用逻辑的系统间,越来越厌倦,众多系统之间的业务逻辑.数据含义不一致,使用户无法判 断数据的准确性.任何一个 ...
- mongo学习-固定集合
一.创建固定集合 db.createCollection("guding",{"capped":true,"size":10,"m ...
- UVa 506 System Dependencies (细节问题)
题意:输入几种指令,让你进行模拟操作,指令如下: DEPEND item1 item2 (item3 ...) 安装item1需要先安装item2(.item3……) INSTALL item1 安装 ...
- Linux 基础教程 34-软件包管理-RPM
对于Linux而言管理各类软件,如安装.卸载和升级等是常有的事情和必备的技能.以CentOS为例,常用的安装包命令有rpm和yum. RPM基础 RPM(RedHat Package ...
- java并发编程实战:第十三章----显示锁
一.Lock与ReentrantLock Lock接口中定义了一种无条件.可轮询的.定时的以及可中断的锁获取操作,所有加锁和解锁的方法都是显式的. 1 public interfece Lock 2 ...
- leancloud js SDK 学习
测试页面 AV.initialize("id", "key"); var TestObject = AV.Object.extend("TestObj ...