Numpy, Pandas 복습
배열, 데이터프레임의 속성과 메소드
새롭게 알게된 것, 자주 헷갈리는 것 위주로 정리
spl = [[1, 2, 3],
[4, 5, 6]]
spl_arr = np.array(spl)
spl_arr.shape # (2, 3)
list1 = [[[1, 2, 3],
[4, 5, 6]],
[[7, 8, 9],
[10, 11, 12]]]
arr1 = np.array(list1)
arr1.shape # (2, 2, 3)

spl = np.array([[1, 2, 3],
[4, 5, 6],
[7, 8, 9]])
# `배열[[행 관련 정보], [열 관련 정보]]`
print(spl[[0, 1], : ] # 열 관련 정보가 생략됨. : 놓어두면 전체 조회.
# [[1 2 3] 첫번째, 두번째 행만 출력된다.
[4 5 6]]
# 행 관련 정보를 생략하고 싶을 때는 꼭 : 를 넣어줘야하고, 열 관련 정보를 생략할 땐 :도 생략할 수 있다.
# print(a[,]) # SyntaxError: invalid syntax
# print(a[:]) 혹은 print(a[:,]) # 전체 출력됨. 뒤가 생략된 것
# print(a[]) # SyntaxError: invalid syntax
inplace=True 옵션을 주거나, 반환된 결과를 별도의 변수로 받아줘야한다. df.set_index() : 일반 열을 인덱스로 설정df.index.name=None : 인덱스 이름 삭제df.reset_index() : 행 번호에 기반한 정수값으로 인덱스 초기화drop=True : 기존 인덱스열을 버림df.rename(columns = {'index' : '바꾸고싶은 이름'}, inplace=True)df.dtypes : column들의 자료형 확인
object임(string아니다!)df.info() : 각 column의 자료형, 갯수, null 여부 등 확인
df.describe() : 기술통계 확인 (갯수, 평균, 표준편차, 최대최소, 사분위값 등)
df[col1].describe(), df[[col1, col2]].describe()df.sort_values(by=['col1','col2'], ascending=True) : 정렬ascending = True : default, 오름차순ascending = False : 내림차순df['col1'].value_counts() : 범주형 열 'col1'의 고윳값 갯수 확인
normalize=True : 비율로 결과 제공dropna=True : NaN 제외하고 계산df['col1'].mode() : 최빈값 확인
df.sum() == df.sum(axis=0) : 각 열의 모든 행을 더함
df.sum(axis=1) : 각 행의 모든 열을 더함
인자로 들어가는 axis가 연산의 대상이 된다.
type(df['col1']) # series
type(df[ ['col1'] ]) # dataframe
# 리스트로 컬럼을 묶었다는건, 여러 개의 컬럼을 가질 수 있다(=dataframe)는 가능성을 의미한다고 생각하기
Bit : Binary Digit
Byte : 정보 교환의 기본 단위
따라서 8의 약수나 배수를 사용하는 4bit나 16진수를 활용하면 컴퓨터가 10진수보다 1byte의 범위를 구분하기 쉬워진다.
ASCII 코드 : 미국정보교환표준부호
유니코드 : 아스키코드로 표현할 수 없는 언어의 문자를 표현하기 위해 만들어짐.