-> 시리즈 : 각 값에 라벨이 있고 하나의 데이터 형식으로 이루어진 1차원 배열
-> 데이터프레임 : 행과 열에 라벨이 있는 2차원 배열로 각 열은 서로 다은 데이터 타입을 지닐 수 있음
import pandas as pd
import numpy as np
dataset = np.array[['KOR',70], ['math', 80]])
df = pd.DataFrame(dataset, columns=['class','score'])
df
시리즈와 데이터프레임을 선언하는데에 약간의 차이가 있으니 유의!!
from sklearn.datasets import load_iris
import pandas as pd
# 1. 데이터 불러오기
iris = load_iris()
# 2. 데이터 프레임 변환
df = pd.DataFrame(iris.data, columns=iris.feature_names)
# 3. 데이터 살펴보기
print(df.head())
# 4. 데이터 요약 정보 확인
print(df.info())
# 5. 기술 통계 확인
print(df.describe())
# 6. 데이터 정렬
sorted_df = df.sort_values(by='sepal length (cm)', ascending=False)
print(sorted_df.head())
# 7. 특정 열 선택
sepal_width = df['sepal width (cm)']
print(sepal_width.head())
# 8. 조건에 따른 행 필터링
filtered_df = df[df['sepal width (cm)'] > 3.5]
print(filtered_df.head())
# 9. 누락된 데이터 확인
print(df.isnull().sum())
# 10. 새로운 열 추가
df['sepal area (cm^2)'] = df['sepal length (cm)'] * df['sepal width (cm)']
print(df.head())
import pandas as pd
# 예제 데이터프레임 생성
df1 = pd.DataFrame({'A': ['A0', 'A1', 'A2', 'A3'],
'B': ['B0', 'B1', 'B2', 'B3'],
'C': ['C0', 'C1', 'C2', 'C3']},
index=[0, 1, 2, 3])
df2 = pd.DataFrame({'A': ['A4', 'A5', 'A6', 'A7'],
'B': ['B4', 'B5', 'B6', 'B7'],
'C': ['C4', 'C5', 'C6', 'C7']},
index=[4, 5, 6, 7])
df3 = pd.DataFrame({'D': ['D2', 'D3', 'D6', 'D7'],
'E': ['E2', 'E3', 'E6', 'E7']},
index=[2, 3, 6, 7])
# 1. concat() 예시
result_concat = pd.concat([df1, df2])
# 2. merge() 예시
result_merge = pd.merge(df1, df3, left_index=True, right_index=True, how='inner')
# 3. join() 예시
result_join = df1.join(df3)
# 4. append() 예시
result_append = df1.append(df2)
# 5. combine_first() 예시
result_combine_first = df1.combine_first(df3)
# 6. update() 예시
df1.update(df3)
# 출력으로 확인
print("Concat Result:\n", result_concat)
print("\nMerge Result:\n", result_merge)
print("\nJoin Result:\n", result_join)
print("\nAppend Result:\n", result_append)
print("\nCombine First Result:\n", result_combine_first)
print("\nUpdate Result:\n", df1)
import pandas as pd
import numpy as np
# 예제 데이터프레임 생성
df = pd.DataFrame({
'A': range(1, 5),
'B': np.random.randn(4)
})
# 1. apply() 사용 예시
def square(x):
return x * x
print(df.apply(square))
# 2. applymap() 사용 예시
print(df.applymap(lambda x: x*2))
# 3. map() 사용 예시 (Series에만 적용 가능)
print(df['A'].map(lambda x: x**2))
# 4. agg() 사용 예시
print(df.agg(['sum', 'min']))
# 5. transform() 사용 예시
print(df.transform(lambda x: x - x.mean()))
# 6. pipe() 사용 예시
def add_value(x, value):
return x + value
def multiply_by_two(x):
return x * 2
result_pipe = df.pipe(add_value, value=10).pipe(multiply_by_two)
print(result_pipe)
해당 블로그는 메타코드M에 빅데이터분석기사 강의를 듣고 공부한 내용을 작성하였습니다!
저도 합격을 위해 하나씩 달려가겠습니다~!!
여러분들도 열정을 가지고 같이 나아가요!!
열정! 열정! 열정!
합격! 합격! 합격!
링크는 아래에 첨부하였습니다.