Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
Tags
- OrdinalEncoder
- GridSearchCV
- 데이터전처리
- 의사결정나무
- 다중선형회귀분석
- scikitlearn
- 하이퍼파라미터
- 로지스틱회귀분석
- DataScience
- 손실함수
- 딥러닝
- time series
- LinearRegression
- 결정계수
- 시계열 데이터
- LogisticRegression
- 단순선형회귀분석
- 지도학습
- machinelearning
- 데이터분석
- dataframe
- 선형회귀분석
- 시계열데이터
- 잔차분석
- Python
- ML
- RegressionTree
- 분류
- 비지도학습
- deeplearning
Archives
- Today
- Total
IE가 어른이 되기까지
[Python] 판다스 (Pandas) 의 DataFrame 연산하기 본문
이번엔 DataFrame 연산과 Groupby에 대해
알아보도록 하겠습니다.
DataFrame 연산
grades_array = np.array([[8,8,9],[10,9,9],[4, 8, 2], [9, 10, 10]])
grades = pd.DataFrame(grades_array, columns=["sep", "oct", "nov"], index=["alice","bob","charles","darwin"])
grades
이를 위해 'grades'라는 DataFrame을
생성해 보았습니다.
1. Numpy 함수 적용
import numpy as np
np.sqrt(grades)
DataFrame에 numpy 함수를 적용하면
모든 값에 'sqrt (제곱근)'이라는 함수가 적용됩니다.
2. 산술연산 (*, /, ** 등) 과 조건연산 (>, ==, 등) 적용
grades >= 5
곱하기, 나누기, 제곱, 덧셈, 뺄셈과 같은 산술연산과
조건연산도 마찬가지로 모든 값에 적용됩니다.
3. 집계 연산 (mean, max, min, sum, all, any 등)
집계연산은 각 Numpy와 산술연산, 조건연산과 달리
각 열에 적용되며 Series 객체가 반환됩니다.
grades.mean()
grades.values.mean()
각 열에 대한 평균을 구하고 싶다면 .mean( )을
전체 값에 대한 평균을 구하고 싶다면 .values.mean( )을 적용하면 됩니다.
(grades > 5).all()
(grades > 5).all(axis = 1)
all을 통해 행이나 열의 True / False 값을 반환할 수 있습니다.
.all( ) 을 통해 모든 학생의 점수가 5 초과인 월을 찾을 수 있었고.
여기에 axis = 1을 부여하면 점수가 매달 점수가 5 초과였던 학생을 찾을 수 있습니다.
(grades == 10).any(axis = 1)
any는 하나라도 참이면 True를 반환합니다.
이를 통해 한 번이라도 10점을 받았던 학생을 찾을 수 있습니다.
4. 응용하기
grades - grades.mean()
이를 통해 각 값에 해당 열의 평균을 뺄 수 있습니다.
'DATA SCIENCE > Python' 카테고리의 다른 글
[Python] 판다스 (Pandas) 의 DataFrame 조인 및 연결하기 (0) | 2023.01.04 |
---|---|
[Python] 판다스 (Pandas) 의 DataFrame 그룹핑하기 (0) | 2023.01.04 |
[Python] 판다스 (Pandas) 의 DataFrame 정렬하기 (0) | 2023.01.04 |
[Python] 판다스 (Pandas) 의 DataFrame 행과 열 다루기 (0) | 2023.01.03 |
[Python] 판다스 (Pandas) 의 DataFrame 만들기 (0) | 2023.01.03 |
Comments