import numpy as np

#创建数组(给array函数传递Python序列对象)
a = np.array([1,2,3,4,5])
b = np.array((1,2,3,4,5,6))
c = np.array([ [1,2,3,4,5], [6,7,8,9,10] ]) #数组的大小用shape属性获得
print(type(a), a.shape, a, '\n')
print(type(b), b.shape, b,'\n')
print(type(c),c.shape, c,'\n') #改变数组的shape属性,改变自身元素排列
c.shape = 2, 5
print(c.shape, c) c.shape = 10, -1
print(c.shape, c) #通过reshape改变数组排序,赋值给新数组,但是共享同一块内存
d = b.reshape((2,3))
print(d.shape, d)
b[1]=100
print(b,d) 输出:

<class 'numpy.ndarray'> (5,) [1 2 3 4 5]

<class 'numpy.ndarray'> (6,) [1 2 3 4 5 6]

<class 'numpy.ndarray'> (2, 5) [[ 1 2 3 4 5]
[ 6 7 8 9 10]]

(2, 5) [[ 1 2 3 4 5]
[ 6 7 8 9 10]]
(10, 1) [[ 1]
[ 2]
[ 3]
[ 4]
[ 5]
[ 6]
[ 7]
[ 8]
[ 9]
[10]]
(2, 3) [[1 2 3]
[4 5 6]]
[ 1 100 3 4 5 6] [[ 1 100 3]
[ 4 5 6]]

import numpy as np

#创建数组(通过numpy函数)
a = np.arange(0, 1, 0.1) #不包括终值
b = np.linspace(0, 1, 10) #包括终值,等差10个数
c = np.logspace(0, 2, 10) #从1到100,等比10个数 s = "abcdef"
d = np.fromstring(s, dtype=np.int8)
e = np.fromstring(s, dtype=np.int16)
print(a,'\n',b,'\n',c,'\n',d,'\n',e,'\n')

输出:

[ 0. 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9]
[ 0. 0.11111111 0.22222222 0.33333333 0.44444444 0.55555556
0.66666667 0.77777778 0.88888889 1. ]
[ 1. 1.66810054 2.7825594 4.64158883 7.74263683
12.91549665 21.5443469 35.93813664 59.94842503 100. ]
[ 97 98 99 100 101 102]
[25185 25699 26213]

import numpy as np

#创建10个元素的一维数组
def func(i):
return i%4+1 print ( np.fromfunction(func,(10,)) )

输出:

[ 1.  2.  3.  4.  1.  2.  3.  4.  1.  2.]

import numpy as np

def func(i,j):
return (i + 1) * (j + 1) print(np.fromfunction(func, (9,9)))

输出:

[[ 1. 2. 3. 4. 5. 6. 7. 8. 9.]
[ 2. 4. 6. 8. 10. 12. 14. 16. 18.]
[ 3. 6. 9. 12. 15. 18. 21. 24. 27.]
[ 4. 8. 12. 16. 20. 24. 28. 32. 36.]
[ 5. 10. 15. 20. 25. 30. 35. 40. 45.]
[ 6. 12. 18. 24. 30. 36. 42. 48. 54.]
[ 7. 14. 21. 28. 35. 42. 49. 56. 63.]
[ 8. 16. 24. 32. 40. 48. 56. 64. 72.]
[ 9. 18. 27. 36. 45. 54. 63. 72. 81.]]


ndim:维度,shape:(行数,列数),size:元素总个数 dtype:指定数据类型

# -*- coding: utf-8 -*-
import numpy as np matrix = np.array([[1,2,3], [4,5,6]]) #矩阵
print("dim; ",matrix.ndim)
print("shape: ",matrix.shape)
print("size: ",matrix.size) list1 = np.array([1,2,3,4],dtype=np.int32)
print("list1 dtype: ",list1.dtype) list2 = np.array([1,2,3,4])
print("list2 dtype: ",list2.dtype) list3 = np.array([1,2,3,4],dtype=np.float)
print("list3 dtype: ",list3.dtype) list4 = np.array([1,2,3,4],dtype=np.float32)
print("list4 dtype: ",list4.dtype) list5 = np.ones((3,4),dtype=np.int)
print("list5: ",list5) list6 = np.empty((3,4))
print("list6: ",list6) list7 = np.arange(5,15).reshape((2,5))
print("list7: ",list7) list8 = np.linspace(1,11,10)
print("list8: ",list8)

输出;

dim; 2
shape: (2, 3)
size: 6
list1 dtype: int32
list2 dtype: int32
list3 dtype: float64
list4 dtype: float32
list5: [[1 1 1 1]
[1 1 1 1]
[1 1 1 1]]
list6: [[ 6.95332630e-310 1.69118108e-306 2.04722549e-306 1.29061142e-306]
[ 2.22522597e-306 1.33511969e-306 1.29061753e-306 1.11261027e-306]
[ 9.34609790e-307 1.11260619e-306 1.42410974e-306 8.34449381e-308]]
list7: [[ 5 6 7 8 9]
[10 11 12 13 14]]
list8: [ 1. 2.11111111 3.22222222 4.33333333 5.44444444
6.55555556 7.66666667 8.77777778 9.88888889 11. ]

# -*- coding: utf-8 -*-
import numpy as np a = np.arange(5)
b = np.array([1,2,3,4,5]) print("a: ",a)
print("b: ",b)
addc = a + b
print("add: ", addc) minusc = a -b
print("minus: ",minusc) timec = a * b
print("times: ",timec) squc = a**2
print("square: ",squc) sinc = 10 * np.sin(a)
print("sin: ",sinc) print("compare: ",a<3) matrix1 = np.array([[1,2,3,4],[5,6,7,8]])
matrix2 = np.arange(8).reshape((4,2))
print("matrix *: ",np.dot(matrix1,matrix2))
print("matrix *",matrix1.dot(matrix2)) suiji = np.random.random((2,4))
print("suiji: ",suiji)
print("max: ",np.max(suiji))
print("min: ",np.min(suiji))
print("sum: ",np.sum(suiji))
print("col: ",np.min(suiji,axis=0))
print("row: ",np.max(suiji,axis=1))

a: [0 1 2 3 4]
b: [1 2 3 4 5]
add: [1 3 5 7 9]
minus: [-1 -1 -1 -1 -1]
times: [ 0 2 6 12 20]
square: [ 0 1 4 9 16]
sin: [ 0. 8.41470985 9.09297427 1.41120008 -7.56802495]
compare: [ True True True False False]
matrix *: [[ 40 50]
[ 88 114]]
matrix * [[ 40 50]
[ 88 114]]
suiji: [[ 0.79302826 0.02704441 0.19401082 0.02216562]
[ 0.66149996 0.77353779 0.66565688 0.53205038]]
max: 0.793028259974
min: 0.0221656169264
sum: 3.66899411306
col: [ 0.66149996 0.02704441 0.19401082 0.02216562]
row: [ 0.79302826 0.77353779]

numpy---one的更多相关文章

  1. 利用Python进行数据分析(5) NumPy基础: ndarray索引和切片

    概念理解 索引即通过一个无符号整数值获取数组里的值. 切片即对数组里某个片段的描述. 一维数组 一维数组的索引 一维数组的索引和Python列表的功能类似: 一维数组的切片 一维数组的切片语法格式为a ...

  2. 利用Python进行数据分析(4) NumPy基础: ndarray简单介绍

    一.NumPy 是什么 NumPy 是 Python 科学计算的基础包,它专为进行严格的数字处理而产生.在之前的随笔里已有更加详细的介绍,这里不再赘述. 利用 Python 进行数据分析(一)简单介绍 ...

  3. 利用Python进行数据分析(6) NumPy基础: 矢量计算

    矢量化指的是用数组表达式代替循环来操作数组里的每个元素. NumPy提供的通用函数(既ufunc函数)是一种对ndarray中的数据进行元素级别运算的函数. 例如,square函数计算各元素的平方,r ...

  4. python安装numpy、scipy和matplotlib等whl包的方法

    最近装了python和PyCharm开发环境,但是在安装numpy和matplotlib等包时出现了问题,现总结一下在windows平台下的安装方法. 由于现在找不到了工具包新版本的exe文件,所以采 ...

  5. 深入理解numpy

    一.为啥需要numpy python虽然说注重优雅简洁,但它终究是需要考虑效率的.别说运行速度不是瓶颈,在科学计算中运行速度就是瓶颈. python的列表,跟java一样,其实只是一维列表.一维列表相 ...

  6. Python Numpy,Pandas基础笔记

    Numpy Numpy是python的一个库.支持维度数组与矩阵计算并提供大量的数学函数库. arr = np.array([[1.2,1.3,1.4],[1.5,1.6,1.7]])#创建ndarr ...

  7. broadcasting Theano vs. Numpy

    broadcasting Theano vs. Numpy broadcast mechanism allows a scalar may be added to a matrix, a vector ...

  8. python之numpy

    一.矩阵的拼接合并 列拼接:np.column_stack() >>> import numpy as np >>> a = np.arange(9).reshap ...

  9. win7系统下python安装numpy,matplotlib,scipy和scikit-learn

    1.安装numpy,matplotlib,scipy和scikit-learn win7系统下直接采用pip或者下载源文件进行安装numpy,matplotlib,scipy时会遇到各种问题,这是因为 ...

  10. 给numpy矩阵添加一列

    问题的定义: 首先我们有一个数据是一个mn的numpy矩阵现在我们希望能够进行给他加上一列变成一个m(n+1)的矩阵 import numpy as np a = np.array([[1,2,3], ...

随机推荐

  1. RabbitMQ 入门指南——安装

    RabbitMQ好文 Rabbitmq Java Client Api详解 tohxyblog-博客园-rabbitMQ教程系列 robertohuang-CSDN-rabbitMQ教程系列 Rabb ...

  2. git如何跨分支查找某个commit所属分支?

    答: git branch -a --contains <commit id>

  3. shell中的变量a=100, 什么时候作整数使用, 什么时候作字符串使用呢?

    shell中的变量a=100, 什么时候作整数使用, 什么时候作字符串使用呢? 这确实是一个困扰很久的一个问题? how it can be an issue? 事实上, 在shell中, 你可以认为 ...

  4. Docker 搭建Spark 依赖sequenceiq/spark:1.6镜像

    使用Docker-Hub中Spark排行最高的sequenceiq/spark:1.6.0. 操作: 拉取镜像: [root@localhost home]# docker pull sequence ...

  5. Print a file's last modified date in Bash

    date -r <filename> #!/usr/bin/env bash for i in /var/log/*.out; do stat -f "%Sm" -t ...

  6. Sql Ado.net 学习笔记之连接字符串

    https://www.cnblogs.com/heng95/p/5902019.html 连接字符串 SQL Client .net数据提供程序在连接到数据库时极其灵活,它提供了多种用以生成连接字符 ...

  7. (转)awesome-text-summarization

    awesome-text-summarization 2018-07-19 10:45:13 A curated list of resources dedicated to text summari ...

  8. 多线程tips(面试常用)

    描述线程和进程的区别? 我们运行一个exe,就是一个进程实例,系统中有很多个进程.每一个进程都有自己的内存地址空间,每个地址相当于一个独立的边界,有自己独占的资源,进程之间不能共享代码和数据空间.(可 ...

  9. matplotlib python

    #导入包 import matplotlib.pyplot as plt import numpy as np # 从[-1,1]中等距去50个数作为x的取值 x = np.linspace(-1, ...

  10. Lintcode214-Max of Array-Naive

    Given an array with couple of float numbers. Return the max value of them. Example Example 1: Input: ...