01) 넘파이 이용하기
Numpy
import numpy as np
a = np.array([1, 2, '대한민국', '포르투갈'])
b = np.array(['가나', '우루과이', '대한민국', '포르투갈'])
c = np.array([1, 2, 3, 4])
d = np.array([[1, 2, '대한민국', '포르투갈'], [1, 2, 3, 4]])
print(a, b, c) # ['1' '2' '대한민국' '포르투갈'] ['가나' '우루과이' '대한민국' '포르투갈'] [1 2 3 4]
print(type(a), a[0], type(a[0])) # <class 'numpy.ndarray'> 1 <class 'numpy.str_'>
print(type(b), b[0], type(b[0])) # <class 'numpy.ndarray'> 가나 <class 'numpy.str_'>
print(type(c), c[0], type(c[0])) # <class 'numpy.ndarray'> 1 <class 'numpy.int32'>
print(type(d), d[1], type(d[1][0])) # <class 'numpy.ndarray'> ['1' '2' '3' '4'] <class 'numpy.str_'>
출력 결과 리스트 형태로 출력되고 타입은 ndarray이며 배열의 원소 타입을 출력했을 때 숫자로만 이루어진 건 숫자로 출력되지만 섞여있거나 문자열로만 이루어진 경우 문자열로 인식하는 것을 확인할 수 있다.
02) 판다스 이용하기
Pandas
import pandas as pd
# series 생성
s = pd.Series(['대한민국', '포르투갈', '가나', '우루과이'], index=['가', '나', '다', '라'], name="2022 카타르 월드컵 H조")
print(s)
print(type(s))
# 가 대한민국
# 나 포르투갈
# 다 가나
# 라 우루과이
# Name: 2022 카타르 월드컵 H조, dtype: object
# <class 'pandas.core.series.Series'>
# dataframe 생성
## dictionary
df1 = pd.DataFrame({"a":[1, 2, 3], "b":[4, 5, 6], "c":[7, 8, 9]})
print(df1)
print(type(df1))
# a b c
# 0 1 4 7
# 1 2 5 8
# 2 3 6 9
# <class 'pandas.core.frame.DataFrame'>
## list
df2 = pd.DataFrame([[1, 2, 3], [4, 5, 6], [7, 8, 9]], ["a", "b", "c"])
print(df2)
print(type(df2))
# 0 1 2
# a 1 2 3
# b 4 5 6
# c 7 8 9
# <class 'pandas.core.frame.DataFrame'>
실행 결과 행 단위로 생성됨을 알 수 있다.
import pandas as pd
df = pd.read_csv("파일 경로", encoding="cp949")
df
import pandas as pd
## 일부 컬럼만 불러오기
df = pd.read_csv("파일 경로", index_col="사용할 인덱스 컬럼", usecols=['사용할 컬럼 리스트'])
df
index_col로 지정한 칼럼은 usecols에 있어야한다.
import pandas as pd
## 교차테이블(범주형 데이터 2개 비교 분석 시 사용) 생성
df = pd.crosstab(index=범주형데이터1, columns=범주형데이터2)
df
import pandas as pd
df.to_csv("파일 경로")