在目录中导入许多ascii文件,读取为数组,打印行数,每个文件的列

时间:2015-03-15 22:26:36

标签: numpy pandas scipy arcpy

作为对数百个ascii文件的基本检查,我想仔细检查每个文件是否具有正确的行数和列数。每个文件的前6行不是每个文件包含的23x23矩阵矩阵的一部分。我已经尝试了各种可能性来读取矩阵大小,我将其转换为注释行(下图),但现在我认为我需要一种新方法来读取除arcpy的listTables以外的数组。我也愿意使用熊猫中使用的模块。有任何想法吗?感谢。

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 个答案:

答案 0 :(得分:0)

我认为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"