首页 > 其他分享 >numpy(二)piecewise

numpy(二)piecewise

时间:2023-09-26 21:44:22浏览次数:51  
标签:piecewise int 定义域 3.01 np numpy

1、关于值域和定义域的坑
【坑了我一下午,怎么都不对,直到和朋友探讨,才一点点排除问题,真挺坑的。
实际上还是自己对于函数的 值域 定义域的注意不够。】

(1)定义域是int时,值域是int,输出中带的小数会被舍弃(不是四舍五入、而是直接抹掉)

错误使用:

# 注意!piecewise的输出(值域)类型按照定义域R的类型,如果R的类型是int,那么,即使输出是【[0.28, lambda R: R + 0.03]】,也会舍弃小数,输出int类型!
import numpy as np  
x = 3
Y1 = np.piecewise(x, [x < 3.01, x >= 3.01], [2.7, lambda x:x+3.78])  
print(Y1)
# 结果:2

正确使用:

import numpy as np  
x = 3.0
Y1 = np.piecewise(x, [x < 3.01, x >= 3.01], [2.7, lambda x:x+3.78])  
print(Y1)

# 结果:2.7

(2)延伸:当定义域是int时,条件可以是float、不会强转为int再判断,结果不会受影响
如果受影响,结果应为6,此处为2,故没问题。

参考:
https://numpy.org/doc/stable/reference/generated/numpy.piecewise.html

标签:piecewise,int,定义域,3.01,np,numpy
From: https://www.cnblogs.com/sybil-hxl/p/17731238.html

相关文章

  • NumPy:Python科学计算基础包
    NumPy是Python科学计算的基础包,几乎所有用Python工作的科学家都利用了的强大功能。此外,它也广泛应用在开源的项目中,如:Pandas、Seaborn、Matplotlib、scikit-learn等。Numpy全称NumericalPython。它提供了2种基本的对象:ndarray与ufunc。ndarray是存储单一数据的多维数组,它......
  • 【8.0】Pandas和NumPy的比较
    【一】引入我们知道Pandas是在NumPy的基础构建而来因此,熟悉NumPy可以更加有效的帮助我们使用Pandas。NumPy主要用C语言编写因此,在计算还和处理一维或多维数组方面,它要比Python数组快得多。关于NumPy的学习,可以参考《PythonNumPy教程》。【二】创建数组数......
  • 已解决TypeError: type numpy.ndarray doesn‘t define __round__ method
    已解决TypeError:typenumpy.ndarraydoesn’tdefineroundmethod文章目录报错问题解决方法声明报错问题之前在工作中遇到过这个坑,记录一下问题以及解决方法,不一定针对所有情况都能用,但是可以供大家参考。问题描述如下:TypeError:typenumpy.ndarraydoesn’tdefineroundm......
  • 已解决AttributeError: module ‘numpy‘ has no attribute ‘integer‘
    已解决AttributeError:module‘numpy‘hasnoattribute‘integer‘文章目录报错问题解决方法声明报错问题之前在工作中遇到过这个坑,记录一下问题以及解决方法,不一定针对所有情况都能用,但是可以供大家参考。问题描述如下:AttributeError:module‘numpy‘hasnoattribute......
  • Python中numpy出现has no attribute '_no_nep50_warning'错误怎么办?
      本文介绍在Python中,numpy库出现报错module'numpy'hasnoattribute'_no_nep50_warning'的解决方法。  一次,在运行一个Python代码时,发现出现报错module'numpy'hasnoattribute'_no_nep50_warning',如下图所示。  其中,这一代码本来在Windows平台下运行是没有问题的,......
  • python numpy 中的广播操作
    这辈子也学不会numpy。Python中的广播(broadcasting)是一种用于在不同形状的数组之间执行二进制操作的机制,使得它们的形状可以兼容,并且能够按照一定的规则进行元素级操作。这个机制允许你在不显式复制数据的情况下,对形状不同的数组进行操作,这可以节省内存和提高代码的效率。广播......
  • 两个numpy技巧(模式识别总结)
    1.查找符合特定条件的Numpyndarray对象中元素的数量np.count_nonzero()函数可以用来完成此操作。以下是使用np.count_nonzero()函数快速查找数组中小于5的元素数量的示例:count=np.count_nonzero(array<5)在此示例中,我们使用array<5来获取array中小于5的所有元素,然后......
  • Python使用 - NumPy用法1
    NumPy的核心数据结构之一是ndarray,表示一个多维数组,他存储的是单一数据类型。 导入包importnumpyasnp 1维数组list1=[1,2,3,4,5,6]ndarr1=np.array(list1,dtype=np.float32)print(type(ndarr1),ndarr1)#<class'numpy.ndarray'>[1.2.3.4.5.6.]......
  • 《Python数据分析基础教程:NumPy学习指南.第2版》高清高质量PDF电子书+源码
    罕见的NumPy中文入门教程,Python数据分析首选从最基础的知识讲起,手把手带你进入大数据挖掘领域囊括大量具有启发性与实用价值的实战案例下载:https://pan.quark.cn/s/730b594117c0......
  • python中numpy.random.seed设置随机种子是否影响子进程
    给出代码:frommultiprocessingimportProcessimportnumpyasnpclassNN(Process):def__init__(self,id):super(NN,self).__init__()self.id=iddefrun(self):super(NN,self).run()print(np.random.random(5))......