python_pandas_7 - 8BitsCoding/RobotMentor GitHub Wiki
import pandas as pd
friends = [{'name': 'John', 'age': 15, 'job': 'student'},
{'name': 'Ben', 'age': 25, 'job': 'delveloper'},
{'name': 'Jenny', 'age': 30, 'job': 'teacher'}]
df = pd.DataFrame(friends, columns = ['name', 'age', 'job'])
df['salary'] = 0
์๋ก์ด ์ด์ ์ถ๊ฐ
import numpy as np
df['salary'] = np.where(df['job'] != 'student', 'yes', 'no')
job
์ดstudent
๋ฉดsalary
๊ฐno
๋ก ํ๊ธฐ
friends = [{'name': 'John', 'midtern': 95, 'final': 85},
{'name': 'Ben', 'midtern': 85, 'final': 80},
{'name': 'Jenny', 'midtern': 30, 'final': 10}]
df = pd.DataFrame(friends, columns = ['name', 'midtern', 'final'])
df['total'] = df['midtern'] + df['final']
total
์ด๋ผ๋ ์๋ก์ด ์ด์ ์ถ๊ฐํ๊ณ ์ฐ์ฐ์ ํ๋ค.
df['average'] = df['total'] / 2
grades = []
for row in df['average']:
if row >= 90:
grades.append('A')
elif row >= 80:
grades.append('B')
else:
grades.append('F')
df['grade'] = grade
๋ฆฌ์คํธ๋กค ํตํด์ ํ์ ์ฃผ๊ธฐ
def pass_or_fail(row):
if row != 'F':
return "Pass"
else :
return "Fail"
df.grade = df.grade.apply(pass_or_fail)
ํจ์๋ ์ ์ฉ์ด ๊ฐ๋ฅํ๋ค.
data_list = [
{
'yyyy-mm-dd' : '2000-06-27'
}.
{
'yyyy-mm-dd' : '2007-10-27'
}
]
df = pd.DataFrame(data_list, columns = ['yyyy-mm-dd'])
def extrack_year(row):
return row.split('-')[0]
df['year'] = df['yyyy-mm-dd'].apply(extrack_year)
๋ฐ์ดํฐ๋ฅผ ํน์ ๊ธฐ์ค์ผ๋ก ํ์ฑ์ด ๊ฐ๋ฅํ๋ค.
friends = [{'name': 'John', 'midtern': 95, 'final': 85},
{'name': 'Ben', 'midtern': 85, 'final': 80},
{'name': 'Jenny', 'midtern': 30, 'final': 10}]
df = pd.DataFrame(friends, columns = ['name', 'midtern', 'final'])
df2 = pd.DataFrame([
['Ben', 50, 50]
], columns = ['name', 'midterm', 'final'])
์๋ก์ด df2 Dataframe์ ์์ฑ
df.append(df2, ignore_index = True)
df, df2๋ฅผ ํฉ์น๋ค.