데이터 분석

DataFrame의 연산 - map과 apply

핸들이없는8톤트럭 2022. 8. 15. 15:14
반응형

map과 apply

import numpy as np
import pandas as pd

data= np.random.rand(10,5)
indices = list(range(101,111))
columns = ['a','b','c','d','e']
df = pd.DataFrame(data=data,columns=columns,index=indices)
print(df)
print(df['a'].map(lambda x : x*2)) #map은 시리즈에만 적용됨. 데이터 프레임에는 적용 x
df['a_doubled'] = df['a'].map(lambda x : x*2)
print(df)
print(df.apply(np.sum, axis=1))
df['sum'] = df.apply(np.sum,axis=1)
print(df)
df.loc['sum']=df.apply(np.sum,axis=0)
print(df)
print(df.applymap(lambda x : x**2))

data = {'class': ['a','a','a','b','b','b','c','c','c'],
        'student_id' : [1, 2, 3,1,2,3,1,2,3],
        'math_score': [60,45,65,75,70,90,65,50,55],
        'eng_score':[66,44,37,88,76,76,89,96,56]}
df =pd.DataFrame(data=data)
print(df)
print(df['class'].unique())
print(df['student_id'].unique())
print(df['class'].value_counts()) #unique한 것 이름과 갯수 나옴
print(df.value_counts())


반응형