BDA

[BDA] 2주차 파이썬 기초, 판다스 복습

getfeelingsfrom 2025. 9. 29. 19:07

 

이번 주 BDA학회(빅데이터 분석 학회)에서는 파이썬 기본 자료형 중에서 가장 자주 사용되는 리스트와 딕셔너리를 공부했습니다. 또한 Pandas 라이브러리의 데이터 프레임을 중심으로 실습을 진행했는데요. CSV 파일을 불러와서 탐색, 집계, 조회에 대한 기능을 활용해보았습니다. 아래에 배운 걸 정리해보도록 하겠습니다 .

 


 

✅ 리스트 (List)

리스트는 대괄호 []로 선언하며, 여러 데이터를 순서대로 담을 수 있습니다.

 
list_a = [1, 2, 3, 4, 5] # 리스트 생성
print(list_a) # 조회-> 코드 셀 안에서 화면의 결과를 출력하기 위해 사용 
display(list_a) # print 대신 display() 사용 가능

🔹 range 함수

range(시작값, 끝값, 증가값) 형태로 연속된 숫자를 쉽게 만들 수 있습니다.

  • 시작값 생략 → 0부터 시작
  • 증가값 생략 → 1씩 증가
  • 끝값은 포함하지 않음
 
range(1, 12, 2) # 1부터 11까지 2씩 증가

🔹 인덱스 & 슬라이싱

  • 인덱스는 0부터 시작
  • 음수(-1) 사용 시 뒤에서부터 조회
  • 슬라이싱은 리스트[시작:끝] (끝 인덱스는 포함 안 됨)
 
a = [10, 20, 30, 40, 50] print(a[0:3]) # [10, 20, 30]

 

🔹 리스트 수정/삭제

 
a = [23, 3, 16, 45, 11] 
# 값 추가
a.append(99) 
append a = a + [100] # 리스트 더하기 

# 값 수정 
a[2] = 34 

# 값 삭제 
del a[2] # 인덱스로 삭제 
a.remove(45) # 값으로 삭제

✅ 딕셔너리 (Dictionary)

딕셔너리는 key : value 구조로 데이터를 저장하는 자료형입니다. 중괄호 {}로 선언합니다.

 
dict_a = { 'v1': 32, 'l1': [1, 2, 3], 'd1': {'a': 1, 'b': 2} }

🔹 조회

 
print(dict_a['v1']) # 키로 값 조회

🔹 메서드 활용

 
dict_a.keys() # 키 조회 
dict_a.values() # 값 조회 
dict_a.items() # (키, 값) 쌍 조회

🔹 수정/삭제

 
dict_a['v2'] = 500 # 추가
dict_a['v2'] = 300 # 수정 
del dict_a['v2'] # 삭제
 
 
 

 

✅ 1. CSV 파일 읽어오기

read_csv() 함수를 사용하여 CSV파일에서 데이터를 불러옵니다.

 
파일 속 데이터의 양이 많으니 head() 함수를 사용하여 상위 n개의 데이터만 확인합니다. 
 
import pandas as pd # 데이터 불러오기 
path = 'https://raw.githubusercontent.com/DA4BAM/dataset/master/titanic_simple.csv' 
data = pd.read_csv(path) 
# 상위 5행 확인 
data.head(5)

 


✅ 2. 데이터프레임 탐색

불러온 데이터의 크기, 열 정보, 자료형, 누락된 값을 확인하는 단계인데요.

확인된 내용을 통해 전처리 필요 여부를 판단합니다.

 
# 데이터프레임의 크기 확인 
data.shape # (행, 열)값을 갖는 튜플 형태로 확인 가능 

# 열 이름 확인 
data.columns 

# 자료형 및 결측치 확인 
data.info()

#값 정보 확인(저장하면 2차원 numpy 배열이 됨)
data.values

#열 정보 확인
data.columns

#열 자료형 확인
data.dtypes

#열에 대한 상세한 정보 확인
data.info()

 

또한 head(), tail()을 통해 앞/뒤 데이터를 살펴볼 수 있습니다.

개수를 지정하지 않으면 기본적으로 5개의 행이 조회됩니다. 

# 상위 10개 행 데이터
data.head(10) #앞에서부터 10개 

# 하위 3개 행 데이터
data.tail(3) #끝에서부터 3개

 


✅ 3. 기본 집계

데이터를 더 잘 이해하기 위해 합계, 평균, 최댓값, 최솟값, 고유값 등을 확인했습니다.

 
# 고유값 확인 
data['MaritalStatus'].unique() #범주형 열인지 확인할 때 사용 

# 고유값 개수 확인 
data['MaritalStatus'].value_counts() #value별로 count

# 기본 집계 
data['MonthlyIncome'].sum() #열 합계 조회
data['MonthlyIncome'].max() #열 최대값 조회 
data[['Age', 'MonthlyIncome']].mean() #열 평균 값 확인 
data[['Age', 'MonthlyIncome']].median() # 열 중앙값 확인

✅ 4. 데이터프레임 조회

보고자하는 데이터를 바로바로 확인하기 위해 꼭 필요한 문법입니다. 

🔹 특정 열 조회

조회할 열이 여러개라면 열 이름을 리스트로 지정하고, 조회할 열이 하나면 리스트 형태가 아니어도 됩니다. 

열 부분은 생략할 수 있지만 행 부분은 생략할 수 없으므로 주의해야돼요! 

 

# 단일 열 조회 
data['Attrition'] #시리즈로 조회

# 여러 열 조회 
data[['Attrition', 'Age']] #데이터 프레임으로 조회

 

🔹 조건으로 조회

datafram.loc[조건] 형태로 조건을 지정하여 조건에 만족하는 데이터만 뽑아서 조회할 수 있습니다. 
# 단일 조건 
data.loc[data['DistanceFromHome'] > 10] 

# 여러 조건 (&, | 사용) 
data.loc[(data['DistanceFromHome'] > 10) & (data['JobSatisfaction'] == 4)] 

#isin() 값이 1, 4인 데이터만 조회
data.loc[data['JobSatisfaction'].isin([1,4])]

#between 값이 25~30까지 범위 안의 데이터만 조회
data.loc[data['Age'].between(25, 30)]

 

 


 

이전에 간단하게 배운 적이 있는 함수부분이라 어렵지 않게 진행할 수 있었습니다. 

복습한다는 생각으로 꼼꼼히 제가 헷갈리던 부분들을 확인하며 공부했습니다~ 

 

데이터분석을 공부할 때 가장 유명하고 많이 쓰인다던 

타이타닉 데이터 셋을 사용하여 실습을 진행하였는데 

 

위 사진과 같이 데이터가 많이 존재하여 원하는 조건대로 다루며 진행하니 재미있었어요 ! 

 

 

 

제가 활동하고 있는 BDA학회 인스타그램인데 , 

여러 공모전이나 대외활동, 스터디 정보도 알려주고 있으니 

팔로잉 하고 정보 받아가면 좋을 것 같아요 ~.~