txt和npy文件之间的转换 python语言

txt文件转npy文件

1.在进行图嵌入学习时,我们通过复现现有的方法会得到节点的表示,其是以txt文件存在的,如图所示:
txt和npy文件之间的转换 python语言_第1张图片

2.我们需要把所有节点的嵌入存入npy文件以便后续的适用:

#txt文件转为npy文件
embedding_vec = np.zeros((18415,64))  #定义size
data = open('node.txt')  #打开txt文件
next(data) #跳过首行
lines = data.readlines()
index = 0
for line in lines:
    list = line.strip('\n').split(" ")
    list = list[1:]   #舍去节点名字
    embedding_vec[index] = list
    index =index+1
np.save('node_emb.npy', embedding_vec)

npy文件转txt文件(二元数组转化为txt格式)

1.npy文件里的格式是一个二元数组:
txt和npy文件之间的转换 python语言_第2张图片

2.我们需要把npy文件里的内容转化为txt格式

#npy文件转化为txt文件
edge = np.load("edge.npy",allow_pickle = True)  #读取npy文件
f = codecs.open("edge.txt",'w','utf-8')   #打开要被写入的txt文件
for i in range(0,edge.shape[0]):
    for j in range(edge.shape[1]):
        if j == edge.shape[1]-1:
            f.write(str(edge[i,j]))
        else:
            f.write(str(edge[i,j])+'\t')
    f.write('\r\n')
f.close()

3.转化后的txt文件如图所示:
txt和npy文件之间的转换 python语言_第3张图片

你可能感兴趣的:(python,机器学习,人工智能)