欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

python:txt格式转csv格式及对csv文件固定列的读取

程序员文章站 2022-05-28 15:17:40
...

**

python:txt格式转csv格式及对csv文件固定列的读取

**
txt格式转csv格式

方法一:代码转换(这种方法转成csv文件之后,第一行为自动生成的表头)

#截取txt文件
def cut_front():
	dt=open('./data/data_train_new_2/2_background_row.txt',mode='a+')
	for i in range(1,5001):#从background1截取文件前5000行数据,放入dt中
		theline = linecache.getline(r'../data/train/background2.txt',i)
		dt.writelines(theline)
#txt文件转csv文件(注:必须提前建立csv文件,否则报错)
def txtTocsv():
    txt = np.loadtxt('./data/data_train_new_2/2_background_row.txt')
    txtDF = pd.DataFrame(txt)
    txtDF.to_csv('./data/data_train_new_2/2_background_row.csv',index=False)

方法二:直接将文件的后缀名.txt改成.csv(这种方法简单,而且不会自动生成表头)

读取csv文件的固定列(带表头/不带表头)
方法一:带表头

#读出来的内容带有表头(row[2]:第三列)
with open('./data/data_train_new_2/2_420v_row.csv') as csvfile:
    reader=csv.reader(csvfile)
    column1=[row[2]for row in reader]
    print(column1)

方法二:不带表头

#读出来的是去掉表头的内容(row['2']:第三列)
with open('./data/data_train_new_2/2_420v_row.csv') as csvfile:
    reader = csv.DictReader(csvfile)
    column = [row['2'] for row in reader]
print(column)

csv文件读取出来是str类型,计算需转换成float类型。

data = []
for j in range(len(column)):
    data.append(float(column[j]))#csv读取出来是str格式,要转成float
print((data))

注:这是本人对自身学习的一个总结,如有侵权,请联系本人。