gooreumsea 2024. 3. 22. 01:12

인덱싱
A['B'] = A['C'].str[2:7] -> A 테이블에 B컬럼 새롭게 생성, B컬럼에 들어가는 값은, 기존 C컬럼의 3~7번째 문자까지 저장
 
 
matplotlib
◆ plt.xlim([0, 21]) -> 그래프의 x축 범위를 0부터 21까지로 설정
◆ plt.xticks(np.arange(0, 21, 1)) -> x축에 표시되는 틱의 위치와 간격을 지정
plt.xlabel('x축 라밸')
plt.ylabel('y축 라벨')
 
 
집계함수
◆ A.groupby('B')['C'].count().reset_index().sort_values(by='D',ascending=False)

-> 데이터 프레임 A에서,  B컬럼 기준으로 그룹화 하고, 각 그룹 내에서 C의 합계 계산 + 새로운 정수 인덱스 설정 + 내림차순 정렬
 
 
테이블 병합
◆A.merge(B, how='조인 방식', on='키 값이 되는 기준 컬럼')
-> 테이블 A를 B테이블에 조인, 조인 방식은 inner, left, right 등등, 키 값이 되는 컬럼은 A,B 모두에 공통으로 존재하는 컬럼이 대상 
  
 
Series 문법
.nunique() -> 고유 컬럼의 갯수 반환
.unique() -> 고유컬럼 반환
 
 
Numpy 문법
np.random.seed(0) -> 난수를 생성할 때, seed값을 설정하면, 동일한 난수 시퀸스가 설정되어 동일한 결과를 보장할 수 있음.
 
 
 
행, 열, 결측치, 중복값 삭제
A.dropna(axis=0) -> A 테이블의 결측치 row 모두 제거
B.dropna(axis=1) -> B 테이블의 결측치 column 모두 제거

 A.dropna(subset=['B']) ->  A 테이블의 B컬럼에 결측치행 모두 제거

C.drop("D", axis=1) -> C 테이블의 D column만 제거
◆ A.drop_duplicates() -> A테이블에서  상호간 중복인 행을 고유행만 남기고 제거

A.drop_duplicates(subset=['B', 'C']) -> B열과 C열의 조합이 중복되는 행 제거  

 

 

랜덤 샘플링
A.sample(n=382, replace=False, random_state=1)
 - > A 테이블에서 n=382개의 랜덤 샘픔 추출
 - > replace=False- >비복원 추출을 의미하며, 한 번 선택된 데이터는 다시 선택되지 않음
 - > random_state=1은 난수 생성기의 시드 값을 설정, 샘플링 결과의 재현성을 보장
 
 
시간
timestamp 컬럼-> datetime() -> strftime() -> 문자열
A['B'] = pd.to_datetime(A['B']) -> B컬럼을 datetime()함수로 변환
A['B'].dt.strftime('%Y-%m') -> datetime 객체 A['B']를 'YYYY-MM' 형식의 문자열로 재포맷 

 

 

 

값 찾기 loc, iloc

A.loc[A['B'] == 'C', 'D'] = 'E' -> A테이블에서 A테이블 B열의 값이 C인 행들을 찾고 그 행들의 D열 값들을 로 변경

A.loc["B", "C"] -> "A"에 해당하는 행과 라벨 "B"에 해당하는 열이 교차하는 위치에 있는 데이터를 선택하거나 접근하기 위해 사용