Numpy API整理大全

熬夜整理Numpy知识点 1 NumPy 介绍 1.1 什么是 NumPy? NumPy是Python中科学计算的基础包。它是一个Python库,提供多维数组对象,各种派生对象(如掩码数组和矩阵),以及用于数组快速操作的各种API,有包括数学、逻辑、形状操作、排序、选择、输入输出、离散傅立叶变换、基本线性代数,基本统计运算和随机模拟等等。 NumPy包的核心是 ndarray 对象。它封装了python原生的同数据类型的 n 维数组,为了保证其性能优良,其中有许多操作都是代码在本地进行编译后执行的。 NumPy数组 和 原生Pyt 阅读详情

Numpy API整理大全

ndarray数组

用np.ndarray类的对象表示n维数组

import numpy as np
ary = np.array([1, 2, 3, 4, 5, 6])
print(type(ary))

ndarray数组对象的创建

np.array(任何可被解释为Numpy数组的逻辑结构)

import numpy as np
a = np.array([1, 2, 3, 4, 5, 6])
print(a)

np.arange(起始值(0),终止值,步长(1))

import numpy as np
a = np.arange(0, 5, 1) 
print(a)
b = np.arange(0, 10, 2)
print(b)

np.zeros(数组元素个数, dtype=‘类型’(整数的还是浮点数,还可以是布尔型))

import numpy as np
a = np.zeros(10)
print(a)
out:[0. 0. 0. 0. 0. 0. 0. 0. 0. 0.]

np.ones(数组元素个数, dtype=‘类型’)

import numpy as np
a = np.ones((2,3))
print(a)
out: [[1. 1. 1.]
      [1. 1. 1.]]

np.zeros_like(数组)
用零填充这个数组

import numpy as np
a = [[1. 1. 1.]
      [1. 1. 1.]]
b = np.zeros_like(a)
print(a)

np.ones_like(数组)
用一填充这个数组

import numpy as np
a = [[1. 1. 1.]
      [1. 1. 1.]]
b = np.ones_like(a)

1. ndarray对象属性的基本操作

数组的维度:

np.ndarray.shape

import numpy as np
ary = np.array([1, 2, 3, 4, 5, 6])
print(type(ary), ary, ary.shape)
ary.shape = (2,3) # 将数组的维度改为两行三列
#二维数组
ary = np.array([
    [1,2,3,4],
    [5,6,7,8]
])
print(type(ary), ary, ary.shape)
out:
<class 'numpy.ndarray'> [1 2 3 4 5 6] (6,)
<class 'numpy.ndarray'> [[1 2 3 4]
 [5 6 7 8]] (2, 4)

元素的类型

np.ndarray.dtype
错误的修改数据类型的方法

a.dtype = 'float32'

这样强制转化会导致数字错误
正确的修改数据类型的方法:

import numpy as np
ary = np.array([1, 2, 3, 4, 5, 6])
print(type(ary), ary, ary.dtype)
#转换ary元素的类型
b = ary.astype(float)
print(type(b), b, b.dtype)
#转换ary元素的类型
c = ary.astype(str)
print(type(c), c, c.dtype)

注: a.astype(float) 这样a并没有变化,想要得到转换后的数组应该用另一个变量去保存他

数组元素的个数:

np.ndarray.size

import numpy as np
ary = np.array([
    [1,2,3,4],
    [5,6,7,8]
])
#观察维度,size,len的区别
print(ary.shape, ary.size, len(ary))

数组元素索引(下标)

数组对象[..., 页号, 行号, 列号]

下标从0开始,到数组len-1结束。

import numpy as np
a = np.array([[[1, 2],
               [3, 4]],
              [[5, 6],
               [7, 8]]])
print(a, a.shape)
print(a[0])
print(a[0][0])
print(a[0][0][0])
print(a[0, 1, 0]) # 第0行第1列第0个元素 
for i in range(a.shape[0]):
    for j in range(a.shape[1]):
        for k in range(a.shape[2]):
            print(a[i, j, k])

2. ndarray对象属性操作详解

Numpy的内部基本数据类型

类型名类型表示符
布尔型bool_
有符号整数型int8(-128~127)/int16/int32/int64
无符号整数型uint8(0~255)/uint16/uint32/uint64
浮点型float16/float32/float64
复数型complex64/complex128
字串型str_,每个字符用32位Unicode编码表示

自定义复合类型

为什么要自定义复合类型?
因为numpy是同质数组,所以如果有复杂数据类型的时候就不能将其全部放在数组当中。
当有些数据类型比较复杂的时候就把这些数据包装成一个整体,然后就数据存储到这个整体当中,就类似于面向对象的思想,把一个整体当中的数据类型封装一下放到一个元组中当成一个对象来看待

# 自定义复合类型
import numpy as np

data=[
	('zs', [90, 80, 85], 15),
	('ls', [92, 81, 83], 16),
	('ww', [95, 85, 95], 15)
]
#第一种设置dtype的方式
a = np.array(data, dtype='U3, 3int32, int32')
print(a)
print(a[0]['f0'], ":", a[1]['f1'])
print("=====================================")
#第二种设置dtype的方式,给没种数据其个名字。
#可以通过名字来访问
b = np.array(data, dtype=[('name', 'str_', 2),
                    ('scores', 'int32', 3),
                    ('ages', 'int32', 1)])
print(b[0]['name'], ":", b[0]['scores'])
print("=====================================")

#第三种设置dtype的方式
c = np.array(data, dtype={'names': ['name', 'scores', 'ages'],
                    'formats': ['U3', '3int32', 'int32']})
print(c[0]['name'], ":", c[0]['scores'], ":", c.itemsize)
print("=====================================")

#第四种设置dtype的方式  
d = np.array(data, dtype={'names': ('U3', 0),
                    'scores': ('3i4', 16),
                    'ages': ('i4', 28)})
print(d[0]['names'], d[0]['scores'], d.itemsize)
# 字符类型后面的数字是输出字段时的字节偏移量
print("=====================================")

#第五种设置dtype的方式
e = np.array([0x1234, 0x5667],
             dtype=('u2', {'lowc': ('u1', 0),
                            'hignc': ('u1', 1)}))
print('%x' % e[0])
print('%x %x' % (e['lowc'][0], e['hignc'][0]))

print("=====================================")
#测试日期类型数组
f = np.array(['2011', '2012-01-01', '2013-01-01 01:01:01','2011-02-01'])
# 转换数据类型 D天 s秒 (精确到)
f = f.astype('M8[D]')
print(f)
f = f.astype('int32')
print(f)
print(f[3]-f[0])
out:
['2011-01-01' '2012-01-01' '2013-01-01' '2011-02-01']
[14975 15340 15706 15006]
31
print("=====================================")
a = np.array([[1 + 1j, 2 + 4j, 3 + 7j],
              [4 + 2j, 5 + 5j, 6 + 8j],
              [7 + 3j, 8 + 6j, 9 + 9j]])
print(a.T)

for x in a.flat:
	print(x.imag)

类型字符码

类型字符码
np.bool_?
np.int8/16/32/64i1/i2/i4/i8
np.uint8/16/32/64u1/u2/u4/u8
np.float/16/32/64f2/f4/f8
np.complex64/128c8/c16
np.str_U<字符数>
np.datetime64M8[Y] M8[M] M8[D] M8[h] M8[m] M8[s]

字节序前缀,用于多字节整数和字符串:
</>/[=]分别表示小端/大端/硬件字节序。

类型字符码格式

<字节序前缀><维度><类型><字节数或字符数>

3i4释义
3i4大端字节序,3个元素的一维数组,每个元素都是整型,每个整型元素占4个字节。
<(2,3)u8小端字节序,6个元素2行3列的二维数组,每个元素都是无符号整型,每个无符号整型元素占8个字节。
U7包含7个字符的Unicode字符串,每个字符占4个字节,采用默认字节序。

3. ndarray数组对象的维度操作

视图变维(数据共享): reshape() 与 ravel()

掉这个方法得到的数组和原数组用的数据是同一份
reshape()可以得到原数组的任意维度(前提是可以进行维度变换),rave1()就相当于把数组撑平

import numpy as np
a = np.arange(1, 9)
print(a)		# [1 2 3 4 5 6 7 8]
b = a.reshape(2, 4)	#视图变维  : 变为2行4列的二维数组
print(b)
c = b.reshape(2, 2, 2) #视图变维    变为2页2行2列的三维数组
print(c)
d = c.ravel()	#视图变维	变为1维数组
print(d)

复制变维(数据独立):flatten()

e = c.flatten()
print(e)
a += 10
print(a, e, sep='\n') # a变了  e还是e

就地变维:直接改变原数组对象的维度,不返回新数组

不需要新赋值,就是改变原有数组的维度

a.shape = (2, 4)
print(a)
a.resize(2, 2, 2)
print(a)

4. ndarray数组切片操作

#数组对象切片的参数设置与列表切面参数类似
#  步长+:默认切从首到尾
#  步长-:默认切从尾到首
数组对象[起始位置:终止位置:步长, ...]
#默认位置步长:1

一维数组的切片操作

import numpy as np
a = np.arange(1, 10)
print(a)  # 1 2 3 4 5 6 7 8 9
print(a[:3])  # 1 2 3
print(a[3:6])   # 4 5 6
print(a[6:])  # 7 8 9
print(a[::-1])  # 9 8 7 6 5 4 3 2 1
print(a[:-4:-1])  # 9 8 7
print(a[-4:-7:-1])  # 6 5 4
print(a[-7::-1])  # 3 2 1
print(a[::])  # 1 2 3 4 5 6 7 8 9
print(a[:])  # 1 2 3 4 5 6 7 8 9
print(a[::3])  # 1 4 7
print(a[1::3])  # 2 5 8
print(a[2::3])  # 3 6 9

多维数组的切片操作

import numpy as np
a = np.arange(1, 28)
a.resize(3,3,3)
print(a)
#切出1页 
print(a[1, :, :])		
#切出所有页的1行
print(a[:, 1, :])		
#切出0页的1行1列
print(a[0, :, 1])		

5. ndarray数组的掩码操作

import numpy as np
a = np.arange(1, 10)
mask = [True, False,True, False,True, False,True, False,True]
print(a[mask]) # [1 3 5 7 9]

运用: 求100以内3的倍数

import numpy as np
a = np.arange(1, 100)
# 输出100以内3的倍数
print(a[a % 3 == 0])

运用: 得到即是3 又是7的倍数的数
注:不能用and 要用&

import numpy as np
a = np.arange(1, 100)
# 输出100以内即是3又是7的倍数
mask = (a % 3 == 0) & (a% 7 == 0)
print(a[mask])

6. 多维数组的组合与拆分

垂直方向操作:

import numpy as np
a = np.arange(1, 7).reshape(2, 3)
b = np.arange(7, 13).reshape(2, 3)
# 垂直方向完成组合操作,生成新数组
c = np.vstack((a, b))
# 垂直方向完成拆分操作,生成两个数组
d, e = np.vsplit(c, 2)

水平方向操作:

import numpy as np
a = np.arange(1, 7).reshape(2, 3)
b = np.arange(7, 13).reshape(2, 3)
# 水平方向完成组合操作,生成新数组 
c = np.hstack((a, b))
# 水平方向完成拆分操作,生成两个数组
d, e = np.hsplit(c, 2)

深度方向操作:(3维)

import numpy as np
a = np.arange(1, 7).reshape(2, 3)
b = np.arange(7, 13).reshape(2, 3)
# 深度方向(3维)完成组合操作,生成新数组
i = np.dstack((a, b))
# 深度方向(3维)完成拆分操作,生成两个数组
k, l = np.dsplit(i, 2)

多维数组组合与拆分的相关函数:

# 通过axis作为关键字参数指定组合的方向,取值如下:
# 若待组合的数组都是二维数组:
#	0: 垂直方向组合
#	1: 水平方向组合
# 若待组合的数组都是三维数组:
#	0: 垂直方向组合
#	1: 水平方向组合
#	2: 深度方向组合
np.concatenate((a, b), axis=0)
# 通过给出的数组与要拆分的份数,按照某个方向进行拆分,axis的取值同上
np.split(c, 2, axis=0)

长度不等的数组组合:

import numpy as np
a = np.array([1,2,3,4,5])
b = np.array([1,2,3,4])
# 填充b数组使其长度与a相同, 头部补0个元素,尾部补1个元素
b = np.pad(b, pad_width=(0, 1), mode='constant', constant_values=-1)
print(b)
# 垂直方向完成组合操作,生成新数组
c = np.vstack((a, b))
print(c)

简单的一维数组组合方案

a = np.arange(1,9)		#[1, 2, 3, 4, 5, 6, 7, 8]
b = np.arange(9,17)		#[9,10,11,12,13,14,15,16]
#把两个数组摞在一起成两行
c = np.row_stack((a, b))
print(c)
#把两个数组组合在一起成两列
d = np.column_stack((a, b))
print(d)

7. ndarray类的其他属性

  • shape - 维度
  • dtype - 元素类型
  • size - 元素数量
  • ndim - 维数,len(shape)
  • itemsize - 元素字节数
  • nbytes - 总字节数 = size x itemsize
  • real - 复数数组的实部数组
  • imag - 复数数组的虚部数组
  • T - 数组对象的转置视图
  • flat - 扁平迭代器
import numpy as np
a = np.array([[1 + 1j, 2 + 4j, 3 + 7j],
              [4 + 2j, 5 + 5j, 6 + 8j],
              [7 + 3j, 8 + 6j, 9 + 9j]])
print(a.shape)
print(a.dtype)
print(a.ndim)
print(a.size)
print(a.itemsize)
print(a.nbytes)
print(a.real, a.imag, sep='\n')
print(a.T)
print([elem for elem in a.flat])
b = a.tolist()
print(b)

8. 矢量化

矢量化指的是用数组代替标量来操作数组里的每个元素。

numpy提供了vectorize函数,可以把处理标量的函数矢量化,返回的函数可以直接处理ndarray数组。

import math as m
import numpy as np

def foo(x, y):
    return m.sqrt(x**2 + y**2)

x, y = 1, 4
print(foo(x, y))
X, Y = np.array([1, 2, 3]), np.array([4, 5, 6])
vectorized_foo = np.vectorize(foo)
print(vectorized_foo(X, Y))
print(np.vectorize(foo)(X, Y))

numpy还提供了frompyfunc函数,也可以完成与vectorize相同的功能:

# 把foo转换成矢量函数,该矢量函数接收2个参数,返回一个结果 
fun = np.frompyfunc(foo, 2, 1)
fun(X, Y)

案例:定义一种买进卖出策略,通过历史数据判断这种策略是否值得实施。

dates, opening_prices, highest_prices, \
    lowest_prices, closing_prices = np.loadtxt(
        '../../data/bhp.csv', delimiter=',',
        usecols=(1, 3, 4, 5, 6), unpack=True,
        dtype='M8[D], f8, f8, f8, f8',
        converters={1: dmy2ymd})
    
# 定义一种投资策略
def profit(opening_price, highest_price,
           lowest_price, closing_price):
    buying_price = opening_price * 0.99
    if lowest_price <= buying_price <= highest_price:
        return (closing_price - buying_price) * \
            100 / buying_price
    return np.nan  # 无效值

# 矢量化投资函数
profits = np.vectorize(profit)(opening_prices, 
       highest_prices, lowest_prices, closing_prices)
nan = np.isnan(profits)
dates, profits = dates[~nan], profits[~nan]
gain_dates, gain_profits = dates[profits > 0], profits[profits > 0]
loss_dates, loss_profits = dates[profits < 0], profits[profits < 0]
mp.figure('Trading Simulation', facecolor='lightgray')
mp.title('Trading Simulation', fontsize=20)
mp.xlabel('Date', fontsize=14)
mp.ylabel('Profit', fontsize=14)
ax = mp.gca()
ax.xaxis.set_major_locator(md.WeekdayLocator(byweekday=md.MO))
ax.xaxis.set_minor_locator(md.DayLocator())
ax.xaxis.set_major_formatter(md.DateFormatter('%d %b %Y'))
mp.tick_params(labelsize=10)
mp.grid(linestyle=':')
if dates.size > 0:
    dates = dates.astype(md.datetime.datetime)
    mp.plot(dates, profits, c='gray',
            label='Profit')
    mp.axhline(y=profits.mean(), linestyle='--',
               color='gray')
if gain_dates.size > 0:
    gain_dates = gain_dates.astype(md.datetime.datetime)
    mp.plot(gain_dates, gain_profits, 'o',
            c='orangered', label='Gain Profit')
    mp.axhline(y=gain_profits.mean(), linestyle='--',
               color='orangered')
if loss_dates.size > 0:
    loss_dates = loss_dates.astype(md.datetime.datetime)
    mp.plot(loss_dates, loss_profits, 'o',
            c='limegreen', label='Loss Profit')
    mp.axhline(y=loss_profits.mean(), linestyle='--',
               color='limegreen')
mp.legend()
mp.gcf().autofmt_xdate()
mp.show()

9. 加载文件

numpy提供了函数用于加载逻辑上可被解释为二维数组的文本文件,格式如下:

数据项1 <分隔符> 数据项2 <分隔符> ... <分隔符> 数据项n
例如:
AA,AA,AA,AA,AA
BB,BB,BB,BB,BB
...
或:
AA:AA:AA:AA:AA
BB:BB:BB:BB:BB
...

调用numpy.loadtxt()函数可以直接读取该文件并且获取ndarray数组对象:

import numpy as np
# 直接读取该文件并且获取ndarray数组对象 
# 返回值:
#     unpack=False:返回一个二维数组
#     unpack=True: 多个一维数组
np.loadtxt(
    '../aapl.csv',			# 文件路径
    delimiter=',',			# 分隔符
    usecols=(1, 3),			# 读取1、3两列 (下标从0开始)
    unpack=False,			# 是否按列拆包
    dtype='U10, f8',		# 制定返回每一列数组中元素的类型
    converters={1:func}		# 转换器函数字典
)    
数据处理代码整理 起因 因为要整理毕业数据,好多操作每次都当场搜,搜完忘,特地整理到这里,以后直接在这里检索 划分数据集 from sklearn import svm from sklearn.metrics import confusion_matrix from sklearn.model_selection import train_test_split # X, y 都是 pandas数据 X_train, X_test, y_train, y_test = train_test_split(X.values, 阅读详情

相关推荐

万字详解Python的numpy(一文弄懂)

NumPy是 Python 语言的一个扩展程序库,支持大量的维度数组与矩阵运算,也针对数组运算提供大量的数学函数库。NumPy 为开放源代码并且由许多协作者共同维护开发,是一个运行速度非常快的数学库,用于数组计算。NumPy 通常与 SciPy(Scientific Python)和 Matplotlib(绘图库)一起使用,可广泛用于替代 MatLab,是一个强大的科学计算环境,便于后期学习数据科学和者机器学习。

Saki_Python的博客 3781

Numpy常用API汇总

矩阵乘法a.dot(b),类型线代矩阵相乘,点积a.dot(a.T)也是同样算法。np.array(list),通过一个列表创建数据,可用dtype指定数据类型。返回结果有两组array结果,分别对应满足条件数据位置的行和列,一一对应的关系。四舍五入取整,np.round(a,b) a为np数组,b为保留的小数位数。np.concatenate,拼接。注意与torch.cat区别。筛选提取 np.where,返回各维度符合条件的index。向下取整 np.floor()向上取整 np.ceil()

wonui_的博客 373

U盘文件变exe?3步教你用火绒+批处理脚本恢复隐藏文档(附注册表修复)

本文详细解析了U盘文件被病毒隐藏并伪装成exe文件的原理,并提供了三步解决方案:首先使用火绒安全软件进行全盘查杀清除病毒;其次通过批处理脚本批量恢复被隐藏的文件属性;最后修复被篡改的注册表设置,彻底解决文件无法显示的问题,帮助用户安全找回数据并加固系统防护。

weixin_28622215的博客 919

【Python】numpy常用API整理汇总

本篇根据自己的实际应用筛选了一部分常用的numpy的API,如需了解更多内容,可以查阅官方文档。

兴趣使然的创作者 2282

“风色幻想XX:交错轨迹游戏卡顿:从解决d3dx9_xx.dll缺失开始——风色幻想XX优化指南

《风色幻想XX:交错轨迹》作为一款深受玩家喜爱的角色扮演游戏,以其丰富的剧情、独特的角色设定和精美的画面赢得了广泛的赞誉。然而,在游戏过程中,部分玩家可能会遇到游戏卡顿的问题,这不仅影响了游戏体验,还可能让玩家错失精彩的剧情和战斗瞬间。在众多导致游戏卡顿的因素中,d3dx9_xx.dll文件的缺失往往是一个不容忽视的原因。

czl922的博客 1259

DySAT+: Enhancing Dynamic Graph Representation Learning with Multi-Head Self-Attention and Temporal-

本文深入探讨了DySAT+模型在动态图表示学习中的创新应用,通过多头时空注意力机制和层级信息融合策略,有效解决了动态图数据中的时间维度信息捕捉和结构演变动态适应问题。该模型在社交网络异常检测和金融交易网络分析等场景中表现出色,显著提升了预测准确率和响应速度。

weixin_29035405的博客 336

Numpy常用API

目录 一、输入和输出 1.1 NumPy二进制文件(NPY,NPZ) 1.2 文本文件 1.3 正则表达式解析 1.4 原始二进制文件 1.5 内存映射文件 1.6 Base-n相关 1.7 数据源 ...

weixin_30782331的博客 247

Unity多渠道APK打包:同一工程稳定输出不冲突安装包

Android应用多渠道分发是移动开发的基础场景,其核心在于解决包名唯一性、渠道可识别性与构建可重复性三大问题。原理上,Unity安卓打包本质是三阶段流程:生成Android工程、Gradle编译、APK签名,而包名冲突根源在生成阶段对PlayerSettings的强依赖。技术价值体现在规避人工配置失误、支撑CI/CD自动化、满足华为/小米等商店合规要求。典型应用场景包括应用宝、TapTap、B站等渠道独立包管理,以及AB测试、灰度发布等运营需求。本文聚焦Unity原生方案,通过BuildPlayerOpt

weixin_33736048的博客 794

NumPy API详解大全(持续更新ing...)

NumPy API详解大全

诸神缄默不语的博客 1606

OpenCL编译环境配置

在 Linux 系统上配置 OpenCL 开发环境需要安装适当的驱动、运行时和开发工具。

深之JohnChen的专栏 2003

【unity小技巧】实现FPS射击游戏枪武器随镜头手臂摇摆效果(2025/12/11补充)

如果我们视角移动转向,武器如果不跟着进行摇摆,会感觉我们的动作很生硬,特别是射击类游戏,如下实现武器摇摆这里主要分享两种实现方法,一种是改变武器位置,一种是修改武器旋转想要使用哪种方法都可以,看你自己喜欢,如果是我,我会选择第二种,比较简单,参数也少,而且个人感觉效果也更好,已枪中心做旋转更符合现实。

向宇的博客,专注php/web全栈 unity游戏开发,欢迎大家评论纠错 1471

Python Numpy库Api整理

Python Numpy库Api整理 numpy快速初始化 np.array([1,2,3,4,5]) np.array([1,2,3],[4,5,6]) #创建二维数组 np.arange(15) np.arange(15).reshape(3, 5) #格式化成3行5列的数组 List转化为numpy数组 list = [i for i in range(0,100)] np.array(list) numpy数组运算 a=np.array([1,2,3,4,5]) b=np.array

laigengsong的博客 458

4.2 多智能体系统的严格隔离机制:防止上下文污染与隐私数据脱敏实战

本文探讨了多智能体系统中上下文信息共享带来的安全风险与解决方案。研究发现,随着Agent数量增加,上下文信息泄露概率呈指数级上升,可能导致跨Agent错误传播、隐私泄露等问题。文章提出分层隔离架构,将上下文划分为全局共享和本地私有两部分,并通过命名空间隔离、递归压缩和隐私过滤技术确保数据安全。技术实现上,建议为每个子Agent创建独立状态空间,采用原子化更新和读写锁控制避免状态竞争。隐私保护方面,结合正则匹配和命名实体识别技术进行敏感数据过滤,确保符合GDPR等法规要求。这些措施共同构建了可靠、安全且合规的

公众号:AI前沿侦探 228

numpy pandas matplotlib 常用API整理

python for ML

good_jiojio的博客 1472

Xilinx FPGA平台DDR3设计保姆式教程(1)DDR3基础简介

xilinx平台DDR3设计(1)DDR3简介 如果我们只是拿来用ddr搬砖,那么它就简单,知道IP怎么使用就好,但是要想知其所以然,理论知识是必备的,这也是我们初学者所欠缺的东西,慢慢修炼吧! 目录 一、DDR3简介 二、地址的概念及容量计算 三、重要给概念理解 3.2 列地址脉冲选通潜伏期 3.4 掩码 四、参考资料 一、DDR3简介 DDR3全称double-data-rate 3 synchronous dynamic RAM,即第三代双倍速率同步动态随机存储器。...

数字IC/FPGA杂货铺,找一找,或许有你想要的~ 1万+

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

【10000字pandas数据可视化超全笔记整理】Numpy Pandas | 常用API介绍 | 缺失值处理 matplotlib数据可视化介绍

概述和其它语言类似, Python内置了datetime对象,可以在datetime库中找到pandas的日期时间类型默认是 datetime64[ns]Matplotlib提供了两种方法来作图:**状态接口和面向对象导包方式# Matplotlib.pyplot 包含一系列绘图函数的相关函数创建画布方法plt.figure() 参数 figsize 画布大小方式1 : 状态接口# 1. 准备x轴 和 y轴的数据.x = [-3, 5, 7] # x轴坐标。

weixin_57336987的博客 1539

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

python numpy库作用_整理numpy库的常用功能(持续更新…),NumPy,函数,梳理

NumPy简介NumPy是Python中科学计算的基础包。它是一个Python库,提供多维数组对象,各种派生对象(如掩码数组和矩阵),以及用于数组快速操作的各种API,有包括数学、逻辑、形状操作、排序、选择、输入输出、离散傅立叶变换、基本线性代数,基本统计运算和随机模拟等等。NumPy包的核心是 ndarray 对象。它封装了python原生的同数据类型的 n 维数组,为了保证其性能优良,其中有许...

weixin_39945178的博客 7006

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

Numpy 学习看这一篇就够了(整理+理解+精简)

Numpy学习笔记 一、Numpy的介绍 1、NumPy简介 NumPy的全名为Numeric Python,是一个开源的Python科学计算库,它包括: 一个强大的N维数组对象ndrray; 比较成熟的(广播)函数库; 用于整合C/C++和Fortran代码的工具包; 实用的线性代数、傅里叶变换和随机数生成函数 2、NumPy的优点 对于同样的数值计算任务,使用NumPy要比直接编写Python代码便捷得多; NumPy中的数组的存储效率和输入输出性能均远远优于Python中等价的基本数据结构,且其能够

Ziwen_的博客 1854

Pytorch(Tensor)-Numpy(ndarrays) API对照表

Numpy与Torch API总结

Irving.Gao的博客 2558

机器学习中的numpy的array_机器学习- Numpy基础 吐血整理

Numpy是专门为数据科学或者数据处理相关的需求设计的一个高效的组件。听起来是不是挺绕口的,其实简单来说就2个方面,一是Numpy是专门处理数据的,二是Numpy在处理数据方面很牛逼(肯定比Python原生组件牛逼,否则也不会另外再来搞个Numpy了吧)。其实更加细化的来看其实Numpy最常用的就是矩阵(Matrix)的处理。如何有一点数据处理方面的经验的话,无论你每一条数据有多少个feature...

weixin_39798579的博客 237

【Python数据处理】Matplotlib&Numpy&Pandas常用API整理

在 NumPy 中,最重要的对象是ndarray,这是一个多维数组对象,用于存储元素为相同类型的集合。ndarray支持向量化操作,性能上要优于传统的 Python 列表。Pandas 支持累计统计函数,并允许自定义函数应用于数据。你可以使用apply()方法将自定义函数应用于Series或DataFrame。# 自定义函数应用到列上df3['Age_double'] = df3['Age'].apply(lambda x: x * 2) # 将 'Age' 列的值乘以 2。

uuzeray的博客 1575

十大Python库——NumPy

genfromtxt的唯一强制参数是数据的来源,它可以是一个字符串,一串字符串或一个生成器。**NO.**

aobulaien001的博客 1221

整理了3页完整的Numpy笔记,都是精华!

笔记精炼,只有3页,却从10个方面,总结NumPy主要的、常用的API,推荐给大家!注:此NumPy笔记中arr统一指numpy的Array对象。10个方面:1. 导入、导出2. 生成数...

lsxxx2011的专栏 128

Numpy学习

numpy是什么?常用方法?中文学习手册

ZrZrZr666666的博客 437

【Numpy学习】Numpy基础:数组和矢量计算

1.7 布尔型索引 来看这样一个例子,假设我们有一个用于存储数据的数组以及一个存储姓名的数组(含有重复项)。如果两个数组的维数不相同,则元素到元素的操作是不可能的。来看这样一个例子,假设我们有一个用于存储数据的数组以及一个存储姓名的数组(含有重复项)。注意:使用numpy.string_类型时,一定要小心,因为NumPy的字符串数据是大小固定的,发生截取时,不会发出警告。在多维数组中,如果省略了后面的索引,则返回对象会是一个维度低一点的ndarray(它含有高一级维度上的所有数据)。

gangyikeji的博客 1077

[基础库Numpy] 技能树总结:一篇文章学会Numpy库

Numpy库常用API简介 (1)创建数组 #构造法#特殊值法#随机数法#定长分割法#重复构造法#网格构造法 (2)操作数组 #索引和切片#结构的改变#合并与拆分#复制#排序#查找#筛选 #数组I/O (3)创建矩阵对象 #构造法#特殊值法 (4)操作矩阵对象 #矩阵变换#矩阵运算 (5)常用函数 #特殊值#函数的命名空间#数学函数#统计函数#一维线性插值#多项式拟合函数#自定义广播函数 (6)掩码数组 #创建掩码数组#访问数据#访问掩码#仅获取有效值#修改掩码#掩码数组操作

雾狼的游戏屋 965
上一篇: Pytorch学习笔记【2】 --创建tensor的N种姿势
下一篇: Pytorch学习笔记【3】 --tensor切片
AndSonder
博客等级 码龄7年 364粉丝 154原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值