import pandas as pd
df_grade = pd.DataFrame()
df_grade["이름"] = ["김가영", "정나영", "이다영"]
df_grade["나이"] = [27, 26, 28]
df_grade["성별"] = ["남자", "냠자", "냠자"]
df_grade["학점"] = ["4.5", "4.0", "3.5"]
df_grade["성"] = ["kim", "jeong", "LEE"]
df_grade
1. 데이터프레임과 시리즈 출력하기
print(df_grade): 데이터프레임 출력
prinnt(df_grade["이름"]): 시리즈 출력
2. 컬럼명으로 원하는 값 출력
1) 1개 컬럼 가져오기
df_grade["이름"]
#시리즈 형태로 가져오는 것이다. [ ]
2) 다수의 컬럼 가져오기
df_grade[["이름","나이"]]
#데이터프레임 형태로 가져오는 것이다. [[ ]]
3. loc와 iloc
1) loc
행을 기준으로 데이터프레임을 가져온다. (즉, 라벨/boolean array 등 이름으로 가져옴)
※ 인덱스 값이 문자형태인 경우에도 loc로 가져올 수 있다.
# 인덱스 번호로 첫번째 데이터 가져오기
df_grade.loc[0]
# 위에서 3개의 행 데이터 가져오기
df_grade.loc[[0,1,2]]
df_grade.loc[0:2]
# 행과 열을 함께 가져오기
#loc[행, 열]
df_grade.loc[0, "이름"]
df_grade.loc[[0,1,2], "이름"]
df_grade.loc[0:3, "이름"]
# 슬라이싱을 할 때는 대괄호를 빼주어야 한다.
✏️loc[조건, 가져올 값]
조건에 맞는 컬럼만 가져올 수 있다.
df_seoul = df.loc[df["시도별"] == "서울특별시", :]
2) iloc
인덱스를 기준으로 데이터프레임 가져온다.
(즉, (행)번호로 가져온다. = iloc는 숫자로만 가져올 수 있다.)
# 데이터프레임으로 불러오기
df.loc[[0,1,2], ["이름", "나이"]]
df.iloc[0:3,0:2]
df.iloc[0:3, [0,1]]
4. 조건에 부함하는 것만 가져오기
1) 특정 문자열이 들어가는 데이터프레임만 가져오기: str.contains(" ")
df_grade["이름"].str.contains("김가영")
#불리언 인덱싱
df_grade[df_grade["이름"].str.contains("김가영")]
2) 특정 조건을 부합하는 데이터프레임만 가져오기
df_grade[df_grade["학점"] > "3.5"]
3) 파이썬 정규표현식에서의 and, or
|
&
'Python > Pandas' 카테고리의 다른 글
[Python] Pandas - 9. dt접근(datetime) (0) | 2022.10.26 |
---|---|
[Python] Pandas - 8. value_counts(빈도수 확인), sort_(정렬하기) (0) | 2022.10.26 |
[Python] Pandas - 6. 데이터프레임 컬럼/행 추가, 변경, 삭제 (0) | 2022.10.26 |
[Python] Pandas - 5. 데이터프레임 출력, 타입, 전치, 미리보기, 기술통계, 통계값(집계/상관계수 등) (0) | 2022.10.26 |
[Python] Pandas - 4. 데이터프레임 기본개념, 생성, 인덱싱과 슬라이싱(출력) (0) | 2022.10.26 |
댓글