728x90

python 10

ValueError: could not convert string to float

corr_matrix = housing.corr()를 돌렸는데 이런 에러가 떴다. 찾아보니 correlation 값을 구하기 위해 float로 convert하려고 하는데 데이터가 string 형식이라 에러가 나는 거였다. 데이터셋을 보니 ocean_proximity 행 값들이 string이라서 문제가 발생한 것 같다. 원핫인코딩이나 pd.get_dummies()를 이용할 수도 있겠지만 간편하게 corr의 numeric_only를 True로 설정해서 수치형 값의 correlation만 계산하도록 해결했다.

Troubleshooting 2023.10.22

[백준] 11651 - 좌표 정렬하기 2

[백준] 11651 - 좌표 정렬하기 2 문제 2차원 평면 위의 점 N개가 주어진다. 좌표를 y좌표가 증가하는 순으로, y좌표가 같으면 x좌표가 증가하는 순서로 정렬한 다음 출력하는 프로그램을 작성하시오. 입력 첫째 줄에 점의 개수 N (1 ≤ N ≤ 100,000)이 주어진다. 둘째 줄부터 N개의 줄에는 i번점의 위치 xi와 yi가 주어진다. (-100,000 ≤ xi, yi ≤ 100,000) 좌표는 항상 정수이고, 위치가 같은 두 점은 없다. 출력 첫째 줄부터 N개의 줄에 점을 정렬한 결과를 출력한다. 코드 n = int(input()) coor = [] for _ in range(n): coor.append(list(map(int, input().split()))) coor.sort(key=lam..

알고리즘/BOJ 2023.10.06

[백준] 1449 - 수리공 항승

[백준] 1449 - 수리공 항승 문제 항승이는 품질이 심각하게 나쁜 수도 파이프 회사의 수리공이다. 항승이는 세준 지하철 공사에서 물이 샌다는 소식을 듣고 수리를 하러 갔다. 파이프에서 물이 새는 곳은 신기하게도 가장 왼쪽에서 정수만큼 떨어진 거리만 물이 샌다. 항승이는 길이가 L인 테이프를 무한개 가지고 있다. 항승이는 테이프를 이용해서 물을 막으려고 한다. 항승이는 항상 물을 막을 때, 적어도 그 위치의 좌우 0.5만큼 간격을 줘야 물이 다시는 안 샌다고 생각한다. 물이 새는 곳의 위치와, 항승이가 가지고 있는 테이프의 길이 L이 주어졌을 때, 항승이가 필요한 테이프의 최소 개수를 구하는 프로그램을 작성하시오. 테이프를 자를 수 없고, 테이프를 겹쳐서 붙이는 것도 가능하다. 입력 첫째 줄에 물이 새..

알고리즘/BOJ 2023.10.03

[백준] 1931 - 회의실

[백준] 1931 - 회의실 문제 한 개의 회의실이 있는데 이를 사용하고자 하는 N개의 회의에 대하여 회의실 사용표를 만들려고 한다. 각 회의 I에 대해 시작시간과 끝나는 시간이 주어져 있고, 각 회의가 겹치지 않게 하면서 회의실을 사용할 수 있는 회의의 최대 개수를 찾아보자. 단, 회의는 한번 시작하면 중간에 중단될 수 없으며 한 회의가 끝나는 것과 동시에 다음 회의가 시작될 수 있다. 회의의 시작시간과 끝나는 시간이 같을 수도 있다. 이 경우에는 시작하자마자 끝나는 것으로 생각하면 된다. 입력 첫째 줄에 회의의 수 N(1 ≤ N ≤ 100,000)이 주어진다. 둘째 줄부터 N+1 줄까지 각 회의의 정보가 주어지는데 이것은 공백을 사이에 두고 회의의 시작시간과 끝나는 시간이 주어진다. 시작 시간과 끝나..

알고리즘/BOJ 2023.10.02

[백준] 4375 - 1

[백준] 4375 - 1 문제 2와 5로 나누어 떨어지지 않는 정수 n(1 ≤ n ≤ 10000)가 주어졌을 때, 각 자릿수가 모두 1로만 이루어진 n의 배수를 찾는 프로그램을 작성하시오. 입력 입력은 여러 개의 테스트 케이스로 이루어져 있다. 각 테스트 케이스는 한 줄로 이루어져 있고, n이 주어진다. 출력 각 자릿수가 모두 1로만 이루어진 n의 배수 중 가장 작은 수의 자리수를 출력한다. 코드 while True: try: n = int(input()) except: break i = 0 ones = 0 while True: ones = ones * 10 + 1 if ones % n == 0: print(len(str(ones))) break모든 자릿수가 1로 구성된 숫자를 만들며 하나씩 나눠보고, ..

알고리즘/BOJ 2023.10.01

[백준] 5585 - 거스름돈

[백준] 5585 - 거스름돈 문제 타로는 자주 JOI잡화점에서 물건을 산다. JOI잡화점에는 잔돈으로 500엔, 100엔, 50엔, 10엔, 5엔, 1엔이 충분히 있고, 언제나 거스름돈 개수가 가장 적게 잔돈을 준다. 타로가 JOI잡화점에서 물건을 사고 카운터에서 1000엔 지폐를 한장 냈을 때, 받을 잔돈에 포함된 잔돈의 개수를 구하는 프로그램을 작성하시오. 입력 입력은 한줄로 이루어져있고, 타로가 지불할 돈(1 이상 1000미만의 정수) 1개가 쓰여져있다. 출력 제출할 출력 파일은 1행으로만 되어 있다. 잔돈에 포함된 매수를 출력하시오. 코드 change = 1000 - int(input()) coins = [500, 100, 50, 10, 5, 1] total = 0 i = 0 while chan..

알고리즘/BOJ 2023.09.24

[VSCode] command 'python.execSelectionInTerminal' not found

vscode로 파이썬 파일을 run 하는데 평소엔 잘만 돌아가다가 갑자기 이런 에러가 떴다..(맥) command 'python.execSelectionInTerminal' not found 결론부터 말하면 restricted mode의 문제라고 한다! https://stackoverflow.com/questions/71609154/command-python-execselectioninterminal-not-found command 'python.execSelectionInTerminal' not found I am a beginner just shifted from jupyter to vs-code, whenever I try to run my code, I get: "command 'python.ex..

Troubleshooting 2023.09.24

[인공지능 데브코스 TIL] 0831 웹 스크래핑 기초 (4): Seaborn, WordCloud

프로그래머스 인공지능 데브코스 2주차 강의를 정리한 글입니다. Seaborn 데이터 시각화 라이브러리 matplotlib 기반 # seaborn 불러오기 import seaborn as sns sns.lineplot(x,y): 꺾은 선 그래프 sns.barplot(x,y): 막대 그래프 for categorical data matplotlib의 속성을 변경해서 그래프 만지기 # matplotlib 불러오기 import matplotlib.pyplot as plt plt.title(): 제목 추가 plt.xlabel(), plt.ylabel(): 축에 설명 추가 plt.xlim(), plt.ylim(): 축의 범위 지정 plt.figure(figsize = (x, y)): 그래프 크기 지정 실습1: lin..

[인공지능 데브코스 TIL] 0830 웹 스크래핑 기초 (3): Selenium

프로그래머스 인공지능 데브코스 2주차 강의를 정리한 글입니다. 동적 웹 페이지 정적 웹 사이트: HTML 내용이 고정 동적 웹 사이트: HTML 내용이 변함 ex) 피드를 새로고침할 때마다 새로운 글이 올라오는 것 응답이 된 후 렌더링이 될 때 까지의 지연시간 존재 → request 이후 바로 parsing을 하면 안될 수 있다 -데이터 처리가 완전히 되지 않은 상태에서 request하면 불완전한 데이터 받을 수 있다. → 임의로 시간을 지연한 후 데이터 처리가 끝난 후 정보를 가져오는 비동기처리가 필요하다. → 키보드 입력, 마우스 클릭 등을 할 수 있도록 웹 브라우저를 파이썬으로 조작하는 Selenium활용! Selenium Selenum: 웹 브라우저를 조작하는 라이브러리 WebDriver: 웹 브..

[인공지능 데브코스 TIL] 0829 웹 스크래핑 기초 (2): BeautifulSoup4

프로그래머스 인공지능 데브코스 2주차 강의를 정리한 글입니다. DOM (Document Object Model) 웹 문서 (html)를 로드한 후, 파싱을 진행한 문서를 DOM이라고 한다. 각 노드를 객체로 생각하면 문서를 더욱 편리하게 관리할 수 있다 브라우저가 HTML을 DOM으로 바꾸는 이유 원하는 요소를 동적으로 변경해줄 수 있다. 원하는 요소를 쉽게 찾을 수 있다. → 우리는 파이썬으로 html을 파싱해줄 수 있는 HTML parser가 필요하다! Beautiful Soup HTML 코드를 분석해주는 HTML parser import requests res = requests.get("http://www.example.com") # Beautiful Soup 불러오기 from bs4 import..

728x90