Python numpy的简单操作(二)

本文介绍如何使用NumPy进行数组和矩阵的布尔判断、选择性更新及数学运算等操作,包括求和、类型转换等实用技巧。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

判断数组内元素返回布尔值,并取出返回值的元素

vec = numpy.array([5, 10, 15, 20])
vec == 10
equal = (vec == 10)
print equal
array([False,  True, False, False])
print(vec[equal])
[10]

判断矩阵内元素返回布尔值,并取出返回值的元素

matrix = numpy.array([
                [5, 10, 15], 
                [20, 25, 30],
                [35, 40, 45]
             ])
second_column_40 = (matrix[:,1] == 40)
print (second_column_40)
print(matrix[second_column_40, :])
[False False  True][[35 40 45]
second_column_40 = (matrix[:,1] == 40) 
代表了矩阵取所有行,并判断第一列等于40的值。
print(matrix[second_column_40, :])
代表了矩阵取40这一行所有列元素。

判断矩阵之间的逻辑关系  

vec = numpy.array([5, 10, 15, 20])
equal_to_ten_and_five = (vec == 5) & (vect
vec = numpy.array([5, 10, 15, 20])
equal_to_ten_or_five = (vec == 5) | (vec == 10)
print (equal_to_ten_or_five)
[ True  True False False]== 10)
print(equal_to_ten_and_five)
[False False False False]

令等于 5 或10 的值变为自己想要的值

vec = numpy.array([5, 10, 15, 20])
equal_to_ten_or_five = (vec == 5) | (vec == 10)
vec[equal_to_ten_or_five] = 50
print(vec)
[50 50 15 20]
矩阵形式的操作
matrix = numpy.array([
            [5, 10, 15], 
            [20, 25, 30],
            [35, 40, 45]
         ])
second_column_40 = matrix[:,1] == 40
print (second_column_40)
matrix[second_column_40, 1] = 20
print (matrix)_40, 1] = 20
print (matrix)
[False False  True]
[[ 5 10 15]
 [20 25 30]
 [35 20 45]]

改变数据类型

vec = numpy.array(["1", "2", "3"])
print (vec.dtype)
print (vec)
vec = vec.astype(float)
print (vec.dtype)
print (vec)
<U1
['1' '2' '3']
float64
[1. 2. 3.]
矩阵行求和
matrix = numpy.array([
                [5, 10, 15], 
                [20, 25, 30],
                [35, 40, 45]
             ])
matrix.sum(axis=1)
[ 30,  75, 120]
矩阵列求和
matrix = numpy.array([
                [5, 10, 15], 
                [20, 25, 30],
                [35, 40, 45]
             ])
matrix.sum(axis=0)
[60, 75, 90]





评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值