python 8

[Python/csv] csv writer로 출력 시 개행문자가 두 개 출력되는 경우

python에서 csv로 출력하고 싶다고 하면 열에 아홉은 pandas를 쓰라고 하지만 가끔 알 수 없는 에러나 뭐 이런저런 이유로 python의 기본 모듈인 csv를 써야할 때가 있다 근데 그럼 꼭 출력된 파일 확인할 때 엔터가 두 번 쳐진것처럼 개행문자(\n)가 두 개씩 출력됨 일단 결론 import csv ... with open('output.csv', 'w', newline='', encoding='utf-8') as f: writer = csv.writer(f) ... 찾아본건 아니긴한데 추측해보자면 open으로 연 파일포인터의 newline 파라미터의 디폴트값도 \n이고 csv writer의 newline 디폴트값도 \n이라서 그런거같음 출처: https://stackoverflow.com/..

[Python/Pororo] subprocess-exited-with-error

왠지 옛날에 해결해본적 있는 에러같은데 오늘 똑같이 발생해서 아카이빙하러 옴 subprocess-exited-with-error를 구글링해보면 보통 bs4에 대한 이야기만 나옴 근데 보통 이런 문제가 발생하면 pip를 upgrade하면 해결되는 경우가 많아가지고 아무튼 바뀌었다는건 진전이 있다는거 아닌가? 아까 전의 에러메세지는 뭔지 짐작도 안갔는데 이번엔 대충 읽어보니 dependency 어쩌구저쩌구 하는게 보이긴 함 그래서 디펜던시 확인하러 pororo github 들어감 python 3.6에 torch는 1.6.0이란다 python은 그냥 비슷한 수준으로 맞춰줘도 되지만 torch는 똑같이 맞춰줘야 할 거 같았음 근데 pip가 torch 1.6.0을 못찾길래 python 다운그레이드 해줌 참고 ht..

[Ubuntu Linux/Python] pip가 특정 torch version을 찾지 못함/우분투 파이썬 가상환경 버전 다운그레이드

라이브러리 의존 문제때문에 torch 1.6.0을 설치해야 했었는데 참고로 pip install --upgrade pip 진행해도 실패함 torch 버전을 자꾸 1.11 아래로는 인식을 못하는게 좀 싸해서 python 버전을 다운그레이드 해보기로 했다 일단 저 시점에서 python 버전은 3.10.x였음 1. 일단 패키지 설치 apt-get install python3.7-dev python3.7-venv 사실 원래 설치하고싶었던건 3.6이라 python3.6-venv, python3.6-dev로 자의적으로 바꿔봤는데 없다더라 왜 3.7만 있는지는 모름 1.1. python3.7 위치 확인(optional) which python3.7 사실 안해도 별로 상관없음 보통 /usr/bin/python3.7이기..

[Python/Numpy] No module named 'numpy.core._multiarray_umath'

구글링해보니까 pip install --upgrade pip 최신 버전으로 업그레이드 하면 된다함 문서들 몇 개 더 찾아보니까 최신버전이 1.20.3에서 성공하신 분 있고 1.18에서 성공하신 분 있더라 다른 라이브러리들 의존문제때문에 1.19 아래로는 내려갈 수가 없어서 1.20.3으로 해봤더니 성공함 결론: pip install numpy==1.20.3

[Python/Pandas] 다중 조건으로 데이터 행 추출하기(indexing with multidimensional key)

우선 일반적으로 데이터프레임에서 조건(단일조건)에 맞는 행 추출하는 법 data = data.loc[data["column_name"] == condition] # data["column_name"] == condition 내의 조건을 필요에 맞게 수정 그리고 데이터프레임에서 특정 열만 추출하는 법 column_names = ["col_name1", "col_name2"] items = data.loc[:, column_names] 이 두 개를 섞어서 다중 조건을 이용해 필요한 행을 추출하면 될 것 같은데? column_names = ["col_name1", "col_name2"] conditions = [1, 2] data = data.loc[data[:, column_names] == conditio..

[Python] json utf-8 인코딩 한글 깨짐 해결

한달 전까지 죽어라 쓰던건데 한달 안썼다고 그새 또 까먹음... 일단 python에서 dictionary 데이터를 json 파일으로 저장하는 방법은 다들 알다시피 import json ... with open("temp.json", "w", encoding="utf-8") as jf: json.dump(data, jf) 인데 아무 생각없이 저렇게 쓰다보면 파일이 \uadf8 어쩌구 하는 유니코드로 나온다 해결방법은 간단함 import json ... with open("temp.json", "w", encoding="utf-8") as jf: json.dump(data, jf, ensure_ascii=False) ensure_ascii 설정을 False로 바꿔주면됨 너무 간단한 에러와 해결책이라 이미 해..