곰퓨타의 SW 이야기

[python] pandas로 labeling type 수정하여 txt 파일 저장하기 본문

Project/python 활용(ex.openCV)

[python] pandas로 labeling type 수정하여 txt 파일 저장하기

곰퓨타 2021. 4. 23. 14:51

python에서 numpy를 통해 열 마다 다른 type으로 저장하고자 하였으나, 실패하였다.

 

따라서 pandas의 DataFrame을 활용하여 열마다 다른 type으로 저장하는 방법을 고안하였다.

 

import pandas as pd
import numpy as np
annot = np.loadtxt('/path_txt_file.txt',delimiter=',',skiprows=0,dtype= float)

# 1열은 1로 채우고자 하는 경우 
annot[:,1] = np.ones(len(annot),dtype=int)

df = pd.DataFrame(annot)

# 2,3,4,5 열은 float 형으로 놔두지만, 다른 열들은 int로 형변환하고자 하는 경우
df[0] = df[0].astype(int)
df[1] = df[1].astype(int)
df[6]= df[6].astype(int)
df[7]= df[7].astype(int)
df[8]= df[8].astype(int)
df[9]= df[9].astype(int)
print(df)

# index 는 말그대로 index, header는 column 제외하고 저장하고 싶은 경우
df.to_csv('label_remove.txt',sep=',', index =False, header=False)
Comments