Series와 DataFrame 기초
다양한 원본에서 Pandas 데이터 구조를 만들고 검사합니다.
Series와 DataFrame 기초은(는) CoddyKit의 무료 Python Academy 강의입니다. 이것은 4개 중 1번째 강의입니다. 아래에서 전체 강의를 무료로 읽을 수 있으며, 내장 코드 에디터와 24/7 AI 튜터와 함께 브라우저에서 직접 실습할 수 있습니다. 이 강의는 Python Academy 학습 경로의 일부이며, 진행 상황이 웹과 CoddyKit 앱에 동기화됩니다. Python Academy 강의에는 총 4개의 강의가 포함되어 있습니다.
Pandas란 무엇인가요?
Pandas는 NumPy를 기반으로 하며 데이터 분석에 최적화된 Series(1차원 레이블 배열)와 DataFrame(2차원 레이블 테이블)을 제공합니다.
import pandas as pd
s = pd.Series([10, 20, 30], index=["a","b","c"])
print(s)
# a 10
# b 20
# c 30Series 만들기
리스트, 딕셔너리 또는 스칼라로 Series를 만듭니다. 인덱스는 기본적으로 0부터 시작하는 정수입니다.
import pandas as pd
# From list:
s1 = pd.Series([1, 2, 3])
# From dict (keys become index):
s2 = pd.Series({"x": 10, "y": 20})
# Scalar (broadcast):
s3 = pd.Series(5, index=range(4))
print(s3) # 0 5 / 1 5 / 2 5 / 3 5DataFrame 만들기
리스트를 값으로 갖는 딕셔너리, 딕셔너리의 리스트 또는 NumPy 배열로 DataFrame을 만듭니다.
import pandas as pd
df = pd.DataFrame({
"name": ["Alice","Bob","Carol"],
"age": [30, 25, 35],
"score":[95.5, 87.0, 92.3]
})
print(df)기본 확인
head(), tail(), shape, dtypes, info(), describe()는 새로운 데이터셋을 다룰 때 가장 먼저 사용하는 기능입니다.
import pandas as pd
df = pd.read_csv("data.csv")
print(df.head()) # first 5 rows
print(df.shape) # (rows, cols)
print(df.dtypes) # column types
print(df.describe()) # count, mean, std, min...열에 접근하기
점 표기법이나 대괄호를 사용하여 열에 접근합니다. 열 이름에 공백이 있거나 DataFrame 속성과 충돌하면 점 표기법이 작동하지 않습니다.
import pandas as pd
df = pd.DataFrame({"age":[30,25], "city":["NY","LA"]})
print(df["age"]) # preferred
print(df.age) # also works if name is simple
print(df[["age","city"]]) # multiple columns인덱스 기초
인덱스는 행에 레이블을 지정합니다. 기본값은 0, 1, 2...이지만 해시 가능한 값으로 설정할 수 있습니다.
import pandas as pd
df = pd.DataFrame({"val":[10,20,30]}, index=["a","b","c"])
print(df.loc["b"]) # row with label b
print(df.index) # Index(['a','b','c'])
# Reset to default integer index:
df.reset_index(drop=True, inplace=True)열 추가 및 제거
새 키에 값을 할당하면 열이 추가됩니다. 열을 제거하려면 drop()을 사용합니다.
import pandas as pd
df = pd.DataFrame({"a":[1,2,3],"b":[4,5,6]})
df["c"] = df["a"] + df["b"] # new column
df.drop(columns=["b"], inplace=True)
print(df)Series 정렬
Series를 결합할 때 판다스는 인덱스를 기준으로 정렬합니다. 일치하는 항목이 없으면 NaN이 생성됩니다.
import pandas as pd
s1 = pd.Series([1,2,3], index=["a","b","c"])
s2 = pd.Series([10,20], index=["b","c"])
print(s1 + s2)
# a NaN
# b 12.0
# c 23.0to_dict 및 to_list
내보내거나 살펴보기 위해 DataFrame 또는 Series를 표준 Python 자료 구조로 다시 변환합니다.
import pandas as pd
df = pd.DataFrame({"x":[1,2],"y":[3,4]})
print(df.to_dict("records"))
# [{'x': 1, 'y': 3}, {'x': 2, 'y': 4}]
print(df["x"].to_list())
# [1, 2]파일 읽기
판다스는 CSV, 엑셀, JSON, Parquet 및 SQL을 직접 DataFrames로 읽어 들입니다.
import pandas as pd
df_csv = pd.read_csv("data.csv")
df_excel = pd.read_excel("data.xlsx", sheet_name="Sheet1")
df_json = pd.read_json("data.json")
df_parq = pd.read_parquet("data.parquet")
# pd.read_sql("SELECT * FROM table", conn)파일 쓰기
DataFrames를 CSV, 엑셀, JSON 및 Parquet로 내보냅니다.
import pandas as pd
df = pd.DataFrame({"a":[1,2],"b":[3,4]})
df.to_csv("out.csv", index=False)
df.to_json("out.json", orient="records")
df.to_parquet("out.parquet")빠른 확인
df.describe()는 무엇을 반환합니까?
복습
Series는 1차원 레이블 배열이고, DataFrame은 2차원 레이블 테이블입니다. df["col"]로 열에 접근합니다. 빠르게 살펴보려면 head(), describe(), info()를 사용합니다. 기본 제공 함수로 CSV, 엑셀, JSON 및 Parquet를 읽고 씁니다.
자주 묻는 질문
“Series와 DataFrame 기초” 강의는 무료인가요?
네 — “Series와 DataFrame 기초” 전체 내용을 이 웹사이트에서 무료로 읽을 수 있습니다. 인터랙티브하게 실습하려면(내장 코드 에디터와 24/7 AI 튜터), CoddyKit PRO로 업그레이드하면 Python Academy 강의 전체를 잠금 해제할 수 있습니다. Python Academy 강의에는 총 4개의 강의가 포함되어 있습니다.
“Series와 DataFrame 기초”에서 뭘 배우나요?
다양한 원본에서 Pandas 데이터 구조를 만들고 검사합니다. 브라우저에서 직접 실행하는 실습 코드로 Python Academy을(를) 배우며, 24/7 AI 튜터가 강의를 진행하면서 질문에 답변해줍니다.
Python Academy을(를) 시작하는 데 경험이 필요한가요?
사전 경험은 필요하지 않습니다. CoddyKit의 Python Academy은(는) 초급자부터 고급 학습자까지를 위해 구성되어 있으므로, 여기서 시작하거나 처음부터 시작할 수 있으며 자신의 속도대로 진행할 수 있습니다. 이것은 4개 중 1번째 강의입니다.
“Series와 DataFrame 기초” 강의는 얼마나 걸리나요?
대부분의 CoddyKit 강의는 약 5~10분이 소요됩니다. 각 강의는 간결하고 인터랙티브하여 꾸준한 진행이 가능하며, 웹과 앱에서 중단한 부분부터 바로 시작할 수 있습니다.
이 Python Academy 강의에서 코드를 작성하고 실행할 수 있나요?
네. 모든 Python Academy 강의에는 내장 코드 에디터가 포함되어 있으므로, 브라우저에서 바로 실제 코드를 작성하고 실행한 후 즉시 AI 피드백을 받을 수 있습니다 — 로컬 설정이 필요 없습니다.
이 강의의 모든 강의
- Series와 DataFrame 기초
- 인덱싱, 필터링 및 불리언 마스크
- GroupBy, 집계 및 피벗 테이블
- 병합, 결합 및 데이터 정리