■ StringMethods 클래스의 rstrip 메소드를 사용해 문자열에서 후행 공백을 제거하는 방법을 보여준다. ▶ main.py
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 32
|
import pandas as pd dataFrame = pd.read_excel("tips.xlsx", index_col = 0) stringMethods1 = dataFrame["time"].str series = stringMethods1.rstrip() stringMethods2 = series.str dataFrame["time_length"] = stringMethods2.len() print(dataFrame) """ total_bill tip sex smoker day time size time_length 0 16.99 1.01 Female No Sun Dinner 2 6 1 10.34 1.66 Male No Sun Dinner 3 6 2 21.01 3.50 Male No Sun Dinner 3 6 3 23.68 3.31 Male No Sun Dinner 2 6 4 24.59 3.61 Female No Sun Dinner 4 6 .. ... ... ... ... ... ... ... ... 239 29.03 5.92 Male No Sat Dinner 3 6 240 27.18 2.00 Female Yes Sat Dinner 2 6 241 22.67 2.00 Male Yes Sat Dinner 2 6 242 17.82 1.75 Male No Sat Dinner 2 6 243 18.78 3.00 Female No Thur Dinner 2 6 [244 rows x 8 columns] """ |
▶ requirements.txt
|
defusedxml==0.7.1 et_xmlfile==2.0.0 numpy==2.1.3 odfpy==1.4.1 openpyxl==3.1.5 pandas==2.2.3 python-calamine==0.2.3 python-dateutil==2.9.0.post0 pytz==2024.2 pyxlsb==1.0.10 six==1.16.0 tzdata==2024.2 xlrd==2.0.1 XlsxWriter==3.2.0 |
※ pip install "pandas[excel]"
더 읽기
■ StringMethods 클래스의 len 메소드를 사용해 DataFrame 객체에 문자열 길이를 갖는 신규 컬럼을 추가하는 방법을 보여준다. ▶ main.py
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
|
import pandas as pd dataFrame = pd.read_excel("tips.xlsx", index_col = 0) stringMethods = dataFrame["time"].str dataFrame["time_length"] = stringMethods.len() print(dataFrame) """ total_bill tip sex smoker day time size time_length 0 16.99 1.01 Female No Sun Dinner 2 6 1 10.34 1.66 Male No Sun Dinner 3 6 2 21.01 3.50 Male No Sun Dinner 3 6 3 23.68 3.31 Male No Sun Dinner 2 6 4 24.59 3.61 Female No Sun Dinner 4 6 .. ... ... ... ... ... ... ... ... 239 29.03 5.92 Male No Sat Dinner 3 6 240 27.18 2.00 Female Yes Sat Dinner 2 6 241 22.67 2.00 Male Yes Sat Dinner 2 6 242 17.82 1.75 Male No Sat Dinner 2 6 243 18.78 3.00 Female No Thur Dinner 2 6 [244 rows x 8 columns] """ |
▶ requirements.txt
|
defusedxml==0.7.1 et_xmlfile==2.0.0 numpy==2.1.3 odfpy==1.4.1 openpyxl==3.1.5 pandas==2.2.3 python-calamine==0.2.3 python-dateutil==2.9.0.post0 pytz==2024.2 pyxlsb==1.0.10 six==1.16.0 tzdata==2024.2 xlrd==2.0.1 XlsxWriter==3.2.0 |
더 읽기
■ DatetimeProperties 클래스의 to_period 메소드를 사용해 DataFrame 객체에서 두 날짜 컬럼 값 사이의 월 수를 갖는 신규 컬럼을 추가하는 방법을 보여준다. ▶
더 읽기
■ MonthBegin 클래스를 사용해 DataFrame 객체에서 날짜 컬럼의 값을 기준으로 다음 달 시작일을 갖는 신규 컬럼을 추가하는 방법을 보여준다. ▶ main.py
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
|
import pandas as pd dataFrame = pd.read_excel("tips.xlsx", index_col = 0) dataFrame["date1"] = pd.Timestamp("2013-01-15") dataFrame["date1_next" ] = dataFrame["date1"] + pd.offsets.MonthBegin() print(dataFrame) """ total_bill tip sex smoker day time size date1 date1_next 0 16.99 1.01 Female No Sun Dinner 2 2013-01-15 2013-02-01 1 10.34 1.66 Male No Sun Dinner 3 2013-01-15 2013-02-01 2 21.01 3.50 Male No Sun Dinner 3 2013-01-15 2013-02-01 3 23.68 3.31 Male No Sun Dinner 2 2013-01-15 2013-02-01 4 24.59 3.61 Female No Sun Dinner 4 2013-01-15 2013-02-01 .. ... ... ... ... ... ... ... ... ... 239 29.03 5.92 Male No Sat Dinner 3 2013-01-15 2013-02-01 240 27.18 2.00 Female Yes Sat Dinner 2 2013-01-15 2013-02-01 241 22.67 2.00 Male Yes Sat Dinner 2 2013-01-15 2013-02-01 242 17.82 1.75 Male No Sat Dinner 2 2013-01-15 2013-02-01 243 18.78 3.00 Female No Thur Dinner 2 2013-01-15 2013-02-01 [244 rows x 9 columns] """ |
더 읽기
■ DatetimeProperties 클래스의 year/month/day 속성을 사용해 DataFrame 객체 컬럼의 값을 설정하는 방법을 보여준다. ▶ main.py
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 32
|
import pandas as pd dataFrame = pd.read_excel("tips.xlsx", index_col = 0) dataFrame["date1"] = pd.Timestamp("2013-01-15") datetimeProperties = dataFrame["date1"].dt dataFrame["date1_year" ] = datetimeProperties.year dataFrame["date1_month"] = datetimeProperties.month dataFrame["date1_day" ] = datetimeProperties.day print(dataFrame) """ total_bill tip sex smoker day time size date1 date1_year date1_month date1_day 0 16.99 1.01 Female No Sun Dinner 2 2013-01-15 2013 1 15 1 10.34 1.66 Male No Sun Dinner 3 2013-01-15 2013 1 15 2 21.01 3.50 Male No Sun Dinner 3 2013-01-15 2013 1 15 3 23.68 3.31 Male No Sun Dinner 2 2013-01-15 2013 1 15 4 24.59 3.61 Female No Sun Dinner 4 2013-01-15 2013 1 15 .. ... ... ... ... ... ... ... ... ... ... ... 239 29.03 5.92 Male No Sat Dinner 3 2013-01-15 2013 1 15 240 27.18 2.00 Female Yes Sat Dinner 2 2013-01-15 2013 1 15 241 22.67 2.00 Male Yes Sat Dinner 2 2013-01-15 2013 1 15 242 17.82 1.75 Male No Sat Dinner 2 2013-01-15 2013 1 15 243 18.78 3.00 Female No Thur Dinner 2 2013-01-15 2013 1 15 [244 rows x 11 columns] """ |
▶ requirements.txt
|
defusedxml==0.7.1 et_xmlfile==2.0.0 numpy==2.1.3 odfpy==1.4.1 openpyxl==3.1.5 pandas==2.2.3 python-calamine==0.2.3 python-dateutil==2.9.0.post0 pytz==2024.2 pyxlsb==1.0.10 six==1.16.0 tzdata==2024.2 xlrd==2.0.1 XlsxWriter==3.2.0 |
※ pip install
더 읽기
■ Timestamp 클래스의 생성자를 사용해 Timestamp 객체를 만드는 방법을 보여준다. ▶ main.py
|
import pandas as pd timestamp = pd.Timestamp("2013-01-15") print(timestamp) """ 2013-01-15 00:00:00 """ |
▶ requirements.txt
|
numpy==2.1.2 pandas==2.2.3 python-dateutil==2.9.0.post0 pytz==2024.2 six==1.16.0 tzdata==2024.2 |
※ pip install pandas 명령을 실행했다.
■ where 함수를 사용해 특정 조건에 따라 값을 설정하는 DataFrame 객체의 신규 컬럼을 추가하는 방법을 보여준다. ▶ main.py
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
|
import pandas as pd import numpy as np dataFrame = pd.read_excel("tips.xlsx", index_col = 0) dataFrame["bucket"] = np.where(dataFrame["total_bill"] < 10, "low", "high") print(dataFrame) """ total_bill tip sex smoker day time size bucket 0 16.99 1.01 Female No Sun Dinner 2 high 1 10.34 1.66 Male No Sun Dinner 3 high 2 21.01 3.50 Male No Sun Dinner 3 high 3 23.68 3.31 Male No Sun Dinner 2 high 4 24.59 3.61 Female No Sun Dinner 4 high .. ... ... ... ... ... ... ... ... 239 29.03 5.92 Male No Sat Dinner 3 high 240 27.18 2.00 Female Yes Sat Dinner 2 high 241 22.67 2.00 Male Yes Sat Dinner 2 high 242 17.82 1.75 Male No Sat Dinner 2 high 243 18.78 3.00 Female No Thur Dinner 2 high [244 rows x 8 columns] """ |
▶ requirements.txt
|
defusedxml==0.7.1 et_xmlfile==2.0.0 numpy==2.1.3 odfpy==1.4.1 openpyxl==3.1.5 pandas==2.2.3 python-calamine==0.2.3 python-dateutil==2.9.0.post0 pytz==2024.2 pyxlsb==1.0.10 six==1.16.0 tzdata==2024.2 xlrd==2.0.1 XlsxWriter==3.2.0 |
더 읽기
■ read_excel 함수의 index_col 인자를 사용해 엑셀 파일 데이터를 로드하는 방법을 보여준다. ▶ main.py
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
|
import pandas as pd dataFrame = pd.read_excel("tips.xlsx", index_col = 0) print(dataFrame) """ total_bill tip sex smoker day time size 0 16.99 1.01 Female No Sun Dinner 2 1 10.34 1.66 Male No Sun Dinner 3 2 21.01 3.50 Male No Sun Dinner 3 3 23.68 3.31 Male No Sun Dinner 2 4 24.59 3.61 Female No Sun Dinner 4 .. ... ... ... ... ... ... ... 239 29.03 5.92 Male No Sat Dinner 3 240 27.18 2.00 Female Yes Sat Dinner 2 241 22.67 2.00 Male Yes Sat Dinner 2 242 17.82 1.75 Male No Sat Dinner 2 243 18.78 3.00 Female No Thur Dinner 2 [244 rows x 7 columns] """ |
▶ requirements.txt
|
defusedxml==0.7.1 et_xmlfile==2.0.0 numpy==2.1.3 odfpy==1.4.1 openpyxl==3.1.5 pandas==2.2.3 python-calamine==0.2.3 python-dateutil==2.9.0.post0 pytz==2024.2 pyxlsb==1.0.10 six==1.16.0 tzdata==2024.2 xlrd==2.0.1 XlsxWriter==3.2.0 |
※ pip install "pandas[excel]"
더 읽기
■ DataFrame 클래스의 to_excel 메소드를 사용해 엑셀 파일을 생성하는 방법을 보여준다. ▶ main.py
|
import pandas as pd dataFrame = pd.read_table("tips.csv", sep = ",", header = [0]) dataFrame.to_excel("tips.xlsx") |
▶ requirements.txt
|
defusedxml==0.7.1 et_xmlfile==2.0.0 numpy==2.1.3 odfpy==1.4.1 openpyxl==3.1.5 pandas==2.2.3 python-calamine==0.2.3 python-dateutil==2.9.0.post0 pytz==2024.2 pyxlsb==1.0.10 six==1.16.0 tzdata==2024.2 xlrd==2.0.1 XlsxWriter==3.2.0 |
※ pip install "pandas[excel]" 명령을
더 읽기
■ read_table 함수에서 sep/header 인자를 사용해 CSV 파일 데이터를 로드하는 방법을 보여준다. ▶ main.py
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
|
import pandas as pd dataFrame = pd.read_table("tips.csv", sep = ",", header = [0]) # header = [0]는 0번째 행을 헤더로 사용한다. print(dataFrame) """ total_bill tip sex smoker day time size 0 16.99 1.01 Female No Sun Dinner 2 1 10.34 1.66 Male No Sun Dinner 3 2 21.01 3.50 Male No Sun Dinner 3 3 23.68 3.31 Male No Sun Dinner 2 4 24.59 3.61 Female No Sun Dinner 4 .. ... ... ... ... ... ... ... 239 29.03 5.92 Male No Sat Dinner 3 240 27.18 2.00 Female Yes Sat Dinner 2 241 22.67 2.00 Male Yes Sat Dinner 2 242 17.82 1.75 Male No Sat Dinner 2 243 18.78 3.00 Female No Thur Dinner 2 [244 rows x 7 columns] """ |
▶ requirements.txt
|
numpy==2.1.2 pandas==2.2.3 python-dateutil==2.9.0.post0 pytz==2024.2 six==1.16.0 tzdata==2024.2 |
※ pip install pandas
더 읽기
■ read_csv 함수에서 sep/header 인자를 사용해 CSV 파일 데이터를 로드하는 방법을 보여준다. ▶ main.py
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
|
import pandas as pd dataFrame = pd.read_csv("tips.csv", sep = ",", header = [0]) # header = [0]는 0번째 행을 헤더로 사용한다. print(dataFrame) """ total_bill tip sex smoker day time size 0 16.99 1.01 Female No Sun Dinner 2 1 10.34 1.66 Male No Sun Dinner 3 2 21.01 3.50 Male No Sun Dinner 3 3 23.68 3.31 Male No Sun Dinner 2 4 24.59 3.61 Female No Sun Dinner 4 .. ... ... ... ... ... ... ... 239 29.03 5.92 Male No Sat Dinner 3 240 27.18 2.00 Female Yes Sat Dinner 2 241 22.67 2.00 Male Yes Sat Dinner 2 242 17.82 1.75 Male No Sat Dinner 2 243 18.78 3.00 Female No Thur Dinner 2 [244 rows x 7 columns] """ |
▶ requirements.txt
|
numpy==2.1.2 pandas==2.2.3 python-dateutil==2.9.0.post0 pytz==2024.2 six==1.16.0 tzdata==2024.2 |
※ pip install pandas
더 읽기
■ DataFrame 클래스의 sort_values 메소드에서 inplace 인자를 사용해 특정 컬럼을 기준으로 정렬하는 방법을 보여준다. ▶ main.py
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 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50
|
import pandas as pd import numpy as np url = "https://raw.githubusercontent.com/pandas-dev/pandas/main/pandas/tests/io/data/csv/tips.csv" dataFrame = pd.read_csv(url) print(dataFrame) """ total_bill tip sex smoker day time size 0 16.99 1.01 Female No Sun Dinner 2 1 10.34 1.66 Male No Sun Dinner 3 2 21.01 3.50 Male No Sun Dinner 3 3 23.68 3.31 Male No Sun Dinner 2 4 24.59 3.61 Female No Sun Dinner 4 .. ... ... ... ... ... ... ... 239 29.03 5.92 Male No Sat Dinner 3 240 27.18 2.00 Female Yes Sat Dinner 2 241 22.67 2.00 Male Yes Sat Dinner 2 242 17.82 1.75 Male No Sat Dinner 2 243 18.78 3.00 Female No Thur Dinner 2 [244 rows x 7 columns] """ print() dataFrame.sort_values("tip", inplace = True) print(dataFrame) """ total_bill tip sex smoker day time size 92 5.75 1.00 Female Yes Fri Dinner 2 111 7.25 1.00 Female No Sat Dinner 1 67 3.07 1.00 Female Yes Sat Dinner 1 236 12.60 1.00 Male Yes Sat Dinner 2 0 16.99 1.01 Female No Sun Dinner 2 .. ... ... ... ... ... ... ... 141 34.30 6.70 Male No Thur Lunch 6 59 48.27 6.73 Male No Sat Dinner 4 23 39.42 7.58 Male No Sat Dinner 4 212 48.33 9.00 Male No Sat Dinner 4 170 50.81 10.00 Male Yes Sat Dinner 3 [244 rows x 7 columns] """ |
▶ requirements.txt
|
numpy==2.1.2 pandas==2.2.3 python-dateutil==2.9.0.post0 pytz==2024.2 six==1.16.0 tzdata==2024.2 |
※ pip
더 읽기
■ DataFrame 클래스의 dropna 메소드에서 subset/thresh/inplace 인자를 사용해 행을 삭제하는 방법을 보여준다. ▶ main.py
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 32 33 34 35
|
import pandas as pd import numpy as np dataFrame = pd.DataFrame( { "name" : ["김철수", "이영희", np.nan, "정지은"], "age" : [25, np.nan, np.nan, np.nan], "city" : ["서울", "부산", "서울", "대전"], "score" : [85, np.nan, np.nan, 95] } ) print(dataFrame) """ name age city score 0 김철수 25.0 서울 85.0 1 이영희 NaN 부산 NaN 2 NaN NaN 서울 NaN 3 정지은 NaN 대전 95.0 """ print() dataFrame.dropna(subset = ["name", "age", "score"], thresh = 2, inplace = True) print(dataFrame) """ name age city score 0 김철수 25.0 서울 85.0 3 정지은 NaN 대전 95.0 """ |
▶ requirements.txt
|
numpy==2.1.2 pandas==2.2.3 python-dateutil==2.9.0.post0 pytz==2024.2 six==1.16.0 tzdata==2024.2 |
※ pip install pandas
더 읽기
■ DataFrame 클래스의 dropna 메소드에서 subset/how/inplace 인자를 사용해 행을 삭제하는 방법을 보여준다. ▶ main.py
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 32 33 34 35 36
|
import pandas as pd import numpy as np dataFrame = pd.DataFrame( { "name" : ["김철수", "이영희", "박민수", "정지은"], "age" : [25, np.nan, 35, np.nan], "city" : ["서울", "부산", "서울", "대전"], "score" : [85, np.nan, np.nan, 95] } ) print(dataFrame) """ name age city score 0 김철수 25.0 서울 85.0 1 이영희 NaN 부산 NaN 2 박민수 35.0 서울 NaN 3 정지은 NaN 대전 95.0 """ print() dataFrame.dropna(subset = ["age", "score"], how = "all", inplace = True) print(dataFrame) """ name age city score 0 김철수 25.0 서울 85.0 2 박민수 35.0 서울 NaN 3 정지은 NaN 대전 95.0 """ |
▶ requirements.txt
|
numpy==2.1.2 pandas==2.2.3 python-dateutil==2.9.0.post0 pytz==2024.2 six==1.16.0 tzdata==2024.2 |
※ pip install pandas
더 읽기
■ DataFrame 클래스의 dropna 메소드에서 subset/how/inplace 인자를 사용해 행을 삭제하는 방법을 보여준다. ▶ main.py
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 32 33 34
|
import pandas as pd import numpy as np dataFrame = pd.DataFrame( { "name" : ["김철수", "이영희", "박민수", "정지은"], "age" : [25, np.nan, 35, np.nan], "city" : ["서울", "부산", "서울", "대전"], "score" : [85, np.nan, np.nan, 95] } ) print(dataFrame) """ name age city score 0 김철수 25.0 서울 85.0 1 이영희 NaN 부산 NaN 2 박민수 35.0 서울 NaN 3 정지은 NaN 대전 95.0 """ print() dataFrame.dropna(subset = ["age", "score"], how = "any", inplace = True) print(dataFrame) """ name age city score 0 김철수 25.0 서울 85.0 """ |
▶ requirements.txt
|
numpy==2.1.2 pandas==2.2.3 python-dateutil==2.9.0.post0 pytz==2024.2 six==1.16.0 tzdata==2024.2 |
※ pip install pandas
더 읽기
■ DataFrame 클래스의 dropna 메소드에서 subset/inplace 인자를 사용해 특정 컬럼이 NaN 값을 갖는 행을 삭제하는 방법을 보여준다. ▶ main.py
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 32 33 34 35 36
|
import pandas as pd import numpy as np dataFrame = pd.DataFrame( { "name" : ["김철수", "이영희", "박민수", "정지은"], "age" : [25, 30, 35, np.nan], "city" : ["서울", "부산", "서울", "대전"], "score" : [85, 92, 78, 95] } ) print(dataFrame) """ name age city score 0 김철수 25.0 서울 85 1 이영희 30.0 부산 92 2 박민수 35.0 서울 78 3 정지은 NaN 대전 95 """ print() dataFrame.dropna(subset = ["age"], inplace = True) print(dataFrame) """ name age city score 0 김철수 25.0 서울 85 1 이영희 30.0 부산 92 2 박민수 35.0 서울 78 """ |
▶ requirements.txt
더 읽기
■ DataFrame 클래스의 dropna 메소드에서 inplace 인자를 사용해 NaN 값을 갖는 행을 삭제하는 방법을 보여준다. ▶ main.py
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 32 33 34 35 36
|
import pandas as pd import numpy as np dataFrame = pd.DataFrame( { "name" : ["김철수", "이영희", "박민수", "정지은"], "age" : [25, 30, 35, 28], "city" : ["서울", "부산", "서울", "대전"], "score" : [85, 92, 78, np.nan] } ) print(dataFrame) """ name age city score 0 김철수 25 서울 85.0 1 이영희 30 부산 92.0 2 박민수 35 서울 78.0 3 정지은 28 대전 NaN """ print() dataFrame.dropna(inplace = True) print(dataFrame) """ name age city score 0 김철수 25 서울 85.0 1 이영희 30 부산 92.0 2 박민수 35 서울 78.0 """ |
▶ requirements.txt
|
numpy==2.1.2 pandas==2.2.3 python-dateutil==2.9.0.post0 pytz==2024.2 six==1.16.0 tzdata==2024.2 |
※
더 읽기
■ DataFrame 클래스의 [] 연산자를 사용해 특정 조건에 해당 행을 삭제하는 방법을 보여준다. ▶ main.py
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 32 33 34 35
|
import pandas as pd dataFrame1 = pd.DataFrame( { "name" : ["김철수", "이영희", "박민수", "정지은"], "age" : [25, 30, 35, 28], "city" : ["서울", "부산", "서울", "대전"], "score" : [85, 92, 78, 95] } ) print(dataFrame1) """ name age city score 0 김철수 25 서울 85 1 이영희 30 부산 92 2 박민수 35 서울 78 3 정지은 28 대전 95 """ print() dataFrame2 = dataFrame1[dataFrame1["age"] != 30] print(dataFrame2) """ name age city score 0 김철수 25 서울 85 2 박민수 35 서울 78 3 정지은 28 대전 95 """ |
▶ requirements.txt
|
numpy==2.1.2 pandas==2.2.3 python-dateutil==2.9.0.post0 pytz==2024.2 six==1.16.0 tzdata==2024.2 |
※ pip install
더 읽기
■ DataFrame 클래스의 drop 메소드를 사용해 복수 행을 삭제하는 방법을 보여준다. ▶ main.py
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 32 33 34
|
import pandas as pd dataFrame = pd.DataFrame( { "name" : ["김철수", "이영희", "박민수", "정지은"], "age" : [25, 30, 35, 28], "city" : ["서울", "부산", "서울", "대전"], "score" : [85, 92, 78, 95] } ) print(dataFrame) """ name age city score 0 김철수 25 서울 85 1 이영희 30 부산 92 2 박민수 35 서울 78 3 정지은 28 대전 95 """ print() dataFrame.drop([0, 2], axis = 0, inplace = True) # axis : 0(행), 1(컬럼) print(dataFrame) """ name age city score 1 이영희 30 부산 92 3 정지은 28 대전 95 """ |
▶ requirements.txt
|
numpy==2.1.2 pandas==2.2.3 python-dateutil==2.9.0.post0 pytz==2024.2 six==1.16.0 tzdata==2024.2 |
※ pip install pandas 명령을
더 읽기
■ DataFrame 클래스의 drop 메소드에서 axis/inplace 인자를 사용해 행을 삭제하는 방법을 보여준다. ▶ main.py
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 32 33 34 35
|
import pandas as pd dataFrame = pd.DataFrame( { "name" : ["김철수", "이영희", "박민수", "정지은"], "age" : [25, 30, 35, 28], "city" : ["서울", "부산", "서울", "대전"], "score" : [85, 92, 78, 95] } ) print(dataFrame) """ name age city score 0 김철수 25 서울 85 1 이영희 30 부산 92 2 박민수 35 서울 78 3 정지은 28 대전 95 """ print() dataFrame.drop(0, axis = 0, inplace = True) # axis : 0(행), 1(컬럼) print(dataFrame) """ name age city score 1 이영희 30 부산 92 2 박민수 35 서울 78 3 정지은 28 대전 95 """ |
▶ requirements.txt
|
numpy==2.1.2 pandas==2.2.3 python-dateutil==2.9.0.post0 pytz==2024.2 six==1.16.0 tzdata==2024.2 |
※ pip install pandas
더 읽기
■ DataFrame 클래스의 drop 메소드에서 axis/inplace 인자를 사용해 컬럼을 삭제하는 방법을 보여준다. ▶ main.py
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 32 33 34 35 36
|
import pandas as pd dataFrame = pd.DataFrame( { "name" : ["김철수", "이영희", "박민수", "정지은"], "age" : [25, 30, 35, 28], "city" : ["서울", "부산", "서울", "대전"], "score" : [85, 92, 78, 95] } ) print(dataFrame) """ name age city score 0 김철수 25 서울 85 1 이영희 30 부산 92 2 박민수 35 서울 78 3 정지은 28 대전 95 """ print() dataFrame.drop(["city", "score"], axis = 1, inplace = True) # axis : 0(행), 1(컬럼) print(dataFrame) """ name age 0 김철수 25 1 이영희 30 2 박민수 35 3 정지은 28 """ |
▶ requirements.txt
|
numpy==2.1.2 pandas==2.2.3 python-dateutil==2.9.0.post0 pytz==2024.2 six==1.16.0 tzdata==2024.2 |
※ pip install pandas
더 읽기
■ select 함수를 사용해 특정 조건에 해당하는 값으로 신규 컬럼을 추가하는 방법을 보여준다. ▶ main.py
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 32 33 34 35 36 37 38 39 40 41 42 43 44 45
|
import pandas as pd import numpy as np dataFrame = pd.DataFrame( { "name" : ["김철수", "이영희", "박민수", "정지은"], "age" : [25, 30, 35, 28], "city" : ["서울", "부산", "서울", "대전"], "score" : [85, 92, 78, 95] } ) print(dataFrame) """ name age city score 0 김철수 25 서울 85 1 이영희 30 부산 92 2 박민수 35 서울 78 3 정지은 28 대전 95 """ print() conditionList = [ (dataFrame["age" ] < 30) & (dataFrame["score"] >= 90), (dataFrame["age" ] >= 30) & (dataFrame["score"] >= 90), (dataFrame["score"] < 90) ] choiceList = ["A+", "A", "B"] dataFrame["grade"] = np.select(conditionList, choiceList, default = "C") print(dataFrame) """ name age city score grade 0 김철수 25 서울 85 B 1 이영희 30 부산 92 A 2 박민수 35 서울 78 B 3 정지은 28 대전 95 A+ """ |
▶ requirements.txt
|
numpy==2.1.2 pandas==2.2.3 python-dateutil==2.9.0.post0 pytz==2024.2 six==1.16.0 tzdata==2024.2 |
※ pip install
더 읽기
■ Series 클래스의 map 메소드를 사용해 컬럼의 값을 일괄 변경하는 방법을 보여준다. ▶ main.py
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 32 33 34 35 36 37 38 39 40
|
import pandas as pd dataFrame = pd.DataFrame( { "name" : ["김철수", "이영희", "박민수", "정지은"], "age" : [25, 30, 35, 28], "city" : ["서울", "부산", "서울", "대전"], "score" : [85, 92, 78, 95] } ) print(dataFrame) """ name age city score 0 김철수 25 서울 85 1 이영희 30 부산 92 2 박민수 35 서울 78 3 정지은 28 대전 95 """ print() series = dataFrame["city"] cityDictionary = {"서울특별시" : "Seoul", "부산광역시" : "Busan", "대전" : "Daejeon"} dataFrame["city"] = series.map(cityDictionary) print(dataFrame) """ name age city score 0 김철수 25 서울 170 1 이영희 30 부산 92 2 박민수 35 서울 156 3 정지은 28 대전 95 """ |
▶ requirements.txt
|
numpy==2.1.2 pandas==2.2.3 python-dateutil==2.9.0.post0 pytz==2024.2 six==1.16.0 tzdata==2024.2 |
※ pip install pandas
더 읽기
■ Series 클래스의 where 메소드를 사용해 특정 조건에 해당하는 컬럼의 값을 일괄 변경하는 방법을 보여준다. ▶ main.py
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 32 33 34 35 36 37 38
|
import pandas as pd dataFrame = pd.DataFrame( { "name" : ["김철수", "이영희", "박민수", "정지은"], "age" : [25, 30, 35, 28], "city" : ["서울", "부산", "서울", "대전"], "score" : [85, 92, 78, 95] } ) print(dataFrame) """ name age city score 0 김철수 25 서울 85 1 이영희 30 부산 92 2 박민수 35 서울 78 3 정지은 28 대전 95 """ print() series = dataFrame["score"] dataFrame["score"] = series.where(series >= 90, series * 2) print(dataFrame) """ name age city score 0 김철수 25 서울 170 1 이영희 30 부산 92 2 박민수 35 서울 156 3 정지은 28 대전 95 """ |
▶ requirements.txt
|
numpy==2.1.2 pandas==2.2.3 python-dateutil==2.9.0.post0 pytz==2024.2 six==1.16.0 tzdata==2024.2 |
※
더 읽기
■ Series 클래스의 replace 메소드를 사용해 특정 컬럼의 값을 일괄 변경하는 방법을 보여준다. ▶ main.py
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 32 33 34 35 36 37 38 39 40 41
|
import pandas as pd dataFrame = pd.DataFrame( { "name" : ["김철수", "이영희", "박민수", "정지은"], "age" : [25, 30, 35, 28], "city" : ["서울", "부산", "서울", "대전"], "score" : [85, 92, 78, 95] } ) print(dataFrame) """ name age city score 0 김철수 25 서울 85 1 이영희 30 부산 92 2 박민수 35 서울 78 3 정지은 28 대전 95 """ print() def convertName(name): return name + "님" series = dataFrame["city"] dataFrame["city"] = series.replace({"서울" : "서울특별시", "부산" : "부산광역시"}) print(dataFrame) """ name age city score 0 김철수 25 서울특별시 85 1 이영희 30 부산광역시 92 2 박민수 35 서울특별시 78 3 정지은 28 대전 95 """ |
▶ requirements.txt
|
numpy==2.1.2 pandas==2.2.3 python-dateutil==2.9.0.post0 pytz==2024.2 six==1.16.0 tzdata==2024.2 |
※ pip install
더 읽기