全文件读写
读操作使用pandas.read_csv
,写操作使用data.to_csv
。
import numpy
import pandas as pd
#读
data = pd.read_csv(r"/home/snowstorm/mmdetection/data/groundtruth.txt", header=None) #读取TXT:逗号分隔
#data = pd.read_csv(r"/home/snowstorm/mmdetection/data/groundtruth.txt", header=None, sep=' ') #读取TXT:空格分隔
print(data)
#写
data.to_csv("/home/snowstorm/mmdetection/data/write.txt",sep=',',header=False,index=False)
指定行列读写
import numpy
#读数据
def loadDatadet(infile,k):
f = open(infile,'r')
sourceInLine = f.readlines()
dataset = []
for line in sourceInLine: #读数据
temp1 = line.strip('\n')
temp2 = temp1.split('\t')
dataset.append(temp2)
for i in range(0,len(dataset)): #转为整数
for j in range(k):
dataset[i].append(int(dataset[i][j]))
del(dataset[i][0:k])
list = sum(dataset,[]) #变成一维数组
posit_data = numpy.array(list).reshape(len(list)//4,4) #变为n*4的二维数组
return posit_data
#写数据
def Writedata(negat_data):
filename = 'C:\\Users\\DZF\\Desktop\\negative.txt' #要写入的文件
row = numpy.array(negat_data).shape[0] #获取行数n
with open(filename,'w') as f: # 若filename不存在会自动创建,写之前会清空文件
for i in range(0,row):
f.write(str(negat_data[i][0:12]))
f.write("\n")
infile = 'C:\\Users\\snow\\Desktop\\positive.txt' #要读取的文件
k = 1 #列数
posit_data = loadDatadet(infile,k)
Writedata(posit_data)
print(posit_data)
学习更多编程知识,请关注我的公众号: