R 프로그래밍 2019. 10. 6. 00:01

rm(x) # x변수를 삭제합니다.
ls() # 변수목록을 출력합니다. 
rm(list=ls()) #모든 변수를 삭제합니다. 
getwd() #작업디렉토리의 주소를 출력합니다. 
setwd("D:/R") #작업디렉토리를 변경합니다. 
sink('nomal.txt') #결과값을 작업디렉토리에 텍스트로 저장합니다. 
sink() #저장을 종료합니다. 
# jpeg('파일이름,jpeg'), pdf('파일이름.pdf') 도 있습니다.
# 종료할때는 jpeg(),pdf() 을 실행하시면 됩니다. 
q() #r프로그램을 종료합니다. 
save.image('nomal.RData') #작업디렉토리에 작업공간을 저장합니다.
#변수들을 RData로 저장합니다.
#load('주소') 저장되어있는 RData를 불러옵니다.
savehistory('nomal.Rhistory') # 작업디렉토리에 Rhistory로 저장합니다. # 여태껏 실행시켜온것들을 저장합니다.
#loadhistory('주소') 저장되어있는 Rhistory를 불러옵니다.
source('11.txt', echo=T)  # txt에 저장되어있는 실행문을 실행시킵니다.
print(x) # 명령문의 값을 출력합니다.
example(list) # 함수의 예제을 보여줍니다.
?list #함수의 설명을 보여줍니다.
table(z)#빈도를 table의 형태로보여줍니다.
LETTERS #영문자(대문자)
letters #영문자(소문자)
class(f.y) #변수의 속성을 보여줍니다.
mode(f.y) #변수의 유형을 보여줍니다.
attach(d.f) #특정 데이터 프레임을 활성화 시킵니다.
#데이터 프레임이 활성화되면 데이터프레임안에있는 변수명들을 실제변수처럼사용가능합니다.
detach(d.f) #활성화를 종료합니다.

'R 프로그래밍' 카테고리의 다른 글

[R프로그래밍] 통계관련함수  (0) 2019.10.06
[R프로그래밍] 연산자  (0) 2019.10.06
[R프로그래밍] 자료의 종류  (0) 2019.10.05
[R프로그래밍] R 기초 문법  (0) 2019.10.05
[R프로그래밍] R Studio 사용법  (0) 2019.10.05
posted by 스노(Snow)
:
R 프로그래밍 2019. 10. 5. 02:23

변수에 자료 넣기

x <- 1

x = 1

- x라는 이름의 변수에 1이라는 자료가 들어갑니다.

x변수의 내용 보기

print(x)

x

데이터 타입[벡터]

- 동일한 유형의 데이터를 연속적으로 담을 수 있는 그릇을 '벡터'라고 합니다.

- c()함수를 사용하여 만들 수 있습니다.

 

x <- c(1,2,3,4,5)                # 숫자형 벡터

y <- c("강원","경북","경기") # 문자형 벡터

z <- c(TRUE,FALSE,T,F)       # 논리형 벡터

논리형 벡터는 숫자처럼 인식됩니다. TRUE=1, FALSE=0

 

w <- c(1,"강원",F) # 한 벡터에 숫자와 문자가 함께 포함되어 있다면 벡터의 데이터들은 모두 문자형으로 변환됩니다.

데이터 타입[배열]

- 한 개이상의 백터로 구성되어 있으며, 동일한 데이터 유형을 갖습니다.

- array()함수를 사용하여 만듭니다.

데이터 타입[행렬]

- 행과 열로 구성되는 2차원 배열을 matrix라고 합니다.

- matrix() 함수를 사용하여 만듭니다.

- byrow 옵션으로 행부터 원소를 채울수 있습니다.

- cbind는 옆으로 데이터를 결합하며, rbind는 아래로 데이터를 결합해줍니다.

데이터 타입[데이터 프레임]

- 데이터 프레임은 여러가지 벡터들을 하나로 묶어줍니다.

- 단, 길이가 모두 같아야 합니다.

- 각 속성(벡터)들의 데이터 유형(숫자, 문자, 논리)은 서로 다를 수 있습니다.

- data.frame()함수로 만듭니다.

데이터 타입[리스트]

- 리스트는 모든 형태의 자료들을 하나로 묶어줍니다.

- list()함수를 사용하여 만듭니다.

 

posted by 스노(Snow)
:
R 프로그래밍 2019. 10. 5. 01:40

R의 특징

- R은 대소문자를 구분하므로 명령을 실행할 때 주의해야 합니다.

- # 기호는 주석으로 인식됩니다.

 

작업폴더 변경

- setwd("디렉토리명")

 (주의) R에서 경로에 \가 아닌 \\나 /를 사용합니다.

화면에 결과 출력하기

- print() : 괄호 안에 출력하고 싶은 함수나 내용을 적으면 콘솔창에 출력됩니다.

- cat() : 여러 개를 한번에 출력하고 싶을 떄 사용합니다.

print()와 다르게 함수나 내용을 여러개 출력 가능합니다.

 

posted by 스노(Snow)
:
R 프로그래밍 2019. 10. 5. 01:09

R studio화면

한글 깨짐 현상을 방지하기 위한 환경설정

기본 작업 폴더 지정하는 방법

posted by 스노(Snow)
:
HTML,CSS,JS 2019. 10. 5. 00:44

[완성품]

 

[코드]

<html>

 <head>

  <title> 06 </title>

  <script language="javascript">

   function previewString(){

  var objResult = document.getElementById("result");

  var objText = document.getElementById("tbString");

  var objFontColor = document.getElementById("fontColor");

  var objFontSize = document.getElementById("fontSize");

  var objOptions = document.getElementsByName("option");

 

  var targetString = objText.value;

 

  targetString = targetString.fontcolor(

  objFontColor.options[objFontColor.selectedIndex].value);

  targetString = targetString.fontsize(

  objFontSize.options[objFontSize.selectedIndex].value);

 

  if (objOptions[0].checked){

   targetString=targetString.strike();

  }

  if (objOptions[1].checked){

   targetString=targetString.bold();

  }

  if (objOptions[2].checked){

   targetString=targetString.italics();

  }

  if (objOptions[3].checked){

   targetString=targetString.toLowerCase();

  }

  if (objOptions[4].checked){

   targetString=targetString.toUpperCase();

  }

  objResult.innerHTML = targetString;

}

</script>

 </head>

 <body>

  <form>

   <input type="text" name="my_text" size="30" id="tbString">

   <input type="button" value="미리 보기"

   onclick="previewString()">

   <br>색상 : 

   <select id="fontColor">

    <option value="Red">빨강</option>

    <option value="Blue">파랑</option>

    <option value="Green">초록</option>

   </select>

   <br>크기 : 

   <select id="fontSize">

    <option value="1">1</option>

    <option value="2">2</option>

    <option value="3">3</option>

    <option value="4">4</option>

    <option value="5">5</option>

    <option value="6">6</option>

   </select>  <br>

    <input type="checkbox" name="option" value="cancel">취소선

    <input type="checkbox" name="option" value="thick">두껍게

    <input type="checkbox" name="option" value="tip">기울임<br>

    <input type="checkbox" name="option" value="s_letter">소문자로

    <input type="checkbox" name="option" value="b_letter">대문자로<br>

   <span id="result"></span>

  </form>

 </body>

</html>

'HTML,CSS,JS' 카테고리의 다른 글

[HTML]웹에 현재시간 추가하기  (0) 2019.10.06
[HTML] 초간단 표 만들기  (0) 2019.10.05
posted by 스노(Snow)
:
HTML,CSS,JS 2019. 10. 5. 00:13

표 만들 때 사용하는 태그

<table> 표를 만드는 태그입니다.
<tr> 표에서 행(가로)을 지정할때 쓰이는 태그입니다.
<td> 내용이 들어가는 셀 하나를 만드는 태그입니다.
colspan 좌우로 합치고자 하는 셀의 개수입니다.
rowspan 상하로 합치고자 하는 셀의 개수입니다.

 

 

[완성품]

[코드]

<html>

    <head>

        <title> 오늘의 수입/지출 </title>

    </head>

    <body>

        <table width="400" height="250" border="2" align="center" cellspacing="0" >

            <tr><!---첫번째줄--->

                <td Colspan="3" bgcolor="Red">오늘의 수입/지출</td>

            </tr>

            <tr bgcolor="pink" align="center" ><!---두번째줄--->

                <td >내용</td>

                <td>수입</td>

                <td>지출</td>

            </tr>

            <tr><!---세번째줄--->

                <td align="center">월급!</td>

                <td align="right">1,000,000</td>

                <td align="right">1,000,000</td>

            </tr>

            <tr><!---네번째줄--->

                <td align="center">점심값</td>

                <td></td>

                <td align="right">5,000</td>

           </tr>

           <tr><!---다섯번째줄--->

                <td align="center">부모님선물</td>

                <td></td>

                <td align="right">30,000</td>

           </tr>

           <tr align="center"><!---여섯번째줄--->

                <td rowspan=3 bgcolor="pink">총계</td>

                <td>수입</td>

                <td>지출</td>

            </tr>

            <tr><!---일곱번째줄--->

                <td align="right">1,000,000</td>

                <td align="right">35,000</td>

            </tr>

            <tr><!---여덟번째줄--->

                <td align="center">남은 돈</td>

                <td align="right">965,000</td>

            </tr>

        </table>

    </body>

</html>

 

'HTML,CSS,JS' 카테고리의 다른 글

[HTML]웹에 현재시간 추가하기  (0) 2019.10.06
[HTML] 글자크기 및 속성  (0) 2019.10.05
posted by 스노(Snow)
:
R 프로그래밍 2019. 7. 26. 10:36

R은 통계를 위한 프로그램으로 통계적 방법, 데이터 분석, 데이터 시각화 등을 위해 많은 패키지를 제공하고 있는 프로그램입니다.

R에 대해 본격적으로 공부를 시작하기 전에 먼저 설치하는 방법부터 배우겠습니다.

 

1. R 설치

r-project 홈페이지(https://www.r-project.org/)에 들어가서 R을 설치해보겠습니다.

 

 

CRAN에 들어가면 각 나라별로 CRAN 서버가 나오는데, 스크롤을 내려 Korea 서버 중 하나를 선택하여 들어갑니다.

이제 자신에게 맞는 OS를 선택하면 되는데, 제 노트북은 windows 10이기 때문에

Download R for Windows로 설치하겠습니다.

base를 선택합니다.

Download R 3.6.1 for Windows를 눌러 R-3.6.1-win.exe를 다운받아 실행합니다.

 

설치파일을 실행하면 PC환경에 맞춰서 알아서 세팅되기 때문에 계속 다음을 눌러 설치를 완료하시면 됩니다.

 

 

2. Rstudio 설치

Rstudio는 R을 이용한 여러 작업들을 쉽게 하도록 도와주는 통합개발환경입니다.

Rstudio 홈페이지(https://www.rstudio.com/) 에 들어가서 다운로드를 클릭합니다.

 

 

다운로드를 누르면 OS별로 설치할 수 있는 링크가 나옵니다.

위에는 인스톨버전이고 밑에는 무설치버전으로 압축을 풀면 바로 사용하실 수 있습니다.

저는 무설치 버전 windows7+ (windows7이상 버전 사용)을 받겠습니다.

압축을 푸신 후 bin에 들어가셔서 RStudio.exe로 실행하시면 됩니다.

이렇게 R과 RStudio 설치를 마치겠습니다.

'R 프로그래밍' 카테고리의 다른 글

[R프로그래밍] 연산자  (0) 2019.10.06
[R프로그래밍] 기본함수  (0) 2019.10.06
[R프로그래밍] 자료의 종류  (0) 2019.10.05
[R프로그래밍] R 기초 문법  (0) 2019.10.05
[R프로그래밍] R Studio 사용법  (0) 2019.10.05
posted by 스노(Snow)
:
Python 파이썬 2019. 7. 25. 20:17

[개요]

파이썬으로 간단하게 계좌관리 프로그램을 만들어보았습니다.

계좌번호를 랜덤으로 주되, 겹쳐지지 않도록 만들었습니다.

입금 및 출금 처리시 계좌번호를 먼저 묻고 해당 계좌의 존재유무를 묻습니다.

둘 이상의 고객에 대한 정보를 담아서 관리할 수 있습니다.

[실행창]

 

[코드]

import random
user = []
def start():
    while True:
        print("[Bank Menu]")
        print("1. 계좌개설\n2. 입금처리\n3. 출금처리\n4. 전체 잔액현황\n5. 프로그램 종료")
        a = int(input("선택 = "))
        if a == 1:
            print("================================================")
            print("[계좌개설]")
            user.append(Account())
            print("계좌가 계설되었습니다.")
            print("================================================")
        elif a == 2:
            print("================================================")
            print("[입금처리]")
            _id = input("입금할 계좌번호를 입력하세요")
            errorcheck(_id)
            mini_db(_id)
            ad = int(input("입금할 금액을 입력하세요."))
            deposit(_id,ad)
            print("입금이 완료되었습니다.")
            mini_db(_id)
            print("================================================")
        elif a == 3:
            print("================================================")
            print("[출금처리]")
            _id = input("출금할 계좌번호를 입력하세요")
            print("계좌를 조회합니다")
            errorcheck(_id)
            mini_db(_id)
            su = int(input("출금할 금액을 입력하세요."))
            withdraw(_id,su)
            mini_db(_id)
            print("================================================")
        elif a == 4:
            print("================================================")
            print("[전체고객 잔액현황]")
            if len(user) != 0 :
                mini_db("all")
            else :
                print("결과가 없습니다.")
            print("================================================")
        elif a == 5:
            print("================================================")
            print("종료하시겠습니까?")
            print("1.예 2.아니오")
            endnum = int(input())
            if endnum == 1:
                break
            elif endnum == 2:
                print("================================================")
            else:
                print("입력형식이 잘못되었습니다.")
                print("================================================")
            
        else:
            print("다시 입력하세요")
            print("================================================")

def errorcheck(_id):
    try:
        co = -1
        for i in range(0, len(user)+1):
            co +=1
            if user[i]._id == _id :
                break
        if user[co]._id == _id :
            print("계좌를 조회합니다")
    except:
        print("없는 계좌번호입니다.")
        start()
        

def deposit(_id,ad):
    co = -1
    for i in range(0, len(user)+1):
        co +=1
        if user[i]._id == _id :
            break
    if user[co]._id == _id :
            user[i].balance += ad

def withdraw(_id,su):
    co = -1
    for i in range(0, len(user)+1):
        co +=1
        if user[i]._id == _id :
            break
    if user[co]._id == _id :
            if user[i].balance >= su:
                user[i].balance -= su
                print("출금이 완료되었습니다.")
            else:
                print("금액이 모자랍니다")

def mini_db(_id):
    if _id == "all":
        for i in range(0, len(user)):
            print(i+1,end=" ")
            user[i].disp()
        return
    else:
        for i in range(0, len(user)):
            if user[i]._id == _id :
                print(i+1,end=" ")
                user[i].disp()
        return True
    return False
    

class Account:
    def __init__(self):
        ran_num = ["0", "0", "0","0","0","0","0","0","0","0","0","0","0","0"]
        for i in range(14):
            ran_num[i] = random.randrange(1,9,1)
        ran_num[0]='1'
        ran_num[1]='1'
        ran_num[2]='0'
        ran_num[3]='-'
        ran_num[7]='-'
        self._id=""
        for i in range(14):
            self._id += str(ran_num[i])
        for i in range(0, len(user)):
            if user[i]._id == self._id :
                user.append(Account())
        print(self._id, sep="")
        self.name= input("이름 입력 : ")
        self.balance = int(input("입금 금액 입력 : "))
    def set_id(self, _id):
        self._id = _id
    def setname(self, name):
        self.name = name
    def setbalance(self, balance):
        self.balance = balance
    def disp(self):
        print(self._id," ",self.name," ",self.balance)
        


if __name__ == "__main__":
    start()

 

posted by 스노(Snow)
: