В качестве базовой проверки для сотен файлов ascii я бы хотел проверить, что каждый имеет правильное количество строк и столбцы. Первые 6 строк каждого файла не являются частью матричной матрицы 23x23, каждая из которых содержит. Я пробовал различные возможности для чтения размера матрицы, которые я превратил в строки комментариев (см. Ниже), но теперь я думаю, что мне нужен новый способ читать массивы, отличные от табличных таблиц arcpy. Я был бы открыт для использования модулей, используемых в пандах. Есть идеи? Благодарю.импортировать много файлов ascii в каталог, читать как массив, печатать количество строк, столбцы для каждого файла
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)
Я думаю, что вы на правильном пути с numpy. После того, как вы загрузите каждый файл, вы можете проверить его, чтобы увидеть, имеет ли его правильный размер –
. Я бы сделал это с помощью print numpy.shape (файла), однако каждая итерация предоставила бы это как следующий результат:() --- явно пустой матрицы. Другое замечание состоит в том, что разделитель представляет собой единое пространство, а не запятую, как с csv. – AF2k15
Простите меня, если я ошибаюсь, но разве вы не должны делать numpy.shape (outfile) или outfile.shape? –