우당탕탕 개발공부

[커널 아카데미] 데이터 분석 부트캠프 18기_ 3주차 학습일지 본문

⌛ BootCamp/[커널아카데미] 데이터분석 부트캠프

[커널 아카데미] 데이터 분석 부트캠프 18기_ 3주차 학습일지

냥냥서 2025. 3. 15. 12:59

 

0310
 

[커널 아카데미] 데이터 분석 부트캠프 18기_ Python 기초(1)

변수- 데이터를 저장하고 추후에 사용할 수 있게 해주는 저장공간- 이름 - 값 구성 변수 이름 = 저장할 값a = 100b = 10 변수 이름 규칙- 영문자 + 숫자(혹은 언더바)의 형식 사용💥 주의할 점- 숫자

rlory.tistory.com

 

 

0311

[ 데이터 분석을 위한 Tool Python ]

더보기

파이썬 수업 얼른 배우고 싶었는데! 드디어 실강이 시작됐다!

파이썬 강사님 의지 + 실무 중시 가 보이셔서 수업이 기대가 된다. 많은 걸 얻어 갈 수 있는 시간이 되길!!!!!!!!

강사님은 jupyter notebook 환경을 사용하셨지만.. 나는 VSC를 사용..! 아무래도.. 좀 더 편한 ..ㅎ.. 수업진행하느데 문제가 없다고 하셔서 VSC로 실습해야겠다!

 

 

 

정수형 실수형 (Float)
크기 제한이 없음 소수점 아래를 표현
일반적인 수학 연산 기능 정수와의 연산도 지원

 

숫자형변환

: 숫자형 데이터 타입은 서로 변환 가능!

ex) 정수를 실수로 변환

ex) 실수를 정수로 변환 -> 데이터 소수점이 날아감! 따라서 치명적인 문제가 발생할 수 있음

 

 

숫자형 연산

- 몫 : //

- 나머지 : %

- 제곱 : **

 


 

 

문자형 (String)

: 문자열은 덧셈만 지원!

  하지만, 문자열 자체에 특정 횟수를 *하는 경우 가능 (반복)

 

 

문자열 슬라이싱

0 1 2 3 4
h e l l o
-5 -4 -3 -2 -1

 

# data가 문자형인 경우 ...

data = '10kg'

int(data[0:2]) / 1000

 

 

대소문자 변환

upper( ) : 문자열을 대문자로 변환

lower( ) : 문자열을 소문자로 변환

capitalize( ) : 첫 글자만 대문자로 변환

 

 

문자열 검색

find( ) : 특정 문자열의 시작 위치 반환 ( 없는 경우, 1 반환 )

count( ) : 특정 문자열이 몇 번 등장하는지 반환

text = "hello world, hello Python"

print(text.find("world"))	#6
print(text.find("java"))	# -1반환 : 부정(없음)
print(text.count("o"))		#4

 

 

문자열 교체

replace( )

: 특정 부분 문자열을 다른 문자열로 교체(지울때 ..)

 

문자열 분리/결합

split( )

: 특정 구분자를 기준으로 문자열 나눔 -> 리스트로반환 

join( )

: 리스트 같은 반복 가능한 객체를 문자열로 결합

 

 

공백 제거

strip( )

: 문자열 양쪽의 공백 제거

  띄어쓰기 지양!!!!!!!!!!!

lstrip( ) rstrlip( ) 
왼쪽 공백 제거 오른쪽 공백 제거

 

 

문자열 포함 여부

: in, not in

text = "Hello, Python"
print("Python" in text)     # True
print("Java" not in text)   # True

 

 


 

리스트

: 여러 개의 데이터의 하나의 변수에 저장할 수 있는 자료형

 

 

리스트 값 추가/제거

append( value )

: 리스트의 끝에 값 추가

 

remove( )

: 리스트의 지정된 값 제거

pop( )

: 가장 마지막에 있는 데이터 뽑기!

clear( )

: 모든 리스트 값 제거

 

리스트 정렬

sort( )

: 리스트를 오차순으로 정렬

reverse( )

: 리스트 뒤집음

만약 내림차순으로 정렬시? -> sort()한 후, reverse()

 

 

 


딕셔너리형 (dict)

키(key) - 값(value) 구성

키 중복 x

person = {"name": "Alice", "age": 25}`

# 값 추가
person["city"] = "US"

# 값 삭제
del person["city"]	# 특정 키 삭제
person.clear()		# 모든 키-값 삭제

 

 

[ 딕셔너리 주요 메서드 ! ]

keys( ) values( ) items( )

 


 

튜플

: 변경이 불가능!  -> 직접 수정 x

: 소괄호( ) 사용

 

 

💥 리스트와 튜플의 차이점

 

 

0312
 

[커널 아카데미] 데이터 분석 부트캠프 18기_ Python 제어문 (if문)

if문: 조건의 참과 거짓을 판단하여 동작 수행: 들여쓰기 주의하기 !: 수행하지 않고 넘어가는 겨우 -> pass 사용if - elif - elseif 조건문1 : 수행문1 elif 조건문2: 수행문1 else: 수행문1 실습) 가위바위

rlory.tistory.com

 

 

 

[커널 아카데미] 데이터 분석 부트캠프 18기_ Python 제어문 (while문)

while문: 특정 조건이 지속될 때까지 반복하여 수행 while문 강제로 빠져 나가기: while은 조건이 거짓이 되면 끝나는데, 중간에 특정 조건에 때문에 빠져 나가고 싶은 경우! --> break를 사용 특정 조

rlory.tistory.com

 

 

[커널 아카데미] 데이터 분석 부트캠프 18기_ Python 제어문 (for문)

for문: 가장 많이 쓰는 반복문 !! ★: 리스트/튜플/문자열의 첫번쨰 요소부터 마지막 요소까지 차례때로 변수를 받아 반복적으로 수행문 실행 for 변수 in 리스트/튜플/문자열 : 수행문 🚀 range함

rlory.tistory.com

 

 

0313

[ 데이터 분석을 위한 Tool Python ]

더보기

set 집합형

: 중복을 허용하지 않은 데이터 타입

: ( ) 소괄 사용

 

중복 제거 순서 없음 변경 가능 다양한 자료형
동일 값 여러번 저장 x     리스트, 딕셔너리 포함 불가

 

 

[ 집합형 주요 메서드 ! ]

add( )

-> append( ) 헷갈리지 않기
remove( ) discard( )

 

 

반복문에서 자주 사용되는 함수

range( start, stop, step )

enumerate( )

: 리스트/문자열 순회하며 인덱스와 값을 동시 반환 

fruits = ["apple", "banana", "cherry"]
for index, fruit in enumerate(fruits):
    print(index, fruit)

 

zip( )

: 여러 시퀀스를 동시에 순회

names = ["Alice", "Bob", "Charlie"]
ages = [25, 30, 35]
for name, age in zip(names, ages):
    print(f"{name} is {age} years old.")

 

reversed( )

: 리스트/문자열 역순으로 순회

 

 


예외처리 ( try - except )

: 프로그램 실행 중 발생할 수 있는 오류(예외)를 처리하여, 프로그램이 중단되지 않고 계속 실행되도록 함!

: except 여러개 사용 가능

# 기본구조
try:
	실행 코드
except 예외종류:
	예외 발생 시 실행할 코드

 

try:
    num = int(input("숫자를 입력하세요: "))
    print(f"입력한 숫자는 {num}입니다.")
except ValueError:
    print("올바른 숫자를 입력해주세요.")

 

 

🤔 전체 상황에 대해 오류 처리하는 경우는?

Exception as e

 

finally( )

: 오류 발생 여부와 상관없이 항상 실행. 무조건 실행!

 

 

[ 주요 예외 종류 ]

ValueError KeyError IndexError
잘못된 값 입력 딕셔너리에 존재하지 않는 키 참조 시 리스트의 잘못된 인덱스 참조 시

 

 

 


함수 (def)

: 코드를 재사용하기 위해 사용

def name():
	print("함수 생성")

 

 

외장함수 사용시

: import로 불러오기 !

 

[ 주요 외장함수 종류 ]

math random * datetime
os sys json

* datetime은 from datetime import datetime 으로 사용하기

 

 


클래스

: 객체(Object)를 생성하는데 사용

: 하나의 틀과 같은 역할을 하며, 데이터 저장도 가능!

 

vs 함수 : 특정 기능을 수행하는 일련의 코드블럭

클래스 > 함수 !!!

 

class 클래스이름:
    def __init__(self, 속성1, 속성2):		# 생성자 함수 - 변수 초기화
        self.속성1 = 속성1
        self.속성2 = 속성2

    def 메서드이름(self):
        실행할 코드