Jestem stosunkowo nowy w Pythonie i zastanawiam się, jak najlepiej importować dane z wielu plików do jednej tablicy. Mam sporo pliki tekstowe zawierające 50 wierszy z dwóch kolumn danych (kolumna ograniczonych), takich jak:Pythonowy sposób importowania danych z wielu plików do tablicy
Length=10.txt:
1, 10
2, 30
3, 50
#etc
END OF FILE
-
Length=20.txt
1, 50.7
2, 90.9
3, 10.3
#etc
END OF FILE
Powiedzmy mam 10 plików tekstowych do importowania i importować do zmienna o nazwie dane.
Chciałbym utworzyć pojedynczą tablicę 3D zawierającą wszystkie dane. W ten sposób mogę łatwo narysować i zmanipulować dane, odnosząc się do danych przez data[:,:,n]
, gdzie n
odnosi się do indeksu pliku tekstowego.
Myślę, że sposób, w jaki zrobiłbym to, to mieć tablicę kształtu (50, 2, 10), ale nie wiem, jak najlepiej użyć Pythona, aby go utworzyć. Myślałem o użyciu pętli do importowania każdego pliku tekstowego jako tablicy 2D, a następnie układania ich w stos w celu utworzenia tablicy 2D, chociaż nie można znaleźć odpowiednich poleceń do tego celu (spojrzałam na vstack i column_stack w numpy, ale te nie wydaje się, aby dodać dodatkowy wymiar).
Dotychczas pisałem kod import:
file_list = glob.glob(source_dir + '/*.TXT') #Get folder path containing text files
for file_path in file_list:
data = np.genfromtxt(file_path, delimiter=',', skip_header=3, skip_footer=18)
ale problem z tym kodem, jest to, że mogę jedynie przetwarzania danych, kiedy to w pętli for.
Tym, czego naprawdę chcę, jest tablica wszystkich danych importowanych z plików tekstowych.
Każda pomoc będzie bardzo ceniona dzięki!
Dzięki temu poprawia się odpowiedź Cronosa. – IanRoberts