반응형
Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- jupyternotebook
- 금융
- 직무역량평가
- 디지털직무
- 과소완전
- 사전학습
- 지도학습
- 과대완전
- 일반상식
- 비지도학습
- 주피터노트북
- 디지털
- 데이크루
- 머신러닝
- 군집분석
- 알고리즘
- 파이썬
- Jupyter Notebook
- 금융상식
- dacrew
- 데이터분석
- 데이콘
- 디지털용어
- 은행
- IT용어
- 금융권
- Python
- IT
- 파이썬문법
- 은행채용
Archives
- Today
- Total
Ming's blog
실전 데이터 분석2_(파일다루기, 데이터 구조 다루기, 그래프 다루기) 본문
반응형
1. 파일 다루기
1) 파일 열기/닫기
file = open('data.txt') #열기
content = file.read() #읽기
file.close() #닫기
2) 파일 자동으로 닫기
with open('data.txt') as file:
content=file.read()
# 자동으로 닫힘
print(content)
>>> Hello
My name is Min
3) 줄 단위로 읽기
contents=[]
with open('data.txt') as file:
for line in file:
contents.append(line.strip()) #앞 뒤 공백 제거
print(contents)
>>>['Hello', 'My name is Min']
4) 파일의 모드
# 쓰기 모드로 파일 열기
with open('data.txt','w') as file:
file.write('Hello')
2. 데이터 구조 다루기
1) 튜플
file = open('data.txt') #열기
content = file.read() #읽기
file.close() #닫기
with open('data.txt') as file:
content=file.read()
# 자동으로 닫힘
print(content)
>>> Hello
My name is Min
contents=[]
with open('data.txt') as file:
for line in file:
contents.append(line.strip()) #앞 뒤 공백 제거
print(contents)
>>>['Hello', 'My name is Min']
# 쓰기 모드로 파일 열기
with open('data.txt','w') as file:
file.write('Hello')
* 튜플과 리스트
공통점 : 순서가 있는 원소들의 집합
차이점 : 튜플은 원소 수정 불가
#튜플
colors=('빨','주','초') #원소의 값 수정 불가능
#리스트
colors_list=['빨','주','초']
## 리스트 변형
colors_list[2]='노'
print(colors_list)
>>>['빨', '주', '노']
colors_list.append('초')
print(colors_list)
>>>['빨', '주', '노', '초']
## 튜플 변형
colors[2]='노' #에러
colors.append('노') #에러
colors=('빨','주','노') #새로운 튜플로 만들면 수정 가능
2) 리스트로 리스트 만들기
rainbow=['red','orange','yellow']
first_letters=[]
for word in rainbow:
first_letters.append(word[0]) #첫 글자만 추출
print(first_letters)
>>>['r', 'o', 'y']
* 한 줄로 나타내기
#fancy code
first_letters=[word[0] for word in rainbow]
print(first_letters)
numbers=[2,4,6,8,10]
odds=[]
for num in numbers:
odds.append(num-1)
print(odds)
>>>[1, 3, 5, 7, 9]
#한 줄로 나타내기
odds=[num-1 for num in numbers]
print(odds)
>>>[1, 3, 5, 7, 9]
3) 특정 원소 걸러내기
numbers=[1,2,3,4,5,6,7,8,9,10]
even=[]
for num in numbers:
if num%2==0: #짝수만 추출
even.append(num)
print(even)
>>>[2, 4, 6, 8, 10]
#한 줄로 나타내기
even=[num for num in numbers if num%2 == 0]
print(even)
>>>[2, 4, 6, 8, 10]
4) 데이터 정렬하기
numbers=[5,8,7,6,-6,0,5,8,-8]
sort_num=sorted(numbers,key=abs) #절댓값 기준으로 정렬
print(sort_num)
>>>[0, 5, 5, 6, -6, 7, 8, 8, -8]
rainbow=['red','orange','yellow']
sort_rainbow=sorted(rainbow) #사전 순으로 정렬
print(sort_rainbow)
>>>['orange', 'red', 'yellow']
def reverse(word):
return str(reversed(word))
reversed_rainbow=sorted(rainbow,key=reverse) # 마지막 글자 기준 정렬
print(reversed_rainbow)
>>>['red', 'orange', 'yellow']
3. 그래프 다루기
matplotlib
# matplotlib의 일부인 pyplot 라이브러리를 불러옵니다.
import matplotlib.pyplot as plt
# 월별 평균 기온을 선언합니다.
years = [2013, 2014, 2015, 2016, 2017]
temperatures = [7,14,21,28,25]
#막대 차트를 출력합니다.
def draw_graph():
# 막대 그래프의 막대 위치를 결정하는 pos를 선언합니다.
pos = range(len(years)) # [0, 1, 2, 3, 4]
# 높이가 온도인 막대 그래프를 그립니다.
# 각 막대를 가운데 정렬합니다.
plt.bar(pos, temperatures, align='center')
# 각 막대에 해당되는 연도를 표기합니다.
plt.xticks(pos, years)
# 그래프를 표시합니다.
plt.savefig('graph.png')
plt.show()
draw_graph()
반응형
'프로그래밍 기본 문법 > Python' 카테고리의 다른 글
주피터 노트북에 익스텐션 설치하기(nbextensions) (0) | 2020.12.06 |
---|---|
파이썬문법_데이터 프레임 만들기 (0) | 2020.09.20 |
파이썬기초2_4. 클래스와 인스턴스 (0) | 2020.06.25 |
파이썬기초2_3. 모듈과 패키지 (0) | 2020.06.22 |
파이썬기초2_2. 함수 (0) | 2020.06.22 |
Comments