728x90
반응형
파이썬에서 특정행 데이터만 뽑아 플롯으로 그리는 작업이다.
데이터는 csv 형태의 데이터이며, 문자열로 되어 있다.
그리고 4개의 행이 하나의 그룹으로 이루어져서 채널별로 반복되는 형태이다.
Key Point
- csv read 데이터형태 와 데이터 형 이해 - .astype(float)
- pandas data indexing 방법 - .iloc(row, column)
- pandas plot 에서 데이터를 plot에 쌓는 행열 구분 - 열을 구분하여 데이터를 plot
- 리스트, 데이터프레임, 배열 차이와 사용
# -*- coding: utf-8 -*-
"""
Created on Sun Mar 8 02:59:35 2020
@author: ceole
"""
"""
판다스에서는 열이 데이터 종류에 해당한다.
이러한 이유로 그래프를 그리면 열을 기준으로 하여 행을 쌓는다.
"""
from pandas import read_csv
import matplotlib.pyplot as plt
import pandas as pd
import numpy as np
import csv
file = r'파일이름'
df = pd.read_csv(file, sep='\t', lineterminator='\r', skiprows =[0], encoding = 'utf-8')
1. 필요한 모듈 불러오기
2. 데이터 읽어오기 와 옵션
sep='\t' # 분리자 tab
lineterminator='\r' #라인끝 처리 \r
skiprows =[0] # 제외 행
encoding = 'utf-8' #인코딩 방식
idx = range(0, 36,4)
data = df.iloc[idx,:] #특정 행만 읽어오기
data = data.astype(float) #문자열을 float으로 형 변환
# data = data.T
r, c = data.shape #data 행열 크기 구하기
rNames = range(1, r+1)
cNames = range(1, c+1 )
data.index = rNames #행이름 지정
data.columns = cNames #열이름 지정
3. 특정행 인덱스 만들기
idx = range(0, 36,4) # 0행 부터 4 행씩 36행까지 인덱스 만들기 즉, 0, 4, 8, 12
4. pandas iloc 이용하여 특정행 데이터만 별도로 저장
data = df.iloc[idx,:] #특정 행만 읽어오기
5. 문자열 데이터를 float 데이터로 변환
data = data.astype(float)
6. 행열 크기를 구하여 행열 이름 만들기
7. csv 파일에 저장하여 데이터 확인
8. 행열을 바꾸기. 열 데이터를 이용하여 plot 을 그림
data = data.T #T 는 Transpose 약자.
9.plot 그리기
data.plot()
plt.show()
행열 전치
728x90
반응형
'프로그래밍' 카테고리의 다른 글
DB] Connection string for DB using ODBC (0) | 2022.04.21 |
---|---|
js]chart.js 사용하기 (0) | 2022.02.03 |
[툴] VSCode - emmet 안될때 (0) | 2022.01.19 |
FFT Analysis 문제점 (0) | 2020.09.09 |
[참고]FFT (0) | 2020.09.08 |