import numpy as np

#创建ndarray
# data1 = [6, 5, 7, 1, 3]
# arrl = np.array(data1)
# print(arrl)
#多维列表创建ndarray
data2 = [[3, 4, 2], [1, 8, 9]]
arr2 = np.array(data2)
#
# print(arr2)
#
# asrr1 = np.asarray([2, 3, 4])
# print(asrr1)
#
# asrr2 = np.asarray([[2, 1, 3, 4], [2, 9, 9, 1]])
#
# print(asrr2) #np.array() 和 np.asarray()
#array()创建时是对原始对象的一份copy创建的,而asarray当输入时ndarray并不进行复制操作,
# 如果改变新创建的数组,则原始数组也会跟着改变。
# arr0 = np.zeros((2, 3))
# arr11 = np.array(arr0)
# arr11[0][0] = 100
# print(arr11)
# print(arr0)
#
# arr12 = np.asarray(arr0)
# arr12[0][0] = 200
# print(arr12)
# print(arr0) #创建全0元素的ndarray # zeros1 = np.zeros(4)
# zeros2 = np.zeros((3, 4))
#
# ones1 = np.ones(4)
# ones2 = np.ones((3, 4))
#
# print(zeros1)
# print(zeros2)
#
# print(ones1)
# print(ones2) #empty函数 用来创建一个没有任何值得数组
# empty1 = np.empty((3, 4))
# print(empty1)
#
# #创建对角矩阵
# eye1 = np.eye(4)
#
# print(eye1) # array将输入数据(列表、元组、数组或其他序列类型)转换为ndarray
# asarray同array如果当输入是ndarray则不进行复制
# arange类型python中的range,但返回的是一个ndarray,并不是列表
# ones,ones_like 前者返回是1的数组,后者以另一数组为参数,根据其形状和dtype返回全为1的数组
# zeros, zeros_like 同上,创建新数组
# eye, identity 创建一个正方的N*N的矩阵,对角为1,其余为0 # print(arr2.shape)
#
# print(arr2.dtype)
#
# int_arr = arr2.astype(np.int64)
# print(int_arr.dtype) # print(arr2 + 3)
# print(arr2 * 1.2) arr3 = np.array([[2, 1, 4],[1, 5, 9]]) # print(arr3)
#
# print(arr2 * arr3)
# print(arr3 + arr2)
#
# print(np.add(arr2, arr3)) #数据索引
# print(arr2[0])
# print(arr2[0][1])
# print(arr2[0,1]) #切片 a = [1, 2, 3, 4, 5] # print(a[2:4])
#
# print(arr2)
#
# print(arr2[0][1:3])
#
# print(arr2[0:1, :])
# print(arr2[0:1][:]) # split1 = arr3[:2, :2]
# split1[0][0] = 6
# # print(split1)
# #布尔型索引
# words = np.array(list('abacbad'))
# print(words)
data = np.random.randn(7, 4)
#
# print(words == 'a')
# #布尔数组的长度必须跟索引轴的长度一致,此外还可以将布尔型索引和切片混合使用
# print(data[words == 'a'])
#
# print(data[data > 0])
#
# print(data[(data > 0) & (data < 1)])
#
# data[(data > 0) & (data < 1)] = 3
#
# print(data) arr = np.empty((8, 4))
for i in range(8):
arr[i] = i
# print(arr)
#
# print(arr[[3, 5, 1, 6]]) arr = np.arange(32).reshape([8, 4]) # print(arr) # print(arr[[1, 5, 7, 2], [0, 3, 1, 2]])
#
# print(arr[[1, 5, 7, 2]][:, [0, 2, 1, 3]]) # 花式索引和数组切片不一样,花式索引是将数据复制到新的数组中,而切片只是原始数据的一份视图,改变切片数据会改变原始数据,
# 而改变花式索引产生的数组并不会改变原始数据,
a = arr[np.ix_([1, 5, 7, 2], [0, 2, 1, 3])]
print(a) a[0][0] = 10000
# print(a)
#
# print(arr[np.ix_([1, 5, 7, 2],[0, 2, 1, 3])]) #通用函数
#对数组进行元素级的运算的函数
# np.exp(data) 指数函数运算 # np.abs(data) 取绝对值
# np.square(data) 取平方
# np.sqrt(np.square(data)) 开根号

python numpy科学计算和数据分析的基础包的更多相关文章

  1. python numpy 科学计算通用函数汇总

    import numpy as np #一元函数 #绝对值计算 a = -1b = abs(a)print(b)输出: 1 #开平方计算 a = 4b = np.sqrt(a)print(b)输出: ...

  2. python安装numpy科学计算模块

    解决两个问题: (1)Import Error: No module named numpy (2)Python version 2.7 required, which was not found i ...

  3. 使用python做科学计算

    这里总结一个guide,主要针对刚开始做数据挖掘和数据分析的同学 说道统计分析工具你一定想到像excel,spss,sas,matlab以及R语言.R语言是这里面比较火的,它的强项是强大的绘图功能以及 ...

  4. 使用Python做科学计算初探

    今天在搞定Django框架的blog搭建后,尝试一下python的科学计算能力. python的科学计算有三剑客:numpy,scipy,matplotlib. numpy负责数值计算,矩阵操作等: ...

  5. 使用Python做科学计算初探(转)

    今天在搞定Django框架的blog搭建后,尝试一下python的科学计算能力. python的科学计算有三剑客:numpy,scipy,matplotlib. numpy负责数值计算,矩阵操作等: ...

  6. 科学计算三维可视化---Mlab基础(数据可视化)

    推文:科学计算三维可视化---TVTK库可视化实例 使用相关函数:科学计算三维可视化---Mlab基础(管线控制函数) 一:mlab.pipeline中标量数据可视化 通过持续实例,来感受mlab对数 ...

  7. 科学计算三维可视化---Mlab基础(鼠标选取交互操作)

    一:鼠标选取介绍 二:选取红色小球分析 相关方法:科学计算三维可视化---Mlab基础(基于Numpy数组的绘图函数) 1.小球场景初始化建立 import numpy as np from maya ...

  8. windows下如何快速优雅的使用python的科学计算库?

    Python是一种强大的编程语言,其提供了很多用于科学计算的模块,常见的包括numpy.scipy.pandas和matplotlib.要利用Python进行科学计算,就需要一一安装所需的模块,而这些 ...

  9. Python下科学计算包numpy和SciPy的安装

    转载自:http://blog.sina.com.cn/s/blog_62dfdc740101aoo6.html Python下大多数工具包的安装都很简单,只需要执行 “python setup.py ...

随机推荐

  1. swust oj 983

    利用二叉树中序及后序遍历确定该二叉树的先序序列 1000(ms) 10000(kb) 2606 / 4908 已知二叉树的中序和先序遍历可以唯一确定后序遍历.已知中序和后序遍历可以唯一确定先序遍历,但 ...

  2. 基于贝叶斯算法实现简单的分类(java)

    参考文章:https://blog.csdn.net/qq_32690999/article/details/78737393 项目代码目录结构 模拟训练的数据集 核心代码 Bayes.java pa ...

  3. node 学习(二)

    写基础太麻烦了  我花了个基础知识的脑图

  4. element-ui中上传文件upload

    <el-upload class="upload-demo" name="targetFile" ref="upload" :with ...

  5. Lecture3.随机变量及其概率分布

    1.随机变量的定义 2.随机变量的类型: 若随机变量X的可能取值是有限个或可列个, 则称X为离散型随机变量. 反之,则称X为非离散型随机变量. 若随机变量X的可能取值“连续”(“不间断”),则称X 为 ...

  6. [POI2002][HAOI2007]反素数(Antiprime)

    题目链接 这道题需要用到整数唯一分解定理以及约数个数的计算公式.这里我就不再阐述了. 公式可以看出,只有指数影响约数个数,那么在唯一分解出的乘式中,指数放置的任何位置都是等价的.(即 23*34*57 ...

  7. 严重: StandardWrapper.Throwable org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'goodsController' defined in file [D:\eclipse\eclipse-space\pinyougou_parent\pinyou

    由于错误太宽,没法截取完整的,所以不怎么连贯,但是不影响错误的解决. 这个错误是因为service无法自动注入.显示嵌套状态异常. 我就查看了一下我的坐标和配置文件,配置文件的路径和访问地址都是正确的 ...

  8. AS中jar包和aar包区别及导入导出

    发布时间:2018-01-18 来源:网络 上传者:用户 关键字: 导出 导入 区别 包和 aar jar 发表文章 摘要:jar包和aar包区别*.jar:只包含class文件与清单文件,不包含资源 ...

  9. android 自定义Button,抛弃写shape文件

      标签: android 控件  自定义 2017年05月27日 17:52:13 611人阅读 评论(0) 收藏 举报 分类: 自定义View(2) 作者同类文章 X 版权声明:本文为博主原创文章 ...

  10. request之额外路径

    谈到额外路径 ,首先要明白映射路径,映射路径是servlet处理的路径,在web.xml中配置.比如配置一个/emp的映射路径,意味着客户端可以通过http:+项目路径+/emp访问服务器的项目,而所 ...