본문 바로가기

전체 글621

Pandas 텍스트(txt) 파일 불러오기 및 저장하기 텍스트 파일 읽기 불러오기 ## with header import pandas as pd df = pd.read_table('./data.txt',sep=',') # 또는 read_csv를 사용해도 되나 read_csv는 seq 기준이 쉼표이므로 seq값 생략 df = pd.read_csv('./data.txt') 데이터 프레임을 텍스트 파일로 저장하기 → to_csv import pandas as pd ## 데이터 생성 data = { '번호':[1,2,3,4], '이름':['아이린','박보검','유민상','꽁냥이'], '성별':['여자','남자','남자','남자'], '비고':['존예','존잘','재미있음','착함'] } df = pd.DataFrame(data) ## 데이터프래임 생성 ## 구분자를.. 2021. 2. 3.
2839번, 설탕배달 문제 상근이는 요즘 설탕공장에서 설탕을 배달하고 있다. 상근이는 지금 사탕가게에 설탕을 정확하게 N킬로그램을 배달해야 한다. 설탕공장에서 만드는 설탕은 봉지에 담겨져 있다. 봉지는 3킬로그램 봉지와 5킬로그램 봉지가 있다. 상근이는 귀찮기 때문에, 최대한 적은 봉지를 들고 가려고 한다. 예를 들어, 18킬로그램 설탕을 배달해야 할 때, 3킬로그램 봉지 6개를 가져가도 되지만, 5킬로그램 3개와 3킬로그램 1개를 배달하면, 더 적은 개수의 봉지를 배달할 수 있다. 상근이가 설탕을 정확하게 N킬로그램 배달해야 할 때, 봉지 몇 개를 가져가면 되는지 그 수를 구하는 프로그램을 작성하시오. 입력 첫째 줄에 N이 주어진다. (3 ≤ N ≤ 5000) 출력 상근이가 배달하는 봉지의 최소 개수를 출력한다. 만약, 정.. 2021. 1. 26.
Go - Interface ''' 구조체(struct)가 필드들의 집합체라면, interface는 메서드들의 집합체이다. interface는 타입(type)이 구현해야 하는 메서드 원형(prototype)들을 정의한다. 하나의 사용자 정의 타입이 interface를 구현하기 위해서는 단순히 그 인터페이스가 갖는 모든 메서드들을 구현하면 된다. 인터페이스는 struct와 마찬가지로 type 문을 사용하여 정의한다. ''' type Shape interface { area() float64 perimeter() float64 } //Rect 정의 type Rect struct { width, height float64 } //Circle 정의 type Circle struct { radius float64 } //Rect 타입에 대한.. 2021. 1. 19.
Go - Map // Map은 키(Key)에 대응하는 값(Value)을 신속히 찾는 해시테이블(Hash table)을 구현한 자료구조 // "map[Key타입]Value타입" 과 같이 선언 var idMap map[int]string /* 이때 선언된 변수 idMap은 (map은 reference 타입이므로) nil 값을 갖으며, 이를 Nil Map이라 부른다. Nil map에는 어떤 데이타를 쓸 수 없는데, map을 초기화하기 위해 make()함수를 사용할 수 있다 (map 리터럴을 사용할 수도 있는 이는 아래 참조). */ idMap = make(map[int]string) /* map은 make() 함수를 써서 초기화할 수도 있지만, 리터럴(literal)을 사용해 초기화할 수도 있다. 리터럴 초기화는 "map[K.. 2021. 1. 19.
Go - Slice // Go 배열은 고정된 크기를 가지지만 Go Slice 개념을 통해 유동적으로 크기 조절 가능 // var v []T -> 배열과 달리 크기 지정 x package main import "fmt" func main() { var a []int //슬라이스 변수 선언 a = []int{1, 2, 3} //슬라이스에 리터럴값 지정 a[1] = 10 fmt.Println(a) // [1, 10, 3]출력 } // Go에서 Slice를 생성하는 또 다른 방법으로 Go의 내장함수 make() 함수를 이용 /* make() 함수로 슬라이스를 생성하면, 개발자가 슬라이스의 길이(Length)와 용량(Capacity)을 임의로 지정할 수 있는 장점이 있다. make() 함수의 첫번째 파라미터에 생성할 슬라이스 타입을.. 2021. 1. 19.
Go - Array //배열의 선언은 "var 변수명 [배열크기] 데이타타입" package main func main() { var a [3]int //정수형 3개 요소를 갖는 배열 a 선언 a[0] = 1 a[1] = 2 a[2] = 3 println(a[1]) // 2 출력 } /* 배열을 정의할 때, 초기값을 설정할 수도 있다. 초기값은 "[배열크기] 데이타타입" 뒤에 { } 괄호를 두고 초기값을 순서대로 적으면 된다 /*/ var a1 = [3]int{1, 2, 3} var a3 = [...]int{1, 2, 3} //배열크기 자동으로 // 다차원 배열 func main() { var a = [2][3]int{ {1, 2, 3}, {4, 5, 6}, //끝에 콤마 추가 } println(a[1][2]) } 2021. 1. 19.