본문 바로가기
728x90
반응형

python11

쇠막대기 문제 Q. n개의 쇠막대기를 m개의 레이저로 자르면 총 몇 동강이 날까? 여러 개의 쇠막대기를 레이저로 절단하려고 합니다. 효율적인 작업을 위해서 쇠막대기를 아래에서 위로 겹쳐 놓고, 레이저를 위에서 수직으로 발사하여 쇠막대기들을 자릅니다. 쇠막대기와 레이저의 배치는 다음 조건을 만족합니다. - 쇠막대기는 자신보다 긴 쇠막대기 위에만 놓일 수 있습니다. - 쇠막대기를 다른 쇠막대기 위에 놓는 경우 완전히 포함되도록 놓되, 끝점은 겹치지 않도록 놓습니다. - 각 쇠막대기를 자르는 레이저는 적어도 하나 존재합니다. - 레이저는 어떤 쇠막대기의 양 끝점과도 겹치지 않습니다. 아래 그림은 위 조건을 만족하는 예를 보여줍니다. 수평으로 그려진 굵은 실선은 쇠막대기이고, 점은 레이저의 위치, 수직으로 그려진 점선 화살표.. 2020. 3. 24.
히트맵 그리는 간단한 코드(matplotlib.pyplot) 데이터 전처리 하면서 변수들간의 상관관계를 자주 보게 되는데 그런 관계에는 역시 산점도나 히트맵인데 이럴때마다 매번 찾아다니는 것이 번거로워서 코드를 올려놓기로 한다. 사이킷런에 아이리스 데이터를 가지고 간단하게 히트맵을 그려볼 수 있다. from sklearn.datasets import load_iris iris = load_iris() iris=pd.DataFrame(iris['data']) iris.corr() matplotlib 라이브러리에서 pyplot을 임포트한다. 그리고 seaborn 패키지도 임포트한다. seaborn.heatmap으로 실행하며, data를 입력해주고, annot=True는 주석으로 숫자(상관계수)를 명시하겠다는 것이다. fmt는 수치의 형식과 소수점자릿수를 명시할 수 있.. 2020. 3. 11.
주피터 노트북에서 py파일 불러오기2 매직 커맨드를 활용한 파이썬 파일 불러오기에 이어 더 기초적인 import로 불러오는 방법에 대해서도 간략히 메모한다. %%writefile 파일이름.py 를 활용해서 저장하거나 혹은 주피터 노트북의 메뉴바에서 py파일로 전환하여 저장을 했다고 치자. 아래의 코드를 통해서 py파일 안에 있는 변수를 불러와 보겠다. %%writefile xx.py a=3 from xx import a 나는 계속 import xx 라고 해서 'a는 정의되지 않았다'는 메세지를 받곤 했다.. 바로 위에 보이는 코드대로 해야 'xx.py' 모듈안에 있는 변수 'a' 를 import 하는 것이다. 더이상 헤매는 반복은 하지 않는다 ! 2019. 12. 26.
주피터 노트북에서 py파일 불러오기 더도 말고 덜도 말고 그저 간편하게 내가 작성한 파이썬 코드를 현재 디렉토리에 저장하고, 또 현재 디렉토리에 위치한 py파일을 불러 와 사용하는 방법을 적어본다. 우선 코드부터 보는데, 코드는 아래처럼 그냥 매개변수가 없는 함수를 하나 만들고, 그 안에는 딕셔너리 변수를 하나 리턴하는 것이다. 중요한건 %%writefile rating.py 인데 %%라는 매직command를 사용해서 청크안에 같이 작성된 코드를 가지고 새롭게 py파일을 현재 디렉토리에 생성해주는 것이다. %%writefile rating.py def rating(): critics={"Lisa Rose":{'Lady in the Water':2.5, 'Snakes on a Plane':3.5, 'Just My Luck':3.0, 'Sup.. 2019. 12. 26.
python 필기/노트 공부하다가 몰랐거나 유용한 것들에 대한 필기 ! 딕셔너리(dictionary) 딕셔너리는 다음과 같이 선언하고 key값과 value값의 형태로 만들어주는 자료구조이다. a = dict() a['market'] = {'fruit':"apple", 'drink':'beer'} a.get('market').get('fruit') # 결과: "apple" update: 딕셔너리와 딕셔너리를 합쳐서 하나의 딕셔너리를 만들 때 사용하는 함수 d = {1: "one", 2: "three"} d1 = {2: "two"} # updates the value of key 2 d.update(d1) print(d) d1 = {3: "three"} # adds element with key 3 d.update(d1) prin.. 2019. 11. 23.
728x90
반응형