Импортировать много файлов ascii в каталог, читать как массив, печатать количество строк, столбцы для каждого файла

В качестве базовой проверки для сотен файлов ascii, я хотел бы перепроверить, что каждый из них имеет правильное количество строк и столбцов. Первые 6 строк каждого файла не являются частью матрицы матрицы 23x23, которая содержится в каждом. Я испробовал различные возможности для чтения размера матрицы, который я превратил в строки комментариев (ниже), но теперь я думаю, что мне нужен новый способ чтения массивов, отличных от списка арктических списков. Я был бы открыт для использования модулей, используемых в пандах. Есть идеи? Благодарю.

import arcpy, numpy
from arcpy import env

env.workspace = r"C:\VMshared\small_example_valley5\SDepth1"

for file in arcpy.ListTables():
    #numpy.loadtxt(file,dtype = float, "#", delimiter = ' ', "#", skiprows = '6')
    outfile = numpy.loadtxt(file, skiprows = '6')
    print numpy.shape(outfile)
    #print enumerate(file)  
    #print len(file) + len(file.T)
    #print len(file) + map(len,file)

1 ответ

Решение

Я думаю, что NumPy может быть использован для этого.

for file in arcpy.ListTables():
        outfile = numpy.loadtxt(file, delimiter=" ", skiprows = 6)
        if outfile.shape != (23,23):
            print file + " has an incorrect number of rows or columns"
Другие вопросы по тегам