Проблемы с поиском определенного элемента в списке в Python

Во-первых, извините за длину объяснения.

У меня проблема с кодом, у меня есть список вроде:

список [a] [b] [c]

В котором:

  1. В первой позиции [a] хранятся адреса моих файлов
  2. Во второй позиции [b] хранятся мои значения данных â € ‹â €‹ из столбцов моих файлов (глубина, время, GR, NPHI, ...)
  3. В третьей позиции [c] хранятся значения каждой строки столбцов моих данных в поле [b].

Мне нужно найти определенные значения в моих данных и связать их со значениями в другом столбце.

Пример:

  • В данных первого файла [a] = [0]
  • Поиск GR = 37.1451
  • Узнайте, какая ГЛУБИНА соответствует этому значению GR.
  • Затем сохраните эту глубину в списке, который позже будет использоваться для других операций.

Программа анализирует несколько файлов.LAS, и я не могу их изменить, поскольку они будут в открытом доступе для университета.

Я пробовал использовать: ArquivosLas[0][1].index(37.1451), но поскольку первый список представляет собой файл, это не работает

В [129]: введите (ArchivesLas [0])

Выход [129]: lasio.las.LASFile

В [132]: введите (ArquivosLas 1)

Выход [132]: numpy.ndarray

В [133]: введите (ArquivosLas 1 1)

Выход [133]: numpy.float64

Я подумал о сохранении числовых данных из исходного списка - вторая [b] и третья [c] позиции в другом векторе, таким образом удалив позицию [a] и превратив новый список только в массив чисел.

Прилагаю код, который использовал, и фото того, как данные

Спасибо за терпение

from tkinter import *
from tkinter import filedialog
import lasio
import numpy as np
        
EnderecoArquivosLas = list()
ArquivosLas = list()
DadosLas = list()
ProfundidadeTopo = list()
x = 0
         
root = Tk()
        
root.title('Seleção banco de dados')
        
EnderecoArquivosLas = filedialog.askopenfilenames(parent=root, title="Selecione os arquivos com banco de dados", filetypes=(("las files", "*.las"),("all files", "*.*")))
        
root.splitlist(EnderecoArquivosLas)
        
root.mainloop()

#Fill the list with the files and read them, saving them in another list    
for i in EnderecoArquivosLas:
        ArquivosLas.append(lasio.read(EnderecoArquivosLas[x],ignore_header_errors=True))
        x = x + 1

#Search for the position of specific values
PosicaoGrTopo = ArquivosLas[0][1].index(37.1451)

https://stackru.com//images/86e20c79c1df605199135a7dd64dca62c5e792ef.png

0 ответов

Другие вопросы по тегам