1 删除、保留txt文件的某几列
with open('cal5cam.txt', 'r') as f:
lines = f.readlines()
new_lines = []
for line in lines[1:]:
elements = line.split(',')
new_line = ','.join(elements[9:16]) # 保留第9-16列数据
new_line += '\n'
new_lines.append(new_line)
with open('cal5cam_output.txt', 'w') as f:
f.writelines(new_lines)
2 随机删除txt行数据
# -*- coding:utf-8 -*-
#在txt文件中随机抽取行
import random
from random import randint
oldf = open('cal8cam_output.txt', 'r',encoding='utf-8') #要被抽取的文件dataset.txt,共317行
newf = open('cal8cam_output_out.txt', 'w',encoding='utf-8') #抽取的200行写入randomtext.txt
n = 0
resultList = random.sample(range(0, 290), 199) # sample(x,y)函数的作用是从序列x中,随机选择y个不重复的元素
lines = oldf.readlines()
for i in resultList:
newf.write(lines[i])
oldf.close()
newf.close()
3 读取txt数据并转为数组
f = open('/home/wyh/Downloads/txt/cal1cam_real.txt','r')
txt = []
data_list = []
for line in f.readlines():
curline=line.strip().split(",")
txt.append(curline[:])
temp= list(map(float,curline))
data_list.append(temp[:])
data_array = np.array(data_list)
# print(txt)
print(data_array)
print(data_array[0])
print(data_array[0][0])
print(data_array.shape) #数据
print(len(data_array))
4 将数组保存到txt文件
m_maen=[…]
m_median=[…]
np.savetxt('arr1.txt', (m_mean, m_median), fmt="%.5f", delimiter=",")
result: