20200316_판다스(연산).html
0.28MB

#시리즈의 산술 연산
#시리즈 vs 숫자
import pandas as pd

student1 = pd.Series({'국어':100,'영어':80,'수학':90})
student1

print(student1/200)
print('\n')
print(type(student1/200))

#시리즈 vs 시리즈
student1 = pd.Series({'국어':100, '영어':80,'수학':90})
student2 = pd.Series({'수학':80, '국어':90, '영어':80})

print(student1)
print('\n')
print(student2)
print('\n')
#사칙연산
add_data = student1 + student2  # 덧셈
sub_data = student1 - student2  # 뺄셈
mul_data = student1 * student2  # 곱셈
div_data = student1 / student2  # 나눗셉

# 결과를 데이터 프레임으로 합치기 (시리즈 -> 데이터프레임)
result = pd.DataFrame([add_data,sub_data,mul_data,div_data], index = ['덧셈','뺄셈','곱셈','나눗셈'])
print(result)

 

 

#NaN 값이 있는 시리즈 연산
import pandas as pd
import numpy as np

student1 = pd.Series({'국어':np.nan, '영어':80,'수학':90})
student2 = pd.Series({'수학':80, '국어':90})

print(student1)
print('\n')
print(student2)
print('\n')

print(student1 + student2)

 

#연산 메소드
#(add(), sub(), mul(), div())와 ` fill_value()`

import pandas as pd
import numpy as np

student1 = pd.Series({'국어':np.nan, '영어':80,'수학':90})
student2 = pd.Series({'수학':80, '국어':90})

print(student1)
print('\n')
print(student2)
print('\n')
      
#NaN을 0으로 대체하라
add_data = student1.add(student2, fill_value=0)
sub_data = student1.sub(student2, fill_value=0)
mul_data = student1.mul(student2, fill_value=0)
div_data = student1.div(student2, fill_value=0)

#inf : 무한대
result = pd.DataFrame([add_data,sub_data,mul_data,div_data], index = ['덧셈','뺄셈','곱셈','나눗셈'])
print(result)

 

 

#데이터프레임의 산술연산
#데이터프레임 vs 숫자
import pandas as pd
import seaborn as sns

#seaborn에서 제공하는 타이타닉 데이터 불러오기
titanic = sns.load_dataset('titanic')
titanic.head()
print('\n')

#age, fare열 가져오기
df = titanic.loc[:, ['age','fare']]
df.head()
#10 더하기
addition = df + 10
addition.head()

 

#데이터프레임 vs 데이터프레임
import pandas as pd
import seaborn as sns

#seaborn에서 제공하는 타이타닉 데이터 불러오기
titanic = sns.load_dataset('titanic')
titanic.head()
print('\n')

#age, fare열 가져오기
df = titanic.loc[:, ['age','fare']]
#타이타닉 데이터 아래쪽 이용
df.tail()
#age열에 NaN값이 존재한다.
#10을 더해줘도 연산 되지 않고 NaN값이 된다.
addition = df + 10
addition.tail()
#10+데이터프레임에서 원본 데이터프레임을 빼주면 10만 남는다.
substraction = addition - df
substraction.tail()

+ Recent posts