gpt4 book ai didi

python - 从 Numpy Rec 数组中选择行

转载 作者:太空狗 更新时间:2023-10-29 20:23:18 26 4
gpt4 key购买 nike

我有一个 Numpy rec 数组,我想从中执行一些类似于 SQL 的快速查询:SELECT * where array['phase'] == "P"。我想获得一个记录数组作为输出,每一行对应于原始数组中满足查询条件的一行。有任何想法吗?我很确定我以前做过这个,但就是不记得这个函数。

谢谢

rec.array([ (5295499, 2.8123965, 127.20443, 0.0, 1237680436.06, 908, -19.942589, 134.33951, 0.3888, 'P', 0.19513991),
(5295499, 2.8123965, 127.20443, 0.0, 1237680436.06, 1387, -18.102, 125.639, 0.11, 'P', 1.2515257),
(5447254, 39.025873, 143.31065, 0.0, 1245455521.85, 1512, 33.121667, 130.87833, 0.573, 'LR', 45.099504)],
dtype=[('eventid', '<i4'), ('eventlat', '<f8'), ('eventlon', '<f8'), ('eventdepth', '<f8'), ('eventtime', '<f8'), ('stationid', '<i4'), ('stationlat', '<f8'), ('stationlon', '<f8'), ('stationelv', '<f8'), ('phase', '|S7'), ('timeresidual', '<f8')])

最佳答案

尝试:

array[array['phase']=='P']

array['phase']=='P' 返回一个 bool 型 numpy 数组。当 idx 是 bool 数组时,array[idx] 返回一个数组,其中包含 idxTrue 的那些行.

关于python - 从 Numpy Rec 数组中选择行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7313806/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com