有一个config file: dfspeciesConfig,
for col in wavecolM3L:
如果wavecolM3L list中(Col-1,Col+1) 范围内在dfspeciesConfig里面能找到对应物质, 则保留此wave, 并记录相应的species (SiO/Ni),请问如何写?
wavecolM3L
2022.05.17
这里面speciesList 是pConfig返回的结果,跟您帮我写的那个是一个意思么? 但是有个报错
dfspeciesConfig 和需要与原始speciesList(config 标准表)比对的待比对物质列表
2022.05.17 18:15
就差一点点了, 运行单个inP =241.0, 查找到的物质是对的, 数据类型按您的改了,运行报错如下, 仍然提示'TypeError: 'float' object is not subscriptable:
我理解,你看是否是这样的:
其中3的比较中测试记录的物质特性值可能存在偏差,其对应的物质特性可能存在 正负1 的偏差,即如果 记录的值 在 某个配置值的正负1范围内,还是认为是对应于该物质。
如果是这样的,这其实类似一个特殊的查表过程,因为待查表是一个范围表,即首先需要对dfspeciesConfig解析,生成一个待查的范围表(注意这个表不能有重叠区域)
然后就是遍历过程,这里其实还需要明确所谓的保留是指什么,如果没有查到对应物质的要怎么处理?我觉得可能都要保留,只是对查到的多标注对应查到的物质可能更好。
这个估计是什么研究项目中的数据处理?!
根据题主新的介绍,我觉得关键有2个处理过程
定义一个根据物质特性查表的函数
下面是这个的伪实现
因为上述代码没有合适的数据进行验证测试,所以是伪代码,需要根据实际调整部分地方可能才能正常工作。包括但不限于列表索引关系、数据类型转换处理等。