파이썬 데이터 타입

  • Numeric 숫자
    • Integer 정수 (소수점 이하에 정보가 없는 숫자)
    • Complex Number 복소수
    • Float 실수
    • (정수-실수 개념이 컴퓨터에서 소수, 소수가 아닌 숫자로 구분)
  • Dictionary 사전
  • Boolean 참, 거짓
  • Set 집합
  • Sequence Type 여러 개의 데이터 모음, 순서를 가지고 있고 데이터 뭉터기로 관리할 수 있음
    • Strings
    • List
    • Tuple

데이터 타입

- 모든 프로그래밍 언어가 데이터를 다루기 위한 약속 :  int, float, str, list, tuple, set, dict... 

- 프로그래밍 언어마다 다르며 data type에 대한 이해가 있어야 파이썬 데이터 분석이 가능

- 변수(variable)에서 데이터를 저장/관리하며 변수에 대한 개념을 통해 데이터를 사용할 수 있다. = 변수라는 개념을 통해 데이터를 사용할 수 있다.

- 연산 결과가 어떤 의미인지 알아야 한다.

 

변수 Variable

- 변수는 메모리에 데이터를 저장하기 위한 공간을 가리키는 말이며, 컴퓨터와 프로그래밍 언어 사용자간의 약속이다.

(컴퓨터 메모리에 저장, 사람이 쓰기 편한 형태로 인지할 수 있도록 하는게 변수다. ex) a=adress, b=10 etc)

a : 컴퓨터와 사용자가 인식하는 특정 데이터를 저장하고 있는 공간이고, 공간의 이름을 a라고 한다.

 

- 변수는 일종의 닉네임으로, 실제 물리적인 메모리 주소공간을 가리킨다.

사용자는 변수의 이름으로 데이터를 인식하고, 컴퓨터는 변수의 주소로 데이터를 인식한다.

 

- 변수에 데이터를 저장할 때는 '='를 사용한다. 이건 assignment operator라고 부른다.

= 할당, a = 10 (a라는 공간에 10이라는 데이터를 할당한다.)

 

예제)

 

a=10으로 할당하고 id(a)로 컴퓨터가 알고 있는 a가 할당된 주소를 반환했다.

 

Data Type  관련 질문과 답변 숙제

1. 데이터 타입이 왜 다른지? 컴퓨터는 정수와 실수를 어떻게 인식할까? 왜 따로 구분하지?

컴퓨터에서 데이터를 처리하기 위해서는 데이터를 저장해야 하고, 데이터 종류에 따라 분류하여 적절한 크기의 공간에 저장하기 위해 데이터 타입이 필요하다.

- 데이터 타입의 세분화가 잘되면 메모리의 효율성을 조금 더 높일 수 있다고 한다.

- 컴퓨터에서 데이터 타입 별로 별도의 크기와 공간을 가진다.

 

2. 100개의 숫자를 한꺼번에 다루고 싶을 때 어떻게 해야할까?

- 자료 구조와 관련이 많은 것 같음. 강의자가 낸 질문 의도에 맞는지 모르겠음. 추후 강의 확인 필요하지만 ML에서 Linked list 구조 확인

결론은 컴퓨터는 저장된 데이터를 한번에 다루고 싶다면 데이터를 불러와서 처리해야 한다. 순차적으로 병렬 처리를 할 수도 있지만 연결된 구조를 만들어서 처리할 수도 있나보다.

데이터 구조에 따라서 어떻게 가져올지, 더 효율적으로 처리할지가 달라지는 것 같다.

 

3. 컴퓨터는 문자를 어떻게 인식할까?

컴퓨터는 010101인데 글자 text는 어떻게 인식하는 거지?

컴퓨터는 특정 문자 정보를 고유한 숫자정보로 저장하고 있고 0,1의 2진법으로 표현한다. (변환 규칙은 ascii code 참고)

파이썬에서 문자데이터는 String이며 문자열은 character들의 모음으로 문자열 배열array로 생각할 수 있다.

- character : 문자 1개

- string : character들의 모음

- 문자열 값 표현은 작은 따옴표나 큰 따옴표로 감싼다. '문자', "텍스트" 또는 """~"""

 

4. 많은 데이터를 빠르게 찾아야 할때는 어떻게 저장할까? 데이터가 엄청 많을 때 데이터를 어떻게 우리가 찾을 수 있는지?

데이터 타입은 어떤 차이가 있고 어떻게 저장되어 있는지

데이터 타입과 구조에 따라 저장하는 다양한 방식이 있다. 이건 조금 더 공부가 필요함

 

 

by.unsplash


참고 자료

  • 패스트캠퍼스 : 한 번에 끝내는 데이터 분석 툴 초격차 패키지 Online.

string 관련 글

관련 참고 글) https://blog.naver.com/PostView.nhn?blogId=youndok&logNo=222019572902

-제대로 파이썬 책 https://wikidocs.net/22217

 

a) 컴퓨터가 문자를 인식하는 방법

str타입인 길이가 1인 문자객체는 고유한 숫자로 표현될 수 있습니다. `ord`함수를 통해서 특정 문자를 뜻하는 숫자를 확인할 수 있습니다. ``` >>> ord('a') …

wikidocs.net

2번 Linked list https://velog.io/@woojinn8/%EC%9E%90%EB%A3%8C%EA%B5%AC%EC%A1%B0-Linked-List

 

[자료구조] Linked List

자료구조 중 가장 간단한 형태인 Linked List에 대해 정리했습니다.

velog.io

https://www.alibabacloud.com/ko/knowledge/6-optional-technologies-for-data-storage

 

데이터 저장을 위한 6가지 옵션 기술 - Alibaba Cloud

6가지 데이터 저장 기술 중에서 선택할 수 있습니다. 즉: 구조화된 데이터 저장소, nosql 데이터베이스, nosql 데이터베이스 유형, 탄력적 검색, 구조화되지 않은 데이터 저장소, 데이터 레이크.

www.alibabacloud.com

ㄴ 데이터 저장 형태, 방식과 storage 관련된 공부는 더 필요함

'Python' 카테고리의 다른 글

무에서 시작하는 파이썬 공부  (0) 2023.10.27

데이터 분석이 가능하도록 파이썬을 공부하는게 이 게시판의 목표이자 목적이다. 그리고 내가 잘 까먹기 때문에 공부한 내용을 역시 남겨두면 다시 보기도 쉽고, 이왕 이것저것 공부해서 정리해둔 것 open해두면 집단지성의 힘으로 누군가 댓글도 남겨주고 좋은 정보를 공유할 수 있지 않을까? 아님 말고.

 

시작에 앞선 잡썰

이번 학기 처음으로 방통대를 등록했고 통계데이터 학과에서 파이썬과R이라는 수업으로 파이썬과 R을 처음 접했다. 그전에 데이터 업계의 기획자로 일하면서 대~충 노트북, 콜랩이 뭐 하는 도구인지 그런 기본적인 것들은 지식으로 알고 있었지만 실제로 파이썬을 배우거나 개발 언어에 대한 지식은 전무한 상태이다. hello world를 처음 쳐봤다 이말이다.

 

공부 소스들

1. 방송통신대학교 : 파이썬과 R 수업

내 공부 순서는 파이썬과 R 수업을 기준으로 한다. 왜냐고? 기말고사 1달 남았는데 제대로 할 줄 아는게 없기 때문에 1달동안 미친듯이 공부해서 일단 학점을 받아야 한다. 고로 1달동안 이 수업 기준으로 뼈를 깎는 고통을 거쳐야 한다.

 

2. 패스트캠퍼스 : 판 번에 끝내는 데이터 분석 툴 초격차 패키지 온라인

이 강의는 사둔지 2년 된것 같은데 이제서야 제대로 본다. 사실 급해서. 방통대 교수님 강의가 워낙 범위가 넓어서 나같은 조무래기는 강의로만 알아듣기 너무 힘들더라. 이걸 사둔 과거의 나 칭찬해.

 

3. 인프런 : 파이썬 입문, 비전공자를 위한 가장 쉬운 데이터분석 입문

이것도 작년인가 제작년인가 노트북이 뭔지 알아야 기획하니까 정보 얻으려고 사서 아나콘다, 주피터랩 실행방법만 보고 말았는데 이제서야 활용할 수 있게 되었다. 무조건 반복하면 체화될 테니까 라는 희망이지만, 기말고사까지 시간 없으면 패스하려고 한다. 아무튼 이 소스도 있다 이말이다.

 

4. 고마워요 구글

구글에도 고맙지만 온라인으로 글을 많이 써두신 많은 분들의 도움으로 공부할 수 있었다. 여기에 적어두는 대부분의 것들도 구글링한게 많을 것이다. 사실 책을 볼 시간이 없어서 그렇기도...

 

아무튼 여러가지 정보를 취합해서 공부하게 될 것 같고, 약간의 발표 처럼 여러가지 잡썰과 함께 일단 남겨둬보자. 또 다른 누군가에게 도움이 될 수도 있잖아? 일단 이 글은 그만좀 쓰고 공부나 하자.

 

파이썬 데이터분석 사용

겁나 초보적인 내가 어떻게 데이터분석 프로그램 세팅해서 쓰고 있는지 시작하는 시점에서 적어두고 나중에 비교해 보려고 한다.

1. 아나콘다 설치

모두가, 모든 강의에서 한번씩 다루는 기본 중의 기본인데 아나콘다가 너무 무겁기도 하고 내가 저 환경관리 같은걸 하긴 힘들고 솔직히 아직도 잘 모르겠어서 처음 세팅하고 안쓴다. 일단 기본 데탑 피씨에만 설치해두고 한번도 안씀.

 

2. 구글 콜랩

거의 콜랩으로 쓴다. 웹으로 접속하기 좋고, 내가 아직 자원을 쓰거나 뭐할 수준이 안되기 때문에 공부하기에 가볍고 가장 좋은 환경이라 생각된다. 노트북 쓸 때도 언제 어디서나 보기 좋고 참으로 구글은 좋은 기업이다.

 

3. vscode

원래 가장 처음 헬로 파이썬 출력해본게 vscode여서 가끔 쓰긴 하는데, 아마 콜랩 말고 그냥 내 데탑환경에서 뭔가를 분석하고 만들게 된다면 vscode를 계속 쓸 것 같다. 그냥 UI가 내눈에 잘 들어오고 뭔가 쓰기 편한 느낌적인 느낌이 있다. 일단 기말고사 끝나고 vscode를 더 잘 쓸 수 있는 방안을 모색해볼 예정인데, 얼마나 어떻게 될지는 모르겠다.

 

결론은 지금 구글 콜랩으로 공부하는데 아주 만족한다. 다만, 실제 일을 하거나 하려면 주피터 노트북을 활용해야 할 텐데, 노트북 환경을 어디에 띄워서 할지는 좀 더 나중에 파이썬 공부하고 고민해보려고 한다. data scientist들에게 물어보고 하려고. 출근하면 만나는게 data scientist들인데 이제 그들에게 점점 더 다가가볼까나..

'Python' 카테고리의 다른 글

파이썬 기초 : 데이터 타입  (0) 2023.12.05

+ Recent posts