【问题标题】:select values from array till specified value in python从数组中选择值直到python中的指定值
【发布时间】:2021-11-14 07:08:30
【问题描述】:

我得到如下数据

z = 0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9, 1.0

T = 0、100、200、300、400、500、600、700、800、900、1000

我想选择“T”数据直到某个“z”值,比如 0.6。我想要一个通用的方法,每次我可以指定“z”的值,它可以返回 z 和 T。下一步是我想在我指定的两个 z 值之间选择数据。说 z=0.1 和 z=0.7,它应该给我 100 到 700 以及 z 值。有人可以在 Python 中提出一些建议吗?提前致谢!

【问题讨论】:

  • 我认为您正在使用zip() 以及itertools.takewhile()itertools.dropwhile()
  • 请提供足够的代码,以便其他人更好地理解或重现问题。

标签: python pandas numpy


【解决方案1】:

我想要一个通用的方法,每次我可以指定 'z' 的值,它可以返回 z 和 T。

def getT(z_value):
    return [z_value,T[z.index(z_value)]]

使用示例:

>> getT(0.1)
[0.1, 100]

其中第一个值是 z,第二个值是对应的 T。

下一步是我想在我指定的两个 z 值之间选择数据。假设 z=0.1 和 z=0.7,它应该给我 100 到 700 以及 z 值。

def getTbounded(lowerz,upperz):
    return [z[z.index(lowerz):z.index(upperz)+1],
           T[z.index(lowerz):z.index(upperz)+1]]

使用示例:

>> getTbounded(0.1,0.7)
[[0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7], [100, 200, 300, 400, 500, 600, 700]]

第一个列表是 z 值,第二个列表是 T 值。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-04-17
    • 1970-01-01
    • 2020-10-22
    • 1970-01-01
    • 1970-01-01
    • 2019-09-23
    • 1970-01-01
    • 2021-09-23
    相关资源
    最近更新 更多