판다스
: 판다스는 데이터 분석과 관련된 다양한 기능을 제공하는 파이썬 라이브러리입니다.
데이터 만들기
# 1. 판다스 라이브러리 불러오기
import pandas as pd
# 2. 데이터 프레임 만들기
df = pd.DataFrame( # df라는 변수에 데이터 프레임을 담아 줍니다.
{"a" : [4 ,5, 6, 7], # 열 이름을 지정해 주고 시리즈 형태로 데이터를 저장합니다.
"b" : [8, 9, 10, 11],
"c" : [12, 13, 14, 15]},
index = [1, 2, 3, 4]) # 인덱스는 1,2,3으로 정해 줍니다.
# 3. 데이터 프레임 출력
df
# 4. 데이터의 열 이름을 따로 지정해서 만들기
df = pd.DataFrame(
[[4, 8, 12],
[5, 9, 13],
[6, 10, 14],
[7, 11, 15]],
index=[1, 2, 3, 4],
columns=['a', 'b', 'c']) # 열 이름을 따로 정해줄 수 있습니다.
df
# 5. 인덱스가 두 개인 데이터 프레임 만들기
df = pd.DataFrame(
{"a" : [4 ,5, 6, 7],
"b" : [8, 9, 10, 11],
"c" : [12, 13, 14, 15]},
index = pd.MultiIndex.from_tuples( # 인덱스를 튜플로 지정합니다.
[('d', 1), ('d', 2), ('e', 1), ('e', 2)],
names=['n', 'v'])) # 인덱스 이름을 지정합니다.
df
데이터 정렬하기
# 6. 특정 열의 값을 기준으로 정렬하기
df.sort_values('a', ascending=False) # ascending=False를 적어주면 역순으로 정렬합니다.
# 7. 열 이름 변경하기
df.rename(columns = {'c':'d'}) #c 열의 이름을 d로 변경합니다.
# 8. 인덱스 값 초기화하기
df.reset_index()
# 9. 인덱스 순서대로 정렬하기
df.sort_index()
# 10. 특정 열 제거하기
df.drop(columns=['a', 'b'])
행 추출하기
# 11. 맨 위의 행 출력하기
df.head(2) # 2행을 출력합니다
# 12. 맨 아래 행 출력하기
df.tail(2) # 2행을 출력합니다.
# 13. 특정 열의 값을 통해 추출하기
df[df["a"] > 4] # a열 중 4보다 큰 값이 있을 경우 해당 행을 추출합니다.
# 14. 특정 열에 특정 값이 있을 경우 추출하기
df[df["a"] == 6] # a열 중 6이 있을 경우 해당 행을 추출합니다.
# 15. 특정 열에 특정 값이 없을 경우 추출하기
df[df["a"] != 5] # a열 중 5가 없을 경우 해당 행을 추출합니다.
# 16. 특정 열에 특정 숫자가 있는지 확인하기
df[df['a'].isin([4])] # 원하는 숫자를 리스트([int]) 형식으로 써줍니다.
# 17. 특정 비율로 데이터 샘플링하기
df.sample(frac=0.75) # 실행할 때마다 정해진 비율 만큼 랜덤하게 추출합니다.
# 18. 특정 개수 만큼 데이터 샘플링하기
df.sample(n=3) # 실행할 때마다 n에서 정한 만큼 랜덤하게 추출합니다.
# 19. 특정 열에서 큰 순서대로 불러오기
df.nlargest(3,'a') # a열에서 큰 순서대로 3개를 불러와 보겠습니다.
# 20. 특정 열에서 작은 순서대로 불러오기
df.nsmallest(3,'a') # a열에서 작은 순서대로 3개를 불러와 보겠습니다.
열 추출하기
# 21.인덱스의 범위로 불러오기
# 0부터 세므로 첫 번째 줄은 인덱스 0, 4째 줄은 인덱스 3이 됩니다.
df.iloc[1:4] # [a:b]의 경우 a 인덱스부터 b-1인덱스까지 불러오라는 의미입니다.# a열에서 큰 순서대로 3개를 불러와 보겠습니다.
# 22.첫 인덱스를 지정해 불러오기
df.iloc[2:] # [a:]는 a인덱스부터 마지막 인덱스까지 불러오라는 의미입니다.
# 23.마지막 인덱스를 지정해 불러오기
df.iloc[:3] # [:b]는 처음부터 b-1 인덱스까지 불러오라는 의미입니다.
# 24.모든 인덱스를 불러오기
df.iloc[:] # [:]는 모든 인덱스를 불러오라는 의미입니다.
# 25.특정 열을 지정하여 가져오기
df[['a', 'b']] # a열과 b열을 가져오라는 의미입니다.
# 26.조건을 만족하는 열 가져오기
df.filter(regex='c') # 열 이름에 c라는 문자가 포함되어 있으면 출력하라는 의미입니다.
# 27.특정 문자가 포함되지 않는 열 가져오기
df.filter(regex='^(?!c$).*') # 열 이름에 c라는 문자가 포함되어 있지 않으면 출력하라는 의미입니다.
'이론 > 데이터 분석을 위한 판다스' 카테고리의 다른 글
데이터 가공하기 (0) | 2023.03.02 |
---|---|
데이터 변환하기 (0) | 2023.02.21 |
데이터 정렬하기2 (0) | 2023.02.14 |