Computer Science/AI & Data

[Data Science] CSV 파일에서 한 셀 안의 데이터 값을 여러 셀로 나누기

Henry Cho 2024. 3. 27. 01:56
728x90

CSV 파일에서 한 셀 안의 데이터 값을 여러 셀로 나누기


# 한 셀에 다 포함된 데이터

데이터 분석을 하기 위해서 IoT 센서들로부터 수집된 데이터를 정리하려고 하는데 가끔 친절하지 않은 데이터 수집 프로세스로 인해 모든 데이터 값이 하나의 셀에 포함된 CSV 파일을 받아본 적이 한번 정도는 꼭 있길 마련이다. 도대체 데이터 수집할 때 왜 간단한 정렬 코딩을 해두지 않았는지 짜증이 확 올라오거나 데이터를 수집한 연구원이나 개발자에게 더럽게 정리해서 준 걸 보면 화가 난다. 별거 아닌 것 같지만 기본적으로 농생명을 비롯하여 의학 관련 데이터는 한 번에 수만 개의 데이터를 분석하기 때문에 수작업으로 작업이 불가능하다. 다행히도  CSV 파일 또는 엑셀 파일에 한 셀 안에 저장되어 있는 데이터 값을 여러 셀로 자동적으로 나누는 방법이 있다.

 

아래와 Figure 1과 같이 파일에는 나눠져 있는 것처럼 보이지만 막상 해당 CSV 파일의 데이터를 사용하려고 한다면 한 셀에 두 데이터 값이 저장되어 출력될 수 있다. integer 값들이 string type으로 입력이 되어 있을 경우에 한 셀에 저장되는 발생할 수 있다. 이러한 경우 다행히도 두 개의 데이터 값이 하나의 셀에 있지만 띄어쓰기, 즉 공백으로 구분이 자동으로 가능하기 때문에 데이터 메뉴에서 데이터 값 분할을 통해서 자동으로 두 셀로 나눠서 변환 후 저장이 가능하다. 


Figure 1. CSV 파일의 데이터를 사용하려고 할때 실제로는 한 셀에 출력된다.


Figure 2와 같이 [Data] 탭에서 [Text to Columns]를 통해서 한 셀에 저장되어 있는 데이터 값을 나눌 수 있다. 


Figure 2. [Data] - [Text to Columns]


[Text to Columns]를 눌러주면 주어진 셀 안의 텍스트를 어떻게 나눌 것인지를 선택할 수 있다. Figure 1의 경우에는 공백으로 구분이 가능하기 때문에 [Fixed width]를 선택해주었다. 만일 특정 기호로 구분이 되어 있다면 [Delimited]을 선택해 주면 된다.


Figure 3. 셀에 입력된 값을 구분할 방법을 선택해준다.


이후에 값을 특정 타입으로 저장을 원할 경우 조건에서 선택을 해주면 되고 아닐 경우는 general로 선택해주면 된다. 이후에 [Finish]를 누르고 나면 한 셀 안에 있던 값이 Figure 4와 같이 나눠져 출력된다.


Figure 4. 두개의 셀로 구분되어 출력된다.


간단한 엑셀 기능으로 한 셀로 모두 출력되는 데이터 값들을 쉽게 정리가 가능하다.


 

728x90