Numpy模块快速入门

Numpy模块快速入门
1.Python_tips
###################################################################
'''
当遇到不会的函数时,善用帮助文档。一般来说帮助文档中会有例子,方便学习,可以直接套用例子。
!!!重要!!! !!!重要!!! !!!重要!!!
print(help(numpy.genfromtxt))#官方帮助文档,多查询文档善用!!
'''


2.数据结构

一些数据读取操作代码

import numpy

###################################################################
#读取txt文件。。。。numpy很少用来读取数据,,一般使用pandas!!!
print(help(numpy.genfromtxt))#官方帮助文档,多查询文档善用!!

world_txt=numpy.genfromtxt(""test.txt,delimiter=".",dtype=str)#读出的数据i是从0开始,区别matlab
file0_1=world_txt[0,1]#第0行第一列
file02_1=world_txt[0:2,1]#第1列第0-2行的数据,联系matlab
file02_1=world_txt[0:2,0-3]#第0-3列第0-2行的数据,联系matlab

#运行结果暂略.....

###################################################################
#数据结构-数组、向量,存的元素性质要相同数字或者字符
vector = numpy.array([10, 18, 10, 90])#input a list ,创建一个行向量
matrix = numpy.matrix([[1, 2, 32], [3, 4, 23]]) #创建一个矩阵
print (vector)
print (matrix)

#运行结果
'''
[10 18 10 90] [[ 1 2 32] [ 3 4 23]] '''

###################################################################
#文件的属性 _.shape
vector = numpy.array([10, 18, 10, 90])
print (vector.shape)#数据中元素的个数

matrix = numpy.matrix([[1, 2, 32], [3, 4, 23]])
print (matrix.shape)#矩阵有几行几列

#运行结果
'''
(4,)
(2, 3)
'''



3.基本操作
import numpy

###################################################################
#逻辑判断
vector = numpy.array([10, 18, 10, 90])
indexs = (vector == 10)#创建一个索引值
num = vector[indexs]#1.注意逻辑判断是两个等号“==”,2.它是对每个数组的每个数要做一次判断
print (indexs)
print (num)

'''
[ True False True False] [10 10] '''

###################################################################
#逻辑关系 与或关系 "& |"
vector = numpy.array([10, 18, 10, 90])
judges = (vector == 10) & (vector == 5)
print (judges)

#输出
'''
[False False False False] '''
judge2 = (vector == 10) | (vector == 5)
print (judge2)

#输出
'''
[ True False True False] '''

###################################################################
#类型转换
vector = numpy.array(['10', '18', '10', '90'])
print (vector.dtype)
print (vector)

vector = vector.astype(float)
print (vector.dtype)
print (vector)

#输出
'''
<U2
['10' '18' '10' '90'] float64
[10. 18. 10. 90.] '''

###################################################################
#求最值
vector = numpy.array([10, 18, 10, 90])
print (vector)
print (["min"] + [vector.min()])
print (["max"] + [vector.max()])

#输出
'''[10 18 10 90] ['min', 10] ['max', 90] '''

###################################################################
#按行按列求和
matrix = numpy.array([[10, 18, 10, 90], [34, 45, 12, 21], [12, 21, 45, 78]])
print (matrix)
sumhang = matrix.sum(axis=1)
sumlie = matrix.sum(axis=0)
print (["各行的和"] + [sumhang])
print (["各列的和"] + [sumlie])

#输出
'''
[[10 18 10 90] [34 45 12 21] [12 21 45 78]] ['各行的和', array([128, 112, 156])] ['各列的和', array([ 56, 84, 67, 189])] '''



4.矩阵性质
import numpy

###################################################################
#产生随机向量和矩阵,以及其相关属性
vector = numpy.arange(10)#产生10个随机数字--数组
matrix = numpy.arange(10).reshape(2,5)#产生10个随机数字,并且变为2X5的矩阵
print (vector)
print (end="\n")
print (matrix)
print (end="\n")
print (matrix.shape)#矩阵的大小几X几的矩阵
print (end="\n")
print (matrix.dtype.name)#矩阵的元素的类型
print (end="\n")
print (matrix.size)#矩阵的元素个数
print (end="\n")
print (matrix.ndim)#矩阵的维度
print (end="\n")

#输出

'''
[0 1 2 3 4 5 6 7 8 9] [[0 1 2 3 4] [5 6 7 8 9]]

(2, 5)

int32

10

2
'''



5.矩阵的操作
import numpy

###################################################################
#矩阵的基本操作

#产生0矩阵
matrix0 = numpy.zeros ((1,2,5))#产生1个2X5的零矩阵,默认为float格式
#产生一个1矩阵
matrix1 = numpy.ones ((2,2,5),dtype = numpy.int32)#产生2个2X5的1矩阵
#arange的使用
arn = numpy.arange (1, 9, 3)
arn1 = numpy.arange (14).reshape(2, 7)
#random的使用
randomm = numpy.random.random((2, 4))
#linspace的使用,指定一个区间值
lines = numpy.linspace (1, 30, 15)
print (matrix0)
print (end="\n")
print (matrix1)
print (end="\n")
print (arn)
print (arn1)
print (end="\n")
print (randomm)
print (end="\n")
print (lines)
print (end="\n")

#输出
'''
[[[0. 0. 0. 0. 0.] [0. 0. 0. 0. 0.]]] [[[1 1 1 1 1] [1 1 1 1 1]]

[[1 1 1 1 1] [1 1 1 1 1]]] [1 4 7] [[ 0 1 2 3 4 5 6] [ 7 8 9 10 11 12 13]] [[0.06204554 0.35225778 0.06455726 0.63771864] [0.4408882 0.23106225 0.52697989 0.1103244 ]] [ 1. 3.07142857 5.14285714 7.21428571 9.28571429 11.35714286
13.42857143 15.5 17.57142857 19.64285714 21.71428571 23.78571429
25.85714286 27.92857143 30. ] '''



5.基本函数介绍
import numpy

###################################################################
#一些基本函数
#numpy.exp() 求e的次方
#numpy.sqrt() 求根号
#numpy.floor() 取整
#numpy.ravel() 把矩阵变为向量
#numpy.vstask(a,b) 把a,b两个矩阵拼接
#numpy.ravel() 把矩阵变为向量



作者:ImmOtall

相关推荐

Vue 中 template 有且只能一个 root的原因解析(源码分析)

Vue computed 计算属性代码实例

JavaScript代码压缩工具UglifyJS和Google Closure Compiler的基本用法

Python使用sqlite3模块内置数据库