본 내용을 보기 전에 Python 사전 준비 및 Python 완전 기초를 먼저 이해하셔야 합니다.
본 포스팅은 pandas 공식 홈페이지를 기반으로 작성하였습니다.
2021.08.15 - [Python/Pandas 기초익히기] - Pandas에서 플롯 생성 방안에서 사용한 실습 데이터를 계속 사용하겠습니다.
import pandas as pd
air_quality = pd.read_csv("D:/python_exer/air_quality_no2.csv", index_col=0, parse_dates=True)
air_quality.head()
런던 스테이션의 NO2 농도를 mg/m3으로 표현하려고 하면 어떻게 해야 할까요?
(온도 25도, 기압 1013hPa라고 가정하면 환산계수는 1.882)
아래와 같은 방법으로 신규 columne을 생성하면 됩니다.
air_quality["london_mg_per_cubic"] = air_quality["station_london"] * 1.882
air_quality.head()
새 column을 만들려면 할당 왼쪽에 새 column 이름과 함께 [] 대괄호를 사용합니다. (Note: 값 계산은 element_wise로 수행됩니다. 이는 주어진 열의 모든 값에 한 번에 1.882 값을 곱한다는 의미입니다. 각 행을 반복하기 위해 루프를 사용할 필요가 없습니다!)
파리 대 앤트워프 값의 비율을 확인하고 결과를 새 열에 저장하고자 한다면, 아래와 같이 실행하시면 됩니다.
air_quality["ratio_paris_antwerp"] = air_quality["station_paris"] / air_quality["station_antwerp"]
air_quality.head()
계산은 다시 요소별로 이루어지므로 / (나누기) 연산이 각 행의 값에 적용됩니다. 또한 다른 수학 연산자(+, -, *, /) 또는 논리 연산자(<, >, =,…)는 요소별로 작동합니다. 후자는
2021.08.14 - [Python/Pandas 기초익히기] - Pandas 데이터프레임의 부분 데이터 세트 선택 방법에서 이미 사용했습니다(조건식을 사용하여 테이블의 행을 필터링한 결과를 하위 집합 데이터로 생성). 더 고급 로직이 필요한 경우 apply()를 통해 임의의 Python 코드를 사용할 수 있습니다.
데이터 열의 이름을 openAQ에서 사용하는 해당 스테이션 식별자로 바꾸고 싶습니다.
air_quality_renamed = air_quality.rename(
____________________________columns={
__________________________________________"station_antwerp": "BETR801",
__________________________________________"station_paris": "FR04014",
__________________________________________"station_london": "London Westminster",
________________________________________}
_____________________________)
air_quality_renamed.head()
rename() 함수는 행 레이블과 열 레이블 모두에 사용할 수 있습니다. 해당 이름을 업데이트하려면 현재 이름의 키와 새 이름의 값을 딕셔너리 형태로 입력해 주시면 됩니다.
매핑은 고정된 이름으로만 제한되어서는 안 되며 매핑 기능도 될 수 있습니다. 예를 들어 열 이름을 소문자로 변환하는 것도 함수를 사용하여 수행할 수 있습니다.
air_quality_renamed = air_quality_renamed.rename(columns=str.lower)
air_quality_renamed.head()
2. Remember!
- [] 사이에 새 열 이름을 사용하여 출력을 DataFrame에 할당하여 새 열을 만듭니다.
- 작업은 요소별로 이루어지며 행을 반복할 필요가 없습니다.
- 행 레이블이나 열 이름의 이름을 바꾸려면 사전이나 함수와 함께 이름 바꾸기를 사용하십시오.
'Python > Pandas' 카테고리의 다른 글
Pandas 테이블 구조 변경 방법 (0) | 2021.08.18 |
---|---|
Pandas 활용 요약통계량 생성하기 (0) | 2021.08.17 |
Pandas에서 플롯 생성 방안 (0) | 2021.08.15 |
Pandas 데이터프레임의 부분 데이터 세트 선택 방법 (0) | 2021.08.14 |
Pandas 표 데이터 입/출력 및 데이터 확인 (0) | 2021.08.13 |
댓글