python读取文件格式化方法

版权声明:看我干嘛? 你又没打算转载我的博客~ https://blog.csdn.net/wjh2622075127/article/details/87908806

介绍python的一种较为通用的读取文件并进行格式化的方法。

第一种文件格式:
在这里插入图片描述

一行数据是一个特征向量,最后一项是标签,表示类别。数据之间用空格分隔。目的是输入这样的文件路径,得到它格式化形成的特征向量和标签向量。

代码

def fileToNumpy(filename):
    file = open(filename)
    file_lines = file.readlines()
    numberOfLines = len(file_lines)
    dataArray = np.zeros((numberOfLines, 3))
    labels = []
    index = 0
    for line in file_lines:
        line = line.strip() # 参数为空时,默认删除开头、结尾处空白符(包括'\n', '\r',  '\t',  ' ')
        formLine = line.split('\t')
        dataArray[index,:] = formLine[0:3]
        labels.append((formLine[-1]))
        index += 1
    return dataArray, labels


filename = "datingTestSet.txt"
dataArray, labels = fileToNumpy(filename)

第二种文件格式类似,但是用逗号分隔
在这里插入图片描述
这种文件是csv格式文件,把它当作普通文件来处理。

代码

def fileToNumpy_2(filename):
    file = open(filename)
    lines = file.readlines()
    length = len(lines)
    data = np.zeros((length, 3))
    labels = []
    index = 0
    for line in lines:
        line = line.strip()
        one = line.split(',')
        data[index,:] = one[0:-1]
        labels.append(one[-1])
        index += 1
    return data, labels


filename = "testData.txt"
data, labels = fileToNumpy_2(filename)
print(data)
print(labels)

猜你喜欢

转载自blog.csdn.net/wjh2622075127/article/details/87908806