kay's portfolio

33
「KAY」 : Kim Ae Young KAY’S PORTFOLIO.

Upload: biostarkay

Post on 21-Mar-2017

316 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: Kay's portfolio

「KAY」 : Kim Ae Young

KAY’SPORTFOLIO.

Page 2: Kay's portfolio

[ BIO★KAY]

[ INDEX ]

01 ABOUT

02 BT

03 BI

Page 3: Kay's portfolio

[ ABOUT ]

[ BIO★KAY]

01 Experiment

02 Computer

03 Biotechnology Equipment

My Technical Skills

Page 4: Kay's portfolio

01 Experiment

My Technical Skills

Microorganism DNA Manipulation DNA CLONING

Experiment Skill

Genetic

Experiment

Microorganism

■Medium Making

■Single Colony Isolation

■Serial Dilution

DNA Manipulation

■Genomic DNA Prep

■DNA electrophoresis

■GENOMIC DNA PURIFICATION

■Plasmid DNA prep

DNA CLONING

■PCR DESIGN

■PCR Product Purification

■Transformation

■Topo Cloning

■PCR Purification

■Colony PCR

■Master Plate

■Restrict Enzyme Cutting

■Gel Extraction

■Protein Expression

[ BIO★KAY]

Page 5: Kay's portfolio

02 Computer Ι

My Technical Skills

LanguagesInternet

TechnologiesOperating Systems

Computer Skill

Bioinformatics

Programming

Languages

ㆍPython

- Data structure

- Conditional branch

- Loops

- Function

- Class

ㆍR

ㆍAWK

Internet

Technologies

ㆍWordPress

ㆍJava Script

ㆍPHP

ㆍCSS

Operating Systems

ㆍLINUX

ㆍLINUX SHELL SCRIPT

- Vi or Emacs editor

- Bash shell

[ BIO★KAY]

Page 6: Kay's portfolio

02 Computer Ⅱ

My Technical Skills[ BIO★KAY]

LanguagesInternet

TechnologiesOperating Systems

Computer Skill

Bioinformatics

Programming

SEQUENCE

ALIGNMNET

- DNA sequence alignment

- Aminoacid sequence alignment

- Multiple sequence alignment

BIOINFORMATICS

DATABASES

- NCBI/EBI

- InterPro

- KEGG

BIOINFORMATICS

TOOL

- NCBI/EBI

- InterPro

- KEGG

DNA SEQUENCING

- Genome Structure

- DNA Sequencing

- Genome Sequencing

- NGS

Page 7: Kay's portfolio

02 Computer Ⅲ

My Technical Skills[ BIO★KAY]

LanguagesInternet

TechnologiesOperating SystemsComputer Skill

Multimedia

Software

■ Adobe Software

Photoshop : 사진 이미지 색상 보정 및 합성, 문자ㆍ인쇄물ㆍ웹디자인

Illustrator : 편집 디자인과 캐릭터 디자인, 심벌 디자인, 제품 디자인

Premiere : 동영상, 자막, 이펙트 편집

Dreamweaver : 테이블ㆍ프레임 등을 이용한 멀티미디어 홈페이지 제작

Flash : 액션스크립트 활용 및 버튼 제작

■ 기타 Multimedia Software

동영상편집 프로그램 - 「베가스 Vegas」

: 다중 트랙 영상 및 소리 편집

음성편집 프로그램 - 「사운드포지 Sound Forge」

: 편집 & 믹싱, 이펙트, 잡음 제거, 녹음 기능 등 활용

Microsoft Office

Excel : 스프레드시트, 매크로, 그래픽, 데이터베이스, 지도·차트 활용

Word : 표 만들기, 하이퍼텍스트, 검색과 치환, 각주와 미주 응용

PowerPoint : 그래픽, 애니메이션, 멀티미디어 운용

Equipment Skill

Working

Equipment

Clean bench, Balance, pH meter, Autoclave, Spectrophotometer, Electrophoresis, PCR, RT-PCR, ELISA,

ChemiDoc, nanoDrop, Sonicator, Centrifuge, Microfludizer, Rotary evaporator, HPLC, FPLC, Freeze Dryer,

Luminex, Maldi-TOF, Fragment Analyzer, Ion Torrent

03 Biotechnology Equipment

Page 8: Kay's portfolio

[ BT ]

Genetic Experiment

[ BIO★KAY]

01 Microorganism

02 DNA

03 Gene Cloning Experiment

Page 9: Kay's portfolio

01 Microorganism

Genetic Experiment

DNA Manipulation DNA CLONING

[ BIO★KAY]

Genetic Experiment

Microorganism

Managing

■Antibiotic Experiment

- kanamycin, ampicillin LB Solid Medium Manufacturing ⇒ Streaking Technique

- Antibiotic Resistance Test by DH5α, pET28/DH5α, pCU118/DH5α

■Strain Storage Method

- Single Colony Isolation : for Glycerol Stock + Vial Making

⇒ Serial Dilution : Spreading of Disposable Cell Spreader

■Spectrophotometer

- BCA Protein Assay / BPB[Bromophenol Blue] Solution ⇒ Measurement of Standard Growth Curve

■Micro Centrifuge

- Cell Down ⇒ harvesting

■Sonicator

- Suspension Making ⇒ High-Speed Centrifuge Sorting

Culture Method

■Solid State Culture

- Medium Making ⇒ LB media + Agar

- Put Solid medium in Petri Dish

■Liquid Culture

- Flask : Magnetic Bar Input

- Cap-tube : Inoculating Loop Using

Microorganism

ManagingCulture Method

Page 10: Kay's portfolio

02 DNA Ι

Genetic Experiment

DNA Manipulation DNA CLONING

[ BIO★KAY]

Genetic Experiment

DNA Manipulation

■Genomic DNA Prep

- Cell Harvesting, E.coli Chromosomal DNA extraction, Rnase removal

- NanoDrop ⇒ DNA Purity of verification

■DNA electrophoresis

- Agarose gel Making

■GENOMIC DNA PURIFICATION

- Transilluminator, Chemi-Doc shooting

■Plasmid DNA prep

- Alkaline Lysis method

DNA CLONING

■PCR DESIGN

- Primer design & PCR profiling : for DNA Amplification

■PCR Product Purification

- PCR Thermal Cycle set

- Electrophoresis confirm

■Transformation

- Competent cell Making

- Calcium chloride Heat Shock

- Water Bath floating, LBplate Spreading

DNA Manipulation DNA CLONING

Page 11: Kay's portfolio

02 DNA Ⅱ

Genetic Experiment

DNA Manipulation DNA CLONING

[ BIO★KAY]

Genetic Experiment

DNA CLONING

■Topo Cloning

- Topo Vector & Insert combination

- Topo Transformation

■PCR Purification

- PCR Product purify

■Colony PCR

- Target Gene Sequence size confirm

■Master Plate

- Single Colony inoculation

■Restrict Enzyme Cutting

- Electrophoresis use

■Gel Extraction

- MicroCentrifuge, Nano Drop check

PROTEIN

PURIFICATION

■Cell disruption

■Affinity column chromatography

■SDS-PAGE Gel

- Sepanating gel + Stacking gel making

- Chemi-Doc shooting

DNA CLONING

PROTEIN

PURIFICATION

Page 12: Kay's portfolio

03 Gene Cloning Experiment

Genetic Experiment[ BIO★KAY]

ABOUT mugGenomic DNA

PREPPRIMER DESIGN

PCR PROFILE

TOPO

TA CloningColony PCR

GEL

EXTRACTION

CLONING

PROTOCOL

PCRPURIFICATION

TRANSFORMATION

Page 13: Kay's portfolio

03 Gene Cloning Experiment

Genetic Experiment[ BIO★KAY]

[1]

ABOUT mug

MUG Sequence

MUG SEQUENCE

MUG DEFINITION

[ MUG: mismatch-specific uracil DNA-glycosylase ]

G:U mismatches resulting from deamination of cytosine are the most common

promutagenic lesions occurring in DNA. Uracil is removed in a base-excision repair

pathway by uracil DNA-glycosylase (UDG), which excises uracil from both single-and

double-stranded DNA.

Recently, a biochemically distinct family of DNA repair enzymes has been identified,

which excises both uracil and thymine, but only from mispairs with guanine.

ATGGTTGAGG ATATTTTGGC TCCAGGGTTA CGGGTCGTGT TTTGCGGTATCAACCCTGGG CTTTCATCCG CCGGGACTGG TTTTCCCTTT GCTCATCCGGCAAATCGCTT CTGGAAGGTG ATATATCAGG CCGGGTTTAC CGACCGTCAGTTGAAGCCGC AGGAGGCACA GCATCTGCTG GATTATCGTT GTGGCGTCACCAAACTGGTA GACCGTCCAA CGGTGCAAGC CAATGAAGTT TCAAAGCAGGAGCTACACGC AGGCGGGCGT AAGCTGATTG AAAAAATTGA AGATTATCAGCCGCAGGCGT TGGCGATTCT GGGCAAACAA GCATATGAAC AGGGATTCAGCCAGCGCGGT GCACAGTGGG GGAAACAAAC GCTCACCATT GGTTCGACGCAGATTTGGGT GCTGCCAAAT CCCAGCGGTT TAAGTCGCGT TTCACTGGAGAAACTGGTTG AAGCGTATCG CGAGCTGGAC CAGGCGCTGG TAGTGCGTGGGCGATAA

[

[

- from Ecogene Site -

Page 14: Kay's portfolio

03 Gene Cloning Experiment

Genetic Experiment[ BIO★KAY]

PURPOSE

Genomic DNA Extraction

of DH5α

Electrophoretic

Identification

Run-up PCR

METHOD

Medium Manufacturing

Promote a Culture

Centrifugation cell down

Nano drop to Concentration

Measurement

genomic DNA Extraction

Check

RESULT

[2]

Genomic DNA PREP

10000bpDH5α

Genomic DNA

Page 15: Kay's portfolio

03 Gene Cloning Experiment

Genetic Experiment[ BIO★KAY]

[3]

PRIMER DESIGN

Target Gene MUG (507bp)

Vector pTOP TA V2 (3807bp)

EnzymeXho 1 CTC GAG

BamH1 GGA TCC

Forward Primer 5’ - CTC GAG ATG GTT GAG GAT ATT TTG – 3’

Reverse Primer 5’– GGA TCC TTA TCG CCC ACG CAC TA – 3’

[NCBI]

Nucledie:E-coli select

WIN PRIMER[bioinformatics]

Reverse Complement:

Reverse site

[NCBI]

Primer-BLAST:Primer

Parameters

Input

[NCBI]

GET PRIMER:Target Gene

Check

[ecogene]

Search gene:DNA Sequence

Copy

[NEBcutter]

Enzymes that don’t cut:

Site

Check

[ecogene]

DNA Sequence:Choose the

Start codon

Page 16: Kay's portfolio

03 Gene Cloning Experiment

Genetic Experiment[ BIO★KAY]

[4]

PCR PROFILE

Purpose Cloning to an expression vector

Forward Primer 5’ – CTC GAG ATG GTT GAG GAT ATT TTG – 3’(XhoI)

Reverse Primer 5’ – GGA TCC TTA TCG CCC ACG CAC TA - 3’(BamHI)

Target Size 507bp

Template DH5α Genomic DNA

Annealing Temperature 55oC

Enzyme Dream Taq DNA Polymerase

Extension time 30 sec

No. of cycles 30 cycles

「 mug 」

57oC

72oC

94oC3min 30sec

30sec

30sec 5min

30 Cycles

1000bp

500bp

- DNA Ladder -

MUG

Size

「 result 」

Page 17: Kay's portfolio

03 Gene Cloning Experiment

Genetic Experiment[ BIO★KAY]

[5]

GEL EXTRACTION「 mug 」

500bpMUG

Size

1000bp

DNA Ladder

for Gel Extraction

PURPOSE

♦ Process to as well as

trimming and separating

PCR product from gel

Target gene isolation

and purification

METHOD

♦ Put the gel on the LED

light

DNA part cutting of

Using the scalpel

RESULT

「 」

Page 18: Kay's portfolio

03 Gene Cloning Experiment

Genetic Experiment[ BIO★KAY]

PURPOSE

Purify for PCR product

Target gene of isolation

and purification work

METHOD

After Gel Extraction

of output use the

template

Using the GeneJET PCR

Purification Kit

RESULT

[6]

PCR PURIFICATION

「 」

CentrifugedWashed with70% ethanol

DNA eleutedwith TE

Gel Slice is dissolved in buffer

Suspension is transferred to silica-

membrane

[ Fragment DNA Purification ]

Page 19: Kay's portfolio

03 Gene Cloning Experiment

Genetic Experiment[ BIO★KAY]

PURPOSE

Genetic material, DNA

the introduction into the

living cells from the

other systems

Put in plasmid to the

Topo Vector for

Transformation

METHOD

Supply an Electric

Shock with DH5α

LB media input to

Electroporation cuvette

RESULT

[7]

TRANSFORMATIONElectroporation

「 Single Colony 」

「 ElectroporationSystem」

Page 20: Kay's portfolio

03 Gene Cloning Experiment

Genetic Experiment[ BIO★KAY]

PRINCIPLE

TOPO cloning is a molecular

biology technique in which

DNA fragments amplified by

Taq polymerase are cloned

into specific vectors without

The requirement for DNA

ligases.

PURPOSE METHOD

[8]

TOPO TA CLONING

Competent cell making

with DH5α

Target gene(mug)

Insert in Topo Vector

Plasmid host to Insert

and Transformation

Smear to Master Plate

Get large quantities of

the plasmid

Topo vector and

insert of combinations

★mug

Page 21: Kay's portfolio

03 Gene Cloning Experiment

Genetic Experiment[ BIO★KAY]

Topo cloning of product

Check as Colony PCR

The Screening of

bacterial clones for

correct ligation

PURPOSE

Pick a bacterial colony

with an autoclaved

toothpick, swirl it

Heat the mix in a

boiling water bath

Take the supernatant as

template

METHOD RESULT

[9]

Colony PCR

Colony PCR Condition

M13 ForwardPrimer 5’ – CAG GAA ACA GCT ATG AC – 3’

M13 Reverse Primer 5’ – GTA AAA CGA CGG CCA G - 3’

Target Size 708bp [519bp(insert+enzyme site) +

168bp(enzyme site) + 33bp(2 primers)]

Template Topo vector to be transforming a DH5α

Enzyme Dream Taq DNA Polymerase

1000bp

750bp ProductSize

Page 22: Kay's portfolio

[ BI ]

Data Programming

[ BIO★KAY]

01 WordPress Homepage

02 Python Programming

03 R Statistics

Page 23: Kay's portfolio

[ BIO★KAY]

01 WordPress Homepage - for Portfolio -

CONTENTSMySQL, Photoshop, PHP, CSS

Development Tool

To make a Portfolio.

SUBJECT

ABOUT + PORTFOLIO +BT + BI

COMPONENTS

Focusing on a Simple functionand Clean image

STRATEGY

Top navigation, Simple layout2D graphic, Dynamic effect

Technique of Expression

Logo Design, Mood of smart and trendy, Intense blue color

Design Concept

디자인팀장

OOOwww.kimaeyoung.com

www.kimaeyoung.com

www.kimaeyoung.com

Page 24: Kay's portfolio

01 WordPress Homepage

Data Programming[ BIO★KAY]

Page 25: Kay's portfolio

02 Python Programming

Data Programming[ BIO★KAY]

◆ from random import randint

secret = randint(1,100)

print ('Hello! What is your name?')

myName = input()

print('Well, ' + myName + ', How much he loves you?

You are thinking of a number between 1 and 100.')

guess = 0

while guess != secret:

g = input ("Guess the score: ")

guess = int (g)

if guess == secret:

print ('Good job, ' + myName + '! He loves you.')

else:

if guess > secret:

print("He doesn't love you more than you think.")

else:

print("He loves you more than you think.")

print ("Game over!")

secret 변수는 1부터 100사이의 임의의 수로 설정

「Hello! What is your name?」 메시지 출력

플레이어가 입력한 이름이 myName 변수에 저장

플레이어에게 변경된 범위를 가지고 물어보게 함

guess 값을 적절한 값으로 초기화해서 루프 실행

플레이어의 추측 넘버를 secret 변수와 비교( != 값비교)

플레이어의 추측이 틀렸다면 계속 실행

입력한 값을 숫자로 변경

사용자가 입력한 값이 secret 변수이면

"Good job, ‘ + myName + ‘! He loves you." 라고 출력

그렇지 않으면

플레이어가 입력한 값이 secret 변수보다 크면

"He doesn't love you more than you think" 라고 출력

그렇지 않으면

"He loves you more than you think" 라고 출력

"Game over!" 라고 출력

「그의 마음을 맞혀봐!」 게임

Hello! What is your name? tinaWell, tina, How much he loves you? You are thinking of a number between 1 and 100.Guess the score: 100He doesn't love you more than you think.Guess the score: 30He loves you more than you think.Guess the score: 34Good job, tina! He loves you. Game over!

[프로그램 코드분석]

[결과 출력]

Page 26: Kay's portfolio

02 Python Programming

Data Programming[ BIO★KAY]

「점수출력」 프로그램

매년 폴리텍 대학에서 열리는 DNA클로닝 [DNA Cloning] 대회가 예전과는 달리 올해에는 더 인기가 높

다. 올해는 참가자가 매우 많기 때문에 학교측에서는 점수를 기록하기 위한 파이썬 프로그램을 요청하였다. 파이썬 프로그램은 최고의 파이펫팅(pipetting) 점수를 찾아내는 것이다.

♦ scores = {}

result_f = open("results.txt")

for line in result_f:

(name, score) = line.split()

scores[score] = name

result_f.close()

print("The top scores were:")

for each_score in sorted(scores.keys(), reverse = True):

print('Technician'+scores[each_score]+'scored '+each_score)

♦ 빈 해시에서 시작

파일에서 data를 읽음

name과 score라는 변수를 생성하기 위해 split() 메소드와

다중 할당을 사용하는 코드를 추가!

♦ - 이름과 점수를 분리한 후에는 score를 해시의 키로, name을

해시의 값으로 저장

플레이어의 추측 넘버를 secret 변수와 비교( != 값비교)

플레이어의 추측이 틀렸다면 계속 실행

♦ - scores 해시의 키를 정렬 하려면 sorted 함수 사용- 높은 숫자가 앞에 나와야 하므로 reverse = True 옵션을 줌- for 루프를 사용하여 해시와 데이터를 반복 처리

[프로그램 코드분석]

[results.txt Contents]

11The top scores were: Technician Juan scored 9.12 Technician Johnny scored 8.65 Technician Joseph scored 8.45

Technician Aaron scored 8.31 Technician Aideen scored 8.05 Technician Stacey scored 7.81 Technician Zack scored 7.21

[결과 출력]

11Johnny 8.65 Juan 9.12 Joseph 8.45 Stacey 7.81 Aideen 8.05 Zack 7.21 Aaron 8.31

Page 27: Kay's portfolio

02 Python Programming

Data Programming[ BIO★KAY]

「데이터출력」 프로그램

BGI[Beijing Genomics Institute] 즉, 글로벌 유전체 연구소에서는 NIPT 검사 신청자가 예전과는 달리

올해에는 더 많기 때문에 연구소에서는 어떤 산모이든지 데이터를 빠르게 출력할 수 있는 프로그램을 요청하였다.

♦ def find_details(id2find):

surfers_f = open(“nifty_data.csv")

for each_line in surfers_f:

s = {}

(s['id'], s['name'], s['country'], s[‘Blood type'], s['age']) =

each_line.split(";")

♦ if id2find == int(s['id']):

♦ maternity_f.close()

♦ return(s)

♦ maternity_f.close()

♦ return({})

♦ lookup_id = int(input("Enter the id of the maternity: "))

♦ surfer = find_details(lookup_id)

♦ if maternity:

♦ print("ID: " + maternity['id'])

print("Name: " + maternity['name'])

print("Country: " + maternity['country'])

print("Blood type: " + maternity['Blood type'])

print("Age: " + maternity

♦ 데이터를 읽기 위해서는 파일을 열어야 한다

♦ for 루프를 사용하여 파일의 각 라인을 반복한다

♦ 빈 해시로 시작해야 한다

♦ split() 메소드를 사용하여 데이터를 분할하고, 다중 할당으로 각 해시에데이터를 저장

♦ 인자가 동일!파일을 닫고 현재의 해시를 반환

♦ 파일 끝까지 검색했지만 해당 ID를 찾지 못함파일을 닫고 빈 해시를 반환

♦ 사용자에게 산모 ID 물어봄♦ 입력받은 산모 ID로 find_details 를 호출♦ 만약 데이터를 찾으면 이쁘게 포맷된 메시지를 출력한다

[프로그램 코드분석]

Page 28: Kay's portfolio

02 Python Programming

Data Programming[ BIO★KAY]

Johnny 8.65 Juan 2 Joseph 8.45 Stacey 7.81 Aideen 8.05 Zack 7.21 Aaron 8.31

「데이터출력」 프로그램

[surfing_data.csv Contents]

101;Johnny Jones;USA;O;41102;Juan Martino;Spain;9.01;Gun;36103;Joseph Smyth;USA;B;37104;Stacey O'Neill;Korea;B;35105;Aideen Wu;Japan;A;40106;Zack MacFadden;Scotland;A;36107;Aaron Valentino;Italy;O;45

11

Enter the id of the maternity: 104ID: 104Name: Stacey O'NeillCountry: KoreaBlood type: BAge: 35

[결과 출력]

Page 29: Kay's portfolio

02 Python Programming

Data Programming[ BIO★KAY]

Johnny 8.65 Juan 9.12 Joseph 8.45 Stacey 7.81 Aideen 8.05 Zack 7.21 Aaron 8.31

「 The Last Unicorn 」 게임

올해 파이선 게임 회사에서는 최고의 실적을 기대하는 획기적인 게임 프로그램이 필요하게 되었다. 전 세계 게이머들을 대상으로 하는 글로벌한 게임을 원했기 때문에 주최측에서는 흥미로운 모험을 떠나는 새로운 파이선 게임 프로그램을 요청하였다.

[스토리보드]

어두운 숲 속을 헤매던 당신은 가까스로 유니콘이 사는 유리로 뒤덮인 궁전 문 앞에 서성거리고 있다. 당신이 성 문 앞에 다가가자 각 금빛

과 은빛의 화려한 빛깔을 뽐내는 두 마리의 유니콘들이 성 밖에서 날개 짓을 하며 날아왔다. 유니콘들은 어마어마한 보물더미를 가르키는

지도가 수려하게 수 놓아진 고급스러운 천으로 몸을 감싸고 있었다. 어떤 유니콘은 매우 친절해서 당신에게 보물지도를 줄 수도 있지만 또 다

른 유니콘은 매우 욕심이 많고 의심이 많아서 누군가 성에 들어오면 바로 해칠 것이다. 당신은 두 마리의 유니콘 앞에 서 있다. 한쪽에는 친절

한 유니콘이 있고, 다른 쪽에는 사악한 유니콘이 있다. 당신은 두 유니콘 가운데 하나를 선택해야 한다.

You are in castle of unicorns. In front of you, you see two unicorns. In one unicorn, the unicorn is friendly and will share his

treasure with you. The other one is full of doubting unicorn, and will hurt you on sight.

Which unicorn will you go into? (1 or 2)

1

You choose the unicorn...

It is in splendor and fine colors...

A large unicorn jumps out in front of you! He butted him with its horns and...

Knock you off in a flash!

Do you want to play again? (yes or no)

no

Page 30: Kay's portfolio

02 Python Programming

Data Programming[ BIO★KAY]

플레이어가동굴을 선택한다

「 The Last Unicorn 」 게임

시작

다시플레이어할것인지물어보기

종료

플레이어의승리 플레이어의패배

[드래곤왕국의플로우 차트]

초기화면 보여주기

플레이어가유니콘을선택한다

사악한유니콘인지친절한유니콘인지

검사한다

Page 31: Kay's portfolio

02 Python Programming

Data Programming[ BIO★KAY]

「 The Last Unicorn 」 게임

1

♦ import random♦ import time♦ def displayIntro():♦ print('You are in in castle of unicorns. In front of you,')♦ print('You see two unicorns. In one unicorn, the unicorn is friendly')♦ print('and will share his treasure map with you. The other dragon')♦ print('is full of doubting unicorn, and will hurt you on sight.')♦ print()♦ def chooseUnicorn():♦ unicorn = ' ‘♦ while unicorn != '1' and unicorn != '2':♦ print('Which unicorn will you go into? (1 or 2)')♦ unicorn = input()

♦ friendlyUnicorn = random.randint(1, 2)♦ if chosenUnicorn == str(friendlyUnicorn):♦ print('Gives you his treasure map!')♦ else:♦ print(‘Knock you off in a flash!')♦ playAgain = 'yes‘♦ while playAgain == 'yes' or playAgain == 'y':♦ displayIntro()♦ caveNumber = chooseUnicorn()♦ checkUnicorn(caveNumber)♦ print('Do you want to play again? (yes or no)')♦ playAgain = input()

[프로그램 코드분석]

♦ random 모듈을 가져온다.♦ time 모듈을 가져온다.♦ def문은 def 키워드 다음에 함수의 이름, 괄호 그리고 콜론(:)이 나온다.

def문은 displayIntro() 라는 이름의 함수를 호출하는 것이 아니다. def문은 프로그램의 나중에 호출할 함수를 만들고 정의(define)한다.프로그램이 실행되다가 def 문을 만나면 프로그램은 def 블록의 끝까지 넘어가 버린다.

♦ 또 다른 함수 chooseUnicorn()를 정의한다. 이 함수에서는 사용자에게 어떤 동굴

을 선택할 것인지 묻는다.♦ 플레이어가 1이나 2를 입력해야 while 조건이 False가 되고 비로소 while문

을 빠져나가 다음을 수행한다.

♦ 이제 프로그램은 무작위로 어떤 동굴에 친절한 용을 둘 것인지 선택한다.

random.randint()를 호출하면 1이나 2를 반환한다)이다.♦ 만약 조건문이 True이면 if 블록을 수행하지만 그렇지 않으면 else 블록을

수행한다.

♦ while 문의 시작 부분이다. playAgain이 ‘yes’ 나 ‘y’면 루프문에 들어간다.♦ displayIntro() 함수를 호출한다.

♦ while 블록의 끝까지 오면 프로그램은 playAgain이 ‘yes’나 ‘y’인지 또

검사한다.

11

You are in castle of unicorns. In front of you,

Which unicorn will you go into? (1 or 2)1You choose the unicorn...It is in splendor and fine colors...A large unicorn jumps out in front of you! He butted him with its horns and...

Gives you his treasure map!Do you want to play again? (yes or no)

[결과 출력]

Page 32: Kay's portfolio

Data Programming[ BIO★KAY]

03 R Statistics

> score <- read.csv("사원별월별실적현황_상반기.csv",header=T)

> score이름 월 실적금액 목표금액 성취도

1 서동준 1 100 100 1.002 서동준 2 85 100 0.853 서동준 3 75 100 0.754 서동준 4 98 100 0.985 서동준 5 92 100 0.926 서동준 6 97 100 0.977 김현민 1 90 100 0.908 김현민 2 92 100 0.929 김현민 3 68 100 0.68

10 김현민 4 87 100 0.87

42 김지성 6 91 100 0.91> graph <- ggplot(score,aes(factor(이름),실적금액))+geom_boxplot()> graph> savePlot("score_1.png,type="png")> graph2 <- ggplot(score,aes(factor(이름),실적금액))+geom_boxplot()+geom_iitter()> graph2> savePlot("score_2.png",type="png")> graph3 <- ggplot(score,aes(factor(이름),실적금액))+geom_boxplot(aes(fill=(이름)))> graph3> savePlot("score_3.png",type="png")

「실적분석」 프로그램

2015 올해의 상반기 실적 분석을 알리는 업무 평가표가 발표되었다. 이 평가표는 기존과는 달리 인턴 사원끼리의 실적 현황을 비교하는 것이기 때문에 신입사원을 뽑기 위한 중요한 지표가 되고 있다. 따라서회사측에서는 새로운 신입사원을 뽑기 위한 「실적 분석 프로그램」 을 요청하였다. 이 R 통계 프로그램은상반기 최고의 실적을 가진 인턴 사원을 찾아내는 것이다.

Page 33: Kay's portfolio

BIO★KAY