df.dot(other)
dot()은 “사칙연산처럼 alignment를 해주지 않는다
axis 개념 없음
선형대수(Matrix multiplication) 연산
(행렬 곱)
(df1의 열) == (df2의 행)
조건:
1. shape 조건 - df1의 열 개수와 df2의 행 개수가 맞아야 함
2. index / column 조건
언제 사용하나?
가중합 계산
scores = pd.DataFrame({
"math": [80, 90],
"english": [70, 85]
})
weights = pd.Series({
"math": 0.6,
"english": 0.4
})
scores.dot(weights)
행(row)과 열(column)을 서로 바꾸는 것
.T
언제 사용하나?
행렬곱(dot, @ - NumPy)
공분산/상관계산
벡터 방향 맞출 때
feature x weight 계산
DataFrame.round(decimals=0, args, kwargs)
decimals = 0 - 기본값, 일의 자리 까지 반올림
decimals > 0 - 양수인 경우 소수 n번째 자리까지 반올림
decimals < 0 - 양수인 경우 10의 n승 자리 까지 반올림
DataFrame.sum(axis=None, skipna=None, level=None, numeric_only=None, min_count=0, kwargs)
객체의 행이나 열의 곱을 구하는 메서드
각 요소의 절댓값을 반환하는 메서드
숫자의 경우 절댓값을 반환하며, 복소수의 경우 복소수의 크기가 반환
DataFrame.rank(axis=0, method='average', numeric_only=None, na_option='keep', ascending=True, pct=False)
축에 대해서 순위를 매기는 메서드
DataFrame.diff(periods=1, axis=0)
한 객체 내에서 열과 열 / 행과 행의 차이를 출력하는 메서드
DataFrame.expanding(min_periods=1, center=None, axis=0, method='single')
행이나 열의 값에 대해 누적으로 연산을 수행
ex) df.expanding().sum()
DataFrame.rolling(window, min_periods=None, center=False, win_type=None, on=None, closed=None, method='single')
현재 열에 대하여 일정크기의 창(window)를 이용하여 그 window 안의 값을 추가 메서드를 통해 계산 하는 메서드
직관적인 예:
[10, 20, 30, 40, 50]
window = 3 이면
(10,20,30)
(20,30,40)
(30,40,50)
이 각 묶음마다 평균/합/최대값 등을 구함