Python 如何读取整数范围为0-255(表示图像的灰度像素)的文本文件并将其转换为2D数组?
我有一个文本文件,其中的整数范围为0-255(数字图像的灰度值),全部由制表符分隔。我想使用pandas/numpy读取该文件,并将其排列成一个二维数组,其中包含784列(表示每个图像的像素值)和与我拥有的样本图像数量相对应的行数。因此,每行将有784个整数(图像的28X28像素值)。我希望每组784个整数都有一个新行。该文件包含2561个图像的值,因此有(2561*784)=2007824个整数,全部由制表符分隔。所以我希望所有这些整数都被拆分并排列成一个2561行784列的数组 我想使用pandas/numpy读取文件,并将其排列成一个具有1列的二维数组 所以每行有784个整数 如果希望每行有784个整数,则需要784列 您可能可以这样做:Python 如何读取整数范围为0-255(表示图像的灰度像素)的文本文件并将其转换为2D数组?,python,pandas,numpy,multidimensional-array,Python,Pandas,Numpy,Multidimensional Array,我有一个文本文件,其中的整数范围为0-255(数字图像的灰度值),全部由制表符分隔。我想使用pandas/numpy读取该文件,并将其排列成一个二维数组,其中包含784列(表示每个图像的像素值)和与我拥有的样本图像数量相对应的行数。因此,每行将有784个整数(图像的28X28像素值)。我希望每组784个整数都有一个新行。该文件包含2561个图像的值,因此有(2561*784)=2007824个整数,全部由制表符分隔。所以我希望所有这些整数都被拆分并排列成一个2561行784列的数组 我想使用pa
images=pd.read\u csv(,sep=“\t”,header=None)
但是现在我得到了一行中所有整数的数据帧。我通过执行'df=df.values'将数据帧转换为数组,并尝试将其重塑为具有2561行(我拥有的图像数量)和784列(每个图像的像素值),但它给了我一个错误“无法将数组1的大小重塑为形状(2561784)。如果您可以发布代码的相关部分,那就太好了。否则很难知道你到底在做什么。是不是只有一行200。。。数字,或2561行,每行784列。在任何一种情况下,将文本加载到on integer数组后,都可以根据需要轻松地对其进行整形,例如,arr.reformate(2561,28,28)
。您是否尝试过使用分隔符='\t'的np.genfromtxt
?只是提醒一下,经常检查shape
和dtype
。不要猜测代码会这样做;测试一下。