Python数据分析numpy数组的3种创建方式

目录
  • 一、使用列表创建numpy数组
    • 1 使用numpy创建一维数组
    • 2 使用numpy创建二维数组
    • 3 使用numpy创建一维数组,源为不同数据类型的列表
  • 二、通过读取图片创建多维numpy数组
    • 1 将图片信息读取到numpy数组中
    • 2 在jupyter中读取图片数据后并显示
    • 3 对图片数组数据处理
  • 三、通过指定函数生成numpy数组
    • 1 生成多维数组
    • 2 生成一维线性数组
    • 3 生成一维等差数列
    • 4 生成随机的多维数组

一、使用列表创建numpy数组

1 使用numpy创建一维数组

2 使用numpy创建二维数组

3 使用numpy创建一维数组,源为不同数据类型的列表

如下,源虽然是不同类型的元素的列表,但是创建numpy对象后,都转换为字符串类型,类型的优先级是:字符串 > 浮点数 > 整数

二、通过读取图片创建多维numpy数组

1 将图片信息读取到numpy数组中

首先在jupyter根目录中上传了一张"100.png"的图片,然后使用如下代码即可读取

import matplotlib.pyplot as plt
img_arr=plt.imread("./100.png")

回显如下:

array([[[1., 1., 1., 1.],
[1., 1., 1., 1.],
[1., 1., 1., 1.],
...,
[1., 1., 1., 1.],
[1., 1., 1., 1.],
[1., 1., 1., 1.]],

[[1., 1., 1., 1.],
[1., 1., 1., 1.],
[1., 1., 1., 1.],
...,
[1., 1., 1., 1.],
[1., 1., 1., 1.],
[1., 1., 1., 1.]],

[[1., 1., 1., 1.],
[1., 1., 1., 1.],
[1., 1., 1., 1.],
...,
[1., 1., 1., 1.],
[1., 1., 1., 1.],
[1., 1., 1., 1.]],

...,

[[1., 1., 1., 1.],
[1., 1., 1., 1.],
[1., 1., 1., 1.],
...,
[1., 1., 1., 1.],
[1., 1., 1., 1.],
[1., 1., 1., 1.]],

[[1., 1., 1., 1.],
[1., 1., 1., 1.],
[1., 1., 1., 1.],
...,
[1., 1., 1., 1.],
[1., 1., 1., 1.],
[1., 1., 1., 1.]],

[[1., 1., 1., 1.],
[1., 1., 1., 1.],
[1., 1., 1., 1.],
...,
[1., 1., 1., 1.],
[1., 1., 1., 1.],
[1., 1., 1., 1.]]], dtype=float32)

2 在jupyter中读取图片数据后并显示

3 对图片数组数据处理

对数组中每个元素减0.1,图像已经发生了变化

三、通过指定函数生成numpy数组

1 生成多维数组

2 生成一维线性数组

3 生成一维等差数列

4 生成随机的多维数组

到此这篇关于Python数据分析numpy数组的3种创建方式的文章就介绍到这了,更多相关Python numpy数组创建内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • 详解python如何通过numpy数组处理图像

    如图,以该猫咪图片为例(忽略水印).将该文件命名为cat.jpg,并对其展开以下操作. 使用PIL库进行灰度处理 from PIL import Image import numpy as np # 读取图像,并转化为数组 im = np.array(Image.open("cat.jpg")) # 灰度处理公式 gray_narry = np.array([0.299, 0.587, 0.114]) x = np.dot(im, gray_narry) # 数组转图片 gray_ca

  • Python多进程共享numpy 数组的方法

    为什么要用numpy Python中提供了list容器,可以当作数组使用.但列表中的元素可以是任何对象,因此列表中保存的是对象的指针,这样一来,为了保存一个简单的列表[1,2,3].就需要三个指针和三个整数对象.对于数值运算来说,这种结构显然不够高效.     Python虽然也提供了array模块,但其只支持一维数组,不支持多维数组(在TensorFlow里面偏向于矩阵理解),也没有各种运算函数.因而不适合数值运算.     NumPy的出现弥补了这些不足. 引用:https://zhuanl

  • python中sqllite插入numpy数组到数据库的实现方法

    sqllite里面并没有与numpy的array类型对应的数据类型,通常我们都需要将数组转换为text之后再插入到数据库中,或者以blob类型来存储数组数据,除此之外我们还有另一种方法,能够让我们直接以array来插入和查询数据,实现代码如下 import sqlite3 import numpy as np import io def adapt_array(arr): out = io.BytesIO() np.save(out, arr) out.seek(0) return sqlite

  • Python中numpy数组的计算与转置详解

    目录 前言 1.numpy数组与数的运算 2.numpy相同尺寸的数组运算 3.numpy不同尺寸的数组计算 4.numpy数组的转置 总结: 前言 本文主要讲述numpy数组的计算与转置,讲相同尺寸数组的运算与不同尺寸数组的运算,同时介绍数组转置的三种方法. numpy数组的操作比较枯燥,但是都很实用,在很多机器学习.深度学习算法中都会使用到,对numpy数组的一些操作. 1.numpy数组与数的运算 主要包括数组与数的加减乘除运算,废话不多说,看代码: import numpy as np

  • python中numpy数组与list相互转换实例方法

    python的使用之所以方便,原因之一就是各种数据类型各样轻松的转换,例如numpy数组和list的相互转换,只需要函数方法的使用就可以处理.numpy数组使用numpy中的array()函数转换为list,list转使用tolist()方法转换为numpy数组,本文将向大家演示相互转换的过程. 1.numpy数组转list:使用numpy中的array()函数 np.array(a) array([ 3.234, 34. , 3.777, 6.33 ]) #转换后,可进行np.array的方法

  • python中的Numpy二维数组遍历与二维数组切片后遍历效率比较

    在python-numpy使用中,可以用双层 for循环对数组元素进行访问,也可以切片成每一行后进行一维数组的遍历. 代码如下: import numpy as np import time NUM = 160 a=np.random.random((NUM,NUM)) start = time.time() for i in range(NUM):     for j in range(NUM):         if a[i][j] == 1.0:             pass end1

  • python 将numpy维度不同的数组相加相乘操作

    第一种 np矩阵可以直接与标量运算 >>>import numpy as np >>>arr1 = np.arange(12).reshape([2,2,3]) >>>arr1 array([[[ 0, 1, 2], [ 3, 4, 5]], [[ 6, 7, 8], [ 9, 10, 11]]]) >>>arr1*5 array([[[ 0, 5, 10], [15, 20, 25]], [[30, 35, 40], [45, 50

  • python numpy.power()数组元素求n次方案例

    如下所示: numpy.power(x1, x2) 数组的元素分别求n次方.x2可以是数字,也可以是数组,但是x1和x2的列数要相同. >>> x1 = range(6) >>> x1 [0, 1, 2, 3, 4, 5] >>> np.power(x1, 3) array([ 0, 1, 8, 27, 64, 125]) >>> x2 = [1.0, 2.0, 3.0, 3.0, 2.0, 1.0] >>> np.

  • Python中的 Numpy 数组形状改变及索引切片

    目录 1.改变数组形状 2.索引和切片 1.改变数组形状 数组的shape属性返回一个元组,包括维度以及每个轴的元素数量,Numpy 还提供了一个reshape()方法,它可以改变数组的形状,返回一个新的数组. 例如: a = np.array([1,2,3,4,5,6,7,8]) 转换成二维数组: b = a.reshape((2,4)) 转换成三维数组: c = a.reshape((2,2,2)) 但是需要注意的是,修改后的数组元素个数与原数组元素个数必须是一致的,不一致会报错. 例如执行

  • Python数据分析numpy数组的3种创建方式

    目录 一.使用列表创建numpy数组 1 使用numpy创建一维数组 2 使用numpy创建二维数组 3 使用numpy创建一维数组,源为不同数据类型的列表 二.通过读取图片创建多维numpy数组 1 将图片信息读取到numpy数组中 2 在jupyter中读取图片数据后并显示 3 对图片数组数据处理 三.通过指定函数生成numpy数组 1 生成多维数组 2 生成一维线性数组 3 生成一维等差数列 4 生成随机的多维数组 一.使用列表创建numpy数组 1 使用numpy创建一维数组 2 使用n

  • 浅谈numpy数组的几种排序方式

    简单介绍 NumPy系统是Python的一种开源的数组计算扩展.这种工具可用来存储和处理大型矩阵,比Python自身的嵌套列表(nested list structure)结构要高效的多(该结构也可以用来表示矩阵(matrix)). 创建数组 创建1维数组: data = np.array([1,3,4,8]) 查看数组维度 data.shape 查看数组类型 data.dtype 通过索引获取或修改数组元素 data[1] 获取元素 data[1] = 'a' 修改元素 创建二维数组 data

  • Python遍历numpy数组的实例

    在用python进行图像处理时,有时需要遍历numpy数组,下面是遍历数组的方法: [rows, cols] = num.shape for i in range(rows - 1): for j in range(cols-1): print(num[j, i]) 以上这篇Python遍历numpy数组的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们. 您可能感兴趣的文章: Python Numpy 数组的初始化和基本操作 python中numpy包使用教程之

  • Python替换NumPy数组中大于某个值的所有元素实例

    我有一个2D(二维) NumPy数组,并希望用255.0替换大于或等于阈值T的所有值.据我所知,最基础的方法是: shape = arr.shape result = np.zeros(shape) for x in range(0, shape[0]): for y in range(0, shape[1]): if arr[x, y] >= T: result[x, y] = 255 有更简洁和pythonic的方式来做到这一点吗? 有没有更快(可能不那么简洁和/或不那么pythonic)的

  • Python数据分析 Numpy 的使用方法

    目录 简介 多维数组创建 数组的数据类型 数组维度 简介 使用 Python 进行数据分析时,比较常用的库有 Numpy.Pandas.Matplotlib,本篇文章就来说一下 Numpy 的使用方法,编辑器就使用上篇文章说过的 Jupyter. Numpy 是一个Python扩展库,专门做科学计算,也是大部分 Python 科学计算库的基础,Numpy 提供了多维数组对象 ndarray,它是一系列同类型数据的集合,可以进行索引.切片.迭代等操作. 我们可以使用以下命令进行安装: pip in

  • Python数据分析Numpy中常用相关性函数

    目录 摘要: 一.股票相关性分析 二.多项式 三.求极值的知识 摘要: NumPy中包含大量的函数,这些函数的设计初衷是能更方便地使用,掌握解这些函数,可以提升自己的工作效率.这些函数包括数组元素的选取和多项式运算等.下面通过实例进行详细了解. 前述通过对某公司股票的收盘价的分析,了解了某些Numpy的一些函数.通常实际中,某公司的股价被另外一家公司的股价紧紧跟随,它们可能是同领域的竞争对手,也可能是同一公司下的不同的子公司.可能因两家公司经营的业务类型相同,面临同样的挑战,需要相同的原料和资源

  • python数据分析Numpy库的常用操作

    numpy库的引入: import numpy as np 1.numpy对象基础属性的查询 lst = [[1, 2, 3], [4, 5, 6]] def numpy_type(): print(type(lst)) data = np.array(lst, dtype=np.float64) # array将数组转为numpy的数组 # bool,int,int8,int16,int32,int64,int128,uint8,uint32, # uint64,uint128,float16

  • 基于Python中numpy数组的合并实例讲解

    Python中numpy数组的合并有很多方法,如 - np.append() - np.concatenate() - np.stack() - np.hstack() - np.vstack() - np.dstack() 其中最泛用的是第一个和第二个.第一个可读性好,比较灵活,但是占内存大.第二个则没有内存占用大的问题. 方法一--append parameters introduction arr 待合并的数组的复制(特别主页是复制,所以要多耗费很多内存) values 用来合并到上述数组

  • Python之字典对象的几种创建方法

    第一种方式:使用{} firstDict = {"name": "wang yuan wai ", "age" : 25} 说明:{}为创建一个空的字典对象 第二种方式:使用fromkeys()方法 second_dict = dict.fromkeys(("name", "age")) #value使用默认的None,也可以指定value值 说明:fromkeys()是dict类的一个staticmeth

随机推荐