본문 바로가기
Software coding skill(python, web등)

Pandas 1 - csv 데이타 읽고 / 처리 / 추가 / 저장

by 호빵님 2020. 2. 13.
반응형

Pandas csv data사용 예제

 

데이타 csv 파일 예제

 

1. SavedData.csv에서 값을 pandas Dataframe형식으로 읽는다.

2. Dataframe type을 개별 데이터 처리를 위해서 float type으로 변환

3. 마지막 행 데이타를 이용해서, 새로 데이타를 생성하기 위해서, tail 사용

4. 마지막 행인 series data object를 float으로 변환

5. 데이타 업데이트 처리 후, 한 행짜리 Dataframe생성

6. 기존 전체 Dataframe의 마지막에 추가

7. 추가 업데이트된 SavedData.csv파일 저장

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
# -*- coding: utf-8 -*-
"""
Created on Thu Feb 13 18:29:12 2020
 
@author: kenro
"""
 
import pandas as pd
 
SOHC=1.0
SOHR=100.0
 
#저장한 csv데이타 불러오기
SavedNVM=pd.read_csv('SavedData.csv',index_col=0#첫 열을 index열로 설정한다
 
print(SavedNVM.dtypes) #로드한 데이타의 타입을 확인한다. 추후 연산에 적합한지 확인.
 
SavedNVM=SavedNVM.astype('float'#소숫점 계산에 필요한 float으로 변경
 
#데이타 프레임에서 마지막 데이타 프레임 하나 획득
LastNVM=SavedNVM.tail(1)
 
print(LastNVM.dtypes)
 
#마지막 데이타 프레임 행 하나는 series object 타입임.
LastSOHC=LastNVM['SOHC']
LastSOHR=LastNVM['SOHR']
 
#float 타입으로 변경
fLastSOHC=float(LastSOHC)
fLastSOHR=float(LastSOHR)
print(type(fLastSOHC))
print(type(fLastSOHR))
 
#값 업데이트
SOHC = fLastSOHC - 0.01
 
SOHR = fLastSOHR + 1.0
 
#업데이트한 값으로 데이타 프레임 생성(index 0)
NewToNVM=pd.DataFrame(data=[[SOHC,SOHR]],columns=['SOHC''SOHR'])
 
#기존 데이타에 맨 아래에 추가
#df4=readdf.append(df,ignore_index=True) #인덱스정보 제외하고 데이타 추가시키도록 할때
UpdatedNVM=SavedNVM.append(NewToNVM)
 
UpdatedNVM = UpdatedNVM.reset_index(drop=True) #index재정렬
 
print(UpdatedNVM)
 
#업데이트 추가된 최종 데이타 저장
UpdatedNVM.to_csv('SavedData.csv')
 
cs

 

실행 결과:

콘솔창

 

데이타가 누적 추가되는 cvs파일

반응형