by_past
박데이터 분석
by_past
전체 방문자
오늘
어제
  • 분류 전체보기 (22)
    • about web (6)
    • 좋은글 (4)
    • 오답노트 (2)
    • 빅데이터 분석 첫걸음 시작하기 (2)
    • 선형대수학 (3)
      • 선형대수의 본질 (1)
      • 선형대수학을 위한 수학기초 (1)
    • 태블로 데이터 시각화 첫걸음 시작하기 (3)
    • 파이썬 (1)
      • 기초 문법 (1)
      • 부동산 데이터 분석 (0)

블로그 메뉴

    공지사항

    인기 글

    태그

    • 내일배움카드
    • 챕터 3
    • 국비지원
    • 태블로1주차
    • 패스트캠퍼스
    • 컴퓨터와 선형대수학
    • 유형별시각화
    • 아주작은습관의힘
    • guide to LINEAR ALGEBRA
    • 선형대수학의 본질
    • 바이트디그리
    • 태블로강의
    • 심리학
    • 태블로 1주차
    • 파이썬_어렵다
    • 이상구교수
    • 선형대수학의 르네상스
    • 독후감
    • 선형대수학의 역사
    • K디지털기초역량훈련

    최근 댓글

    최근 글

    티스토리

    hELLO · Designed By 정상우.
    by_past

    박데이터 분석

    빅데이터 분석 첫걸음 시작하기

    2주차_Python 기본 문법

    2022. 3. 8. 23:02

    00. Data Type 

    Check point 

    • 데이터 타입이란 모든 프로그래밍 언너가 데이터를 다루기 위해 필요한 약속 
    • "변수"라는 개념을 통해 데이터 사용 가능
    • 데이터 타입을 배울 떄 중요한 포인트는 어떤 연산을 사용할 수 있는지와 연산결과가 어떤 의미인지 이다.
    • 변수 = 메모리에 데이터를 저장하기 위한 공간을 가리키는 말이며, 컴퓨터와 프로그래밍 언어 사용자간의 약속이다.
    • 데이터 타입 : 숫자 데이터, 문자열 데이터, 리스트, 튜플, 집합, 사전 
    • indexing과 slicing이 가능/불가능한 데이터 타입 : 리스트, 튜플, 사전 / 집합
    • mutable(assignment 자유로움) / immutable (assignment 제한) : list, dict*, set / int, float, string, tuple, frozenset
    • * 단, dict 에서 key값의 데이터 타입은 immutable 해야 함 (∵) 중복되면 안됨. 

    Programing Practice 

    # 문제 1. 학점계산기

    # 문제 2. 십의 자리 구하기

    # 문제 3. 학습결과 출력하기

    # 문제 4. 주민등록번호 가리기

    # 문제 5. 호텔 예약 관리하기

    # 문제 6. 키 순으로 줄세우기

    # 문제 7. 데이터 일부만 출력하기

    # 문제 8. 데이터 얼리기

    # 문제 9. 단어 종류 파악하기

    # 문제 10. codebook 만들기

    # 문제 11. 도서 관리하기 

    01. Control Statement

    Programing Practice 

    # 문제 1.  if 지옥

    a  = "Life is too short, you need python"
    
    if "wife" in a:
        print("wife")
    elif "python" in a and "you" not in a:
        print("python")
    elif "shirt" not in a:
        print("shirt")
    elif "need" in a:
        print("need")
    else:
        print("none")

    Q. 다음 코드의 실행결과를 예측해보자. 

    my A : a라는 문자열 데이터에는 shirt란 단어가 없으니까 shirt가 출력되고, need가 있으니까 need가 출력될 것이다. 

    A : shirt 만 출력됨 

    *elif는 위의 조건의 아닐때의 조건인데, 위의 조건이 맞으므로 그 아래의 elif조건문은 실행 안됨! 

    # 문제 2. 약수 찾기

    Q. 100 이라의 자연수 중에서 5의 배수를 모두 찾아서 출력 

    my A.

    number = 1
    while number <= 100: 
    	if number % 5 == 0:
        	print(number)
     		number += 1
        else:
        	number += 1

    # 문제 3. 별 찍기!

    number = int(input("숫자를 입력하세요 : "))
    	for i in range(number):  # number가 5인 경우 5번 반복
        	for j in range(number - i):  # number가 5에서 1이 될때까지 (5번) 반복
            	print("*", end='')		 # print문이 끝나게 될 경우 개행(\n)이 되는 것을 막기위해 end=''옵션 사용
            print()  # *가 number 갯수 부터 1개가 될때까지 print

    또는

    for i in range(number):
    	print("*" * (number - i))

    # 문제 4. 단어갯수 구하기 (어려움)

    Me: 문제 파악도 못했구요.... 

    news_list = [news1.split(), news2.split(), news3.split(), news4.split(), news5.split()]
    
    for i in range(len(news_list)):
        print(str(len(news_list[i])))

    해설 답안을 보자..! 

    ## 우선 word_list와 count_list라는 빈 리스트 만들고, 

    ## for문을 이용해서 word라는 변수를 word_list에 append 한다.

    ## word라는 변수를 word_list에 넣을 때는 set()을 이용해서 중복제거 해준다.

    ## count_list에는 중복제거를 하지 않고, for 문을 이용해서 단어갯수만큼 리스트에 0을 추가

     

    ## 추출한 word를 매치시켜 단어의 갯수를 구하자 

    ## word를 news1의 단어 갯수 만큼 반복하여 하나하나씩 검사 후 동일 단어가 나오면 Count_list에 1을 추가

     

    ## 이제 word와 count라는 변수에 두 리스트를 zip을 이용해 매칭시켜 

    ## 딕셔너리 형태로 만들수 있다. 

     

    이 모든 것을 한번에 하는 방법 : get 메소드 이다. 

    for word in news1.split():
        word_Dict[word] = word_Dict.get(word, 0) + 1
      #get메소드를 이용하여 키값이 있을 경우 키에 대한 값을 불러오고 없을 경우 기본값을 갖는 데이터 추가   
    word_Dict

    허무한데, 짜릿하다.

    메소드 하나 알 뿐인데, 과정이 이렇게 깔끔해지다니, 

    축적된 시간 속에서 살아남을려면 학습이 답인 것 같다.

     

    02. Function 

    함수를 사용하는 가장 중요한 이유는 재사용성 때문이다. Reusability라고 하며, 
    똑같은 구조의 코드가 반복되는 것을 피하기 위해 사용
    된다. 똑같은 구조의 코드는 보통 한 가지의 기능 단위로 묶이게 되며, 이 기능 단위를 코드로 묶어서 함수로 만든다.

    참고 사이트 

    https://docs.python.org/ko/3/library/functions.html

     

    내장 함수 — Python 3.10.2 문서

    내장 함수 파이썬 인터프리터에는 항상 사용할 수 있는 많은 함수와 형이 내장되어 있습니다. 여기에서 알파벳 순으로 나열합니다. abs(x) 숫자의 절댓값을 돌려줍니다. 인자는 정수, 실수 또는 __

    docs.python.org

     

    저작자표시

    '빅데이터 분석 첫걸음 시작하기' 카테고리의 다른 글

    1주차_데이터 분석 개요  (0) 2022.03.01
      '빅데이터 분석 첫걸음 시작하기' 카테고리의 다른 글
      • 1주차_데이터 분석 개요
      by_past
      by_past
      빅데이터 첫걸음마 #K-digital_Credit

      티스토리툴바